Skip to content

Commit 6e20fd9

Browse files
committed
feat: update build scripts
1 parent 833c9f8 commit 6e20fd9

File tree

5 files changed

+23
-24
lines changed

5 files changed

+23
-24
lines changed

.github/workflows/build.yaml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
include:
1818
- os: ubuntu-latest
1919
target: linux
20-
arch: x64
20+
arch: x86_64
2121
ext: AppImage
2222
mxd-platform: linux-musl
2323
mxd-arch: x86_64
@@ -39,6 +39,10 @@ jobs:
3939
- uses: actions/checkout@v4
4040
- name: Set up Bun
4141
uses: oven-sh/setup-bun@v1
42+
- name: Set up Node.js
43+
uses: actions/setup-node@v4
44+
with:
45+
node-version: 24
4246
- name: Install dependencies
4347
run: bun install
4448
- name: Download mxd
@@ -49,7 +53,7 @@ jobs:
4953
MXD_COMMIT: ${{ vars.MXD_COMMIT }}
5054
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5155
- name: Build the app
52-
run: bun run build ${{ matrix.target }}
56+
run: bun run build
5357
- name: Get version from package.json
5458
id: get_version
5559
uses: stevenbenitez/get-package-version-action@v1

bun.lock

Lines changed: 2 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@
1414
"next:build": "next build",
1515
"trpc:dev": "bun run --hot trpc/index.ts",
1616
"trpc:build": "bun run scripts/build-trpc.ts",
17-
"electron:build-main": "bun run scripts/build-main.ts dev",
18-
"electron:dev": "bun run electron:build-main && electron .",
19-
"electron:build": "bun run scripts/build-app.ts",
17+
"electron:dev": "bun run scripts/build-main.ts dev && electron .",
18+
"electron:build": "bun run scripts/build-main.ts prod && node scripts/build-app.ts",
2019
"electron:clean": "rm -r dist-electron && rm -r release",
2120
"build": "bun run next:build && bun run electron:build"
2221
},
@@ -111,7 +110,7 @@
111110
"@types/react-dom": "^19.1.2",
112111
"colorette": "^2.0.20",
113112
"concurrently": "^9.1.2",
114-
"electron": "^35.2.1",
113+
"electron": "^36.4.0",
115114
"electron-builder": "^26.0.12",
116115
"electron-serve": "^2.1.1",
117116
"eslint": "^9.25.1",

scripts/build-app.ts

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import { Arch, build, Configuration, Platform } from 'electron-builder'
2-
3-
import { buildMain } from './build-main'
1+
import { Arch, build, Platform, type Configuration } from 'electron-builder'
42

53
/**
64
* @see https://www.electron.build/configuration
@@ -16,6 +14,7 @@ const config: Configuration = {
1614
extraMetadata: {
1715
name: 'LLMOne',
1816
},
17+
publish: null,
1918
compression: 'maximum',
2019
artifactName: '${productName}-${version}-${os}-${arch}.${ext}',
2120
files: [
@@ -81,8 +80,7 @@ async function buildPlatform(platform: 'win' | 'mac' | 'linux'): Promise<void> {
8180
return
8281
}
8382

84-
await buildMain(platform, 'prod')
85-
const message = `Application for ${platform} is built.`
83+
const message = `Application for ${platform} is built`
8684
console.time(message)
8785
await build({
8886
targets,
@@ -93,14 +91,13 @@ async function buildPlatform(platform: 'win' | 'mac' | 'linux'): Promise<void> {
9391
console.timeLog(message, '\n')
9492
}
9593

96-
const platforms = process.argv.slice(2) as ('win' | 'mac' | 'linux')[]
97-
98-
if (platforms.length === 0) {
99-
console.info('Please specify a platform or platforms: win, mac, or linux.')
100-
process.exit(1)
101-
}
94+
const inputPlatforms = process.argv.slice(2) as ('win' | 'mac' | 'linux')[]
95+
const platforms: ('win' | 'mac' | 'linux')[] =
96+
inputPlatforms.length > 0
97+
? inputPlatforms
98+
: [process.platform === 'darwin' ? 'mac' : process.platform === 'win32' ? 'win' : 'linux']
10299

103-
const message = 'Build completed.'
100+
const message = 'Build completed'
104101
console.time(message)
105102
for (const platform of platforms) {
106103
await buildPlatform(platform)

scripts/build-main.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,11 @@ export async function buildMain(platform: 'win' | 'mac' | 'linux', env: 'dev' |
6262
console.log()
6363
}
6464

65-
if (import.meta.url === `file://${process.argv[1]}`) {
65+
if (import.meta.main) {
6666
const env = (process.argv[2] || 'prod') as 'dev' | 'prod'
67+
const inputPlatform = process.argv[3] as 'win' | 'mac' | 'linux' | undefined
6768
const platform =
68-
process.platform === 'darwin' ? 'mac' : process.platform === 'win32' ? 'win' : ('linux' as 'win' | 'mac' | 'linux')
69+
inputPlatform || (process.platform === 'darwin' ? 'mac' : process.platform === 'win32' ? 'win' : 'linux')
6970

7071
await buildMain(platform, env)
7172
}

0 commit comments

Comments
 (0)