| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-04-24 | 1.4 kB | |
| v1.31.13 source code.tar.gz | 2026-04-24 | 2.5 MB | |
| v1.31.13 source code.zip | 2026-04-24 | 2.8 MB | |
| Pixcode-1.31.13-amd64.deb | 2026-04-24 | 187.1 MB | |
| Pixcode-1.31.13-arm64.dmg | 2026-04-24 | 216.4 MB | |
| Pixcode-1.31.13-x64.dmg | 2026-04-24 | 221.0 MB | |
| Pixcode-1.31.13-x86_64.AppImage | 2026-04-24 | 250.2 MB | |
| Pixcode-Setup-1.31.13.exe | 2026-04-24 | 188.1 MB | |
| Totals: 8 Items | 1.1 GB | 0 | |
Fixes the Linux in-place update flow crashing the server.
What was happening: clicking "Update Now" on a Linux npm-global install ran npm install -g against the running server's own package files. npm rewrote them while the process still had them open — the daemon crashed mid-install, the child install died with it, and users ended up with a half-installed package and no running server. The UI just showed "Failed to fetch".
What changes in 1.31.13:
• If your server is already on the latest version, the npm path now short-circuits entirely. No install attempt, no restart, no chance of self-crash. (The desktop runtime-dir path already had this guard — parity restored.)
• The install child process is now spawned detached so it survives the parent being killed mid-swap. npm finishes, systemd brings the server back on the new code, and the update UI's /health probe picks it up as a successful self-restart.
• The update modal now recovers from mid-stream network errors (the "Failed to fetch" case), not just clean stream closes. Any stream interruption during an update now triggers the same /health version check instead of surfacing a scary error.
If your server is already dead from a previous failed update: run "sudo systemctl restart pixcode" (or "pkill -f pixcode && pixcode"), then refresh the browser. The update files are already on disk from the crashed attempt.