From f79bbdceefcfa83eb3e53f91908cd2bb15b01715 Mon Sep 17 00:00:00 2001 From: James Pine Date: Tue, 14 Apr 2026 19:51:14 -0700 Subject: [PATCH] fix: tauri CI builds + macOS runners + spaceui-link - Add missing @vitejs/plugin-react-swc to tauri devDependencies - Make spaceui/spacebot vite aliases conditional in tauri config - Use package export paths for @spacedrive/tokens CSS imports - Use regex aliases to prevent prefix-matching collisions - Switch macOS release runners to macos-26 (GitHub-hosted) - Fix spaceui-link to run bun link from workspace root Co-Authored-By: Claude Opus 4.6 (1M context) --- .github/workflows/release.yml | 4 +- apps/tauri/package.json | 1 + apps/tauri/vite.config.ts | 80 +++++++++++++++++++--------------- apps/web/vite.config.ts | 10 ++--- bun.lockb | Bin 879350 -> 886214 bytes justfile | 2 +- 6 files changed, 53 insertions(+), 44 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 107dc8b14..01e365aef 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -89,12 +89,12 @@ jobs: matrix: settings: # macOS builds - - host: self-hosted + - host: macos-26 target: aarch64-apple-darwin bundles: dmg,app os: darwin arch: aarch64 - - host: self-hosted + - host: macos-26-large target: x86_64-apple-darwin bundles: dmg,app os: darwin diff --git a/apps/tauri/package.json b/apps/tauri/package.json index 71e86e391..f747edc2e 100644 --- a/apps/tauri/package.json +++ b/apps/tauri/package.json @@ -37,6 +37,7 @@ "devDependencies": { "@headlessui/tailwindcss": "^0.2.0", "@spacedrive/tokens": "^0.2.3", + "@vitejs/plugin-react-swc": "^4.0.0", "@tailwindcss/forms": "^0.5.7", "@tailwindcss/typography": "^0.5.10", "@tailwindcss/vite": "^4.1.0", diff --git a/apps/tauri/vite.config.ts b/apps/tauri/vite.config.ts index 9254d53a7..6f1b5932e 100644 --- a/apps/tauri/vite.config.ts +++ b/apps/tauri/vite.config.ts @@ -1,8 +1,14 @@ import path from 'path'; +import fs from 'fs'; import tailwindcss from '@tailwindcss/vite'; import react from '@vitejs/plugin-react-swc'; import {defineConfig} from 'vite'; +const spaceui = path.resolve(__dirname, '../../../spaceui/packages'); +const hasSpaceui = fs.existsSync(spaceui); +const spacebot = path.resolve(__dirname, '../../../spacebot/packages'); +const hasSpacebot = fs.existsSync(spacebot); + export default defineConfig(() => ({ plugins: [react(), tailwindcss()], @@ -51,41 +57,43 @@ export default defineConfig(() => ({ '../../packages/interface/node_modules/openapi-fetch/dist/index.mjs' ) }, - { - find: '@spacedrive/tokens/src/css', - replacement: path.resolve( - __dirname, - '../../../spaceui/packages/tokens/src/css' - ) - }, - { - find: '@spacedrive/tokens', - replacement: path.resolve( - __dirname, - '../../../spaceui/packages/tokens' - ) - }, - { - find: '@spacedrive/ai', - replacement: path.resolve( - __dirname, - '../../../spaceui/packages/ai/src/index.ts' - ) - }, - { - find: '@spacedrive/primitives', - replacement: path.resolve( - __dirname, - '../../../spaceui/packages/primitives/src/index.ts' - ) - }, - { - find: '@spacebot/api-client', - replacement: path.resolve( - __dirname, - '../../../spacebot/packages/api-client/src' - ) - }, + // SpaceUI — resolve to source for HMR when available locally + ...(hasSpaceui + ? [ + { + find: /^@spacedrive\/tokens\/css\/themes\/(.+)$/, + replacement: `${spaceui}/tokens/src/css/themes/$1.css`, + }, + { + find: /^@spacedrive\/tokens\/theme$/, + replacement: `${spaceui}/tokens/src/css/theme.css`, + }, + { + find: /^@spacedrive\/tokens\/css$/, + replacement: `${spaceui}/tokens/src/css/base.css`, + }, + { + find: /^@spacedrive\/tokens$/, + replacement: `${spaceui}/tokens`, + }, + { + find: /^@spacedrive\/ai$/, + replacement: `${spaceui}/ai/src/index.ts`, + }, + { + find: /^@spacedrive\/primitives$/, + replacement: `${spaceui}/primitives/src/index.ts`, + }, + ] + : []), + ...(hasSpacebot + ? [ + { + find: /^@spacebot\/api-client$/, + replacement: `${spacebot}/api-client/src`, + }, + ] + : []), { find: '@sd/interface', replacement: path.resolve( @@ -114,7 +122,7 @@ export default defineConfig(() => ({ fs: { allow: [ path.resolve(__dirname, '../../..'), - path.resolve(__dirname, '../../../spaceui') + ...(hasSpaceui ? [spaceui] : []), ] }, watch: { diff --git a/apps/web/vite.config.ts b/apps/web/vite.config.ts index 6fbf4a224..f180093cd 100644 --- a/apps/web/vite.config.ts +++ b/apps/web/vite.config.ts @@ -42,23 +42,23 @@ export default defineConfig({ replacement: `${spaceui}/tokens/src/css/themes/$1.css`, }, { - find: "@spacedrive/tokens/theme", + find: /^@spacedrive\/tokens\/theme$/, replacement: `${spaceui}/tokens/src/css/theme.css`, }, { - find: "@spacedrive/tokens/css", + find: /^@spacedrive\/tokens\/css$/, replacement: `${spaceui}/tokens/src/css/base.css`, }, { - find: "@spacedrive/tokens", + find: /^@spacedrive\/tokens$/, replacement: `${spaceui}/tokens`, }, { - find: "@spacedrive/ai", + find: /^@spacedrive\/ai$/, replacement: `${spaceui}/ai/src/index.ts`, }, { - find: "@spacedrive/primitives", + find: /^@spacedrive\/primitives$/, replacement: `${spaceui}/primitives/src/index.ts`, }, ] diff --git a/bun.lockb b/bun.lockb index 3f33d3351a9f99c35ba3c506c708d28a65eb77e6..afd42759f16fe54414c1976d3dfdd4da87586e37 100755 GIT binary patch delta 41685 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 diff --git a/justfile b/justfile index 404de6e4c..b5adbdb1d 100644 --- a/justfile +++ b/justfile @@ -68,7 +68,7 @@ spaceui-link: for pkg in primitives ai forms explorer tokens; do cd packages/$pkg && bun link && cd ../.. done - cd "{{justfile_directory()}}/packages/interface" + cd "{{justfile_directory()}}" bun link @spacedrive/primitives @spacedrive/ai @spacedrive/forms @spacedrive/explorer @spacedrive/tokens echo "SpaceUI packages linked successfully."