fix(desktop-server): publish per-arch update manifests for Gauzy Server

Gauzy Server's Windows and Linux release jobs have published channel-less
update manifests (latest.yml, latest-linux.yml, latest-linux-arm64.yml)
since v107 (the :isolated split in #9687). The other 5 apps, and Gauzy
Server up to v102, publish latest-x64.yml, latest-arm64.yml,
latest-x64-linux.yml and latest-arm64-linux-arm64.yml.

Cause: `pack --arch --platform` stamps build.publish[].channel =
latest-<arch> into apps/server/src/package.json, but the :isolated scripts
run it AFTER "Build Server" has already copied apps/server/src/** into
dist/apps/gauzy-server. electron-builder --project dist/apps/gauzy-server
therefore never sees the channel and uses the default `latest`. On Windows
both arch jobs then write latest.yml, and the last writer wins (arm64 in
v111.44.45).

Impact: the updater client (desktop-lib update-strategy, since #9304)
requests latest-${process.arch}, so current Gauzy Server installs have got
a 404 on every check and have not auto-updated since v107.

Fix: copy the freshly stamped package.json into dist between pack and
electron-builder in the 4 build:gauzy-server:{linux,windows}:release:gh:
{x64,arm64}:isolated scripts (-E makes a missing source fail loudly). The
dist file otherwise equals src byte for byte, so the only field that
changes is build.publish[0].channel. The mac script is unchanged
(latest-mac.yml is correct).

Verified by simulation with a red control, using the real pack util,
copyfiles 2.4.1 and electron-builder 26.0.3 filename code plus a real NSIS
build. Old: latest.yml for both arches. New: latest-x64.yml and
latest-arm64.yml on Windows, latest-x64-linux.yml and
latest-arm64-linux-arm64.yml on Linux.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Ruslan Konviser
2026-09-24 13:19:16 +02:00
co-authored by Claude Opus 5.5
parent ce993013e7
commit 8d047db0e2
+4 -4
View File
@@ -451,10 +451,10 @@
"build:gauzy-server:mac": "yarn run build:gauzy-server && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --mac --project dist/apps/gauzy-server",
"build:gauzy-server:mac:release": "yarn run build:gauzy-server && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --mac --publish=always --project dist/apps/gauzy-server",
"quick:build:gauzy-server": "yarn electron-builder -c.electronVersion=38.2.2 -c.extraMetadata.author.name=Ever build --mac --project dist/apps/gauzy-server",
"build:gauzy-server:linux:release:gh:arm64:isolated": "yarn run pack --desktop=server --arch=arm64 --platform=linux && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --linux --arm64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:linux:release:gh:x64:isolated": "yarn run pack --desktop=server --arch=x64 --platform=linux && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --linux --x64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:windows:release:gh:x64:isolated": "yarn run pack --desktop=server --arch=x64 --platform=win32 && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --windows --x64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:windows:release:gh:arm64:isolated": "yarn run pack --desktop=server --arch=arm64 --platform=win32 && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --windows --arm64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:linux:release:gh:arm64:isolated": "yarn run pack --desktop=server --arch=arm64 --platform=linux && copyfiles -E -f apps/server/src/package.json dist/apps/gauzy-server && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --linux --arm64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:linux:release:gh:x64:isolated": "yarn run pack --desktop=server --arch=x64 --platform=linux && copyfiles -E -f apps/server/src/package.json dist/apps/gauzy-server && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --linux --x64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:windows:release:gh:x64:isolated": "yarn run pack --desktop=server --arch=x64 --platform=win32 && copyfiles -E -f apps/server/src/package.json dist/apps/gauzy-server && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --windows --x64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:windows:release:gh:arm64:isolated": "yarn run pack --desktop=server --arch=arm64 --platform=win32 && copyfiles -E -f apps/server/src/package.json dist/apps/gauzy-server && npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --windows --arm64 --publish=always --project dist/apps/gauzy-server",
"build:gauzy-server:mac:release:isolated": "npm config set cache .cache && yarn electron-builder -c.electronVersion=38.2.2 build --mac --publish=always --project dist/apps/gauzy-server",
"copy-files-i18n-desktop-timer": "yarn run download:translations --desktop=desktop-timer",
"copy-files-i18n-desktop": "yarn run download:translations --desktop=desktop",