@@ -126,76 +126,3 @@ jobs:
126126 files : LoCode-*/*
127127 name : Release ${{ github.ref_name }}
128128 generate_release_notes : true
129-
130-
131-
132-
133- build :
134- strategy :
135- matrix :
136- include :
137- # - os: windows-latest
138- # script: electron:build:win
139- # artifact: dist/*.exe
140- - os : macos-latest
141- script : electron:build:mac
142- artifact : dist/*.dmg
143- - os : ubuntu-latest
144- script : electron:build:linux
145- artifact : dist/*.AppImage
146-
147- runs-on : ${{ matrix.os }}
148-
149- steps :
150- - uses : actions/checkout@v6
151-
152- - uses : actions/setup-node@v6
153- with :
154- node-version : ' 22'
155-
156- # Cache node_modules keyed on the lockfile — skips npm install entirely on hit
157- - uses : actions/cache@v4
158- id : cache-deps
159- with :
160- path : node_modules
161- key : ${{ runner.os }}-node-modules-${{ hashFiles('package-lock.json') }}
162-
163- - name : Install Python setuptools (node-gyp needs distutils, removed in Python 3.12)
164- if : steps.cache-deps.outputs.cache-hit != 'true'
165- run : pip3 install setuptools --break-system-packages
166-
167- - name : Install dependencies
168- if : steps.cache-deps.outputs.cache-hit != 'true'
169- run : npm ci
170-
171- # On cache hit npm ci (and its postinstall: nuxt prepare) was skipped — run it manually
172- - name : Prepare Nuxt types
173- if : steps.cache-deps.outputs.cache-hit == 'true'
174- run : npx nuxt prepare
175-
176- # Cache the Electron and electron-builder download caches (~100-200 MB per arch)
177- - uses : actions/cache@v4
178- with :
179- path : |
180- ~/.cache/electron
181- ~/.cache/electron-builder
182- ${{ env.LOCALAPPDATA }}\electron\Cache
183- ${{ env.LOCALAPPDATA }}\electron-builder\Cache
184- key : ${{ runner.os }}-electron-${{ hashFiles('package-lock.json') }}
185- restore-keys : |
186- ${{ runner.os }}-electron-
187- - name : Build
188- run : npm run ${{ matrix.script }}
189- env :
190- # electron-builder uses this to skip code signing in CI
191- CSC_IDENTITY_AUTO_DISCOVERY : false
192- # Mac notarization — set these in GitHub repo secrets if you need signed builds
193- # APPLE_ID: ${{ secrets.APPLE_ID }}
194- # APPLE_ID_PASSWORD: ${{ secrets.APPLE_ID_PASSWORD }}
195-
196- - name : Upload artifact
197- uses : actions/upload-artifact@v4
198- with :
199- name : LoCode-${{ matrix.os }}
200- path : ${{ matrix.artifact }}
201- if-no-files-found : error
0 commit comments