fix(ci): add libsodium to all build environments #106

Merged
sarman merged 4 commits from fix/updater-issues into master 2026-06-18 00:02:21 +00:00
Owner

Summary

tauri-plugin-stronghold depends on libsodium-sys-stable v1.24.0, which panics at build time if libsodium is not present — it does not compile it from source. None of the builder images or test job apt installs included libsodium-dev, breaking every Rust compilation step since Stronghold was added.

The Windows Dockerfile already pre-builds libsodium into /usr/x86_64-w64-mingw32, but SODIUM_LIB_DIR was never set so the crate could not find it there either.

Changes:

  • Dockerfile.linux-amd64 — add libsodium-dev to baked apt layer
  • Dockerfile.linux-arm64 — add libsodium-dev (amd64 host) + libsodium-dev:arm64 (cross-compile target)
  • test.yml — add libsodium-dev to all three Rust job inline apt installs
  • auto-tag.yml / release-beta.yml — inline apt-get install libsodium-dev in Linux Build steps (bridges the timing race where build-images and auto-tag fire simultaneously on master push); SODIUM_LIB_DIR + SODIUM_STATIC env vars for Windows Build step

Test plan

  • rust-fmt-check, rust-clippy, rust-tests CI checks pass
  • build-linux-amd64 produces .deb/.rpm
  • build-linux-arm64 produces .deb/.rpm
  • build-windows-amd64 produces installer
  • build-macos-arm64 produces .dmg (runner assumed to have libsodium via Homebrew; add brew install libsodium || true if not)
  • After builder images are rebuilt by build-images.yml, trigger a follow-up release run to confirm inline apt installs are redundant
## Summary `tauri-plugin-stronghold` depends on `libsodium-sys-stable` v1.24.0, which panics at build time if libsodium is not present — it does not compile it from source. None of the builder images or test job apt installs included `libsodium-dev`, breaking every Rust compilation step since Stronghold was added. The Windows Dockerfile already pre-builds libsodium into `/usr/x86_64-w64-mingw32`, but `SODIUM_LIB_DIR` was never set so the crate could not find it there either. **Changes:** - `Dockerfile.linux-amd64` — add `libsodium-dev` to baked apt layer - `Dockerfile.linux-arm64` — add `libsodium-dev` (amd64 host) + `libsodium-dev:arm64` (cross-compile target) - `test.yml` — add `libsodium-dev` to all three Rust job inline apt installs - `auto-tag.yml` / `release-beta.yml` — inline `apt-get install libsodium-dev` in Linux Build steps (bridges the timing race where `build-images` and `auto-tag` fire simultaneously on master push); `SODIUM_LIB_DIR` + `SODIUM_STATIC` env vars for Windows Build step ## Test plan - [ ] `rust-fmt-check`, `rust-clippy`, `rust-tests` CI checks pass - [ ] `build-linux-amd64` produces `.deb`/`.rpm` - [ ] `build-linux-arm64` produces `.deb`/`.rpm` - [ ] `build-windows-amd64` produces installer - [ ] `build-macos-arm64` produces `.dmg` (runner assumed to have libsodium via Homebrew; add `brew install libsodium || true` if not) - [ ] After builder images are rebuilt by `build-images.yml`, trigger a follow-up release run to confirm inline apt installs are redundant
sarman added 3 commits 2026-06-18 00:00:56 +00:00
fix: register missing updater commands
All checks were successful
Test / frontend-tests (pull_request) Successful in 1m45s
Test / frontend-typecheck (pull_request) Successful in 1m54s
PR Review Automation / review (pull_request) Successful in 4m11s
Test / rust-fmt-check (pull_request) Successful in 13m22s
Test / rust-clippy (pull_request) Successful in 15m5s
Test / rust-tests (pull_request) Successful in 17m15s
2fae73fb3a
- Add check_app_updates, install_app_updates, get_update_channel, set_update_channel to Tauri handler
- Add unit tests for update channel functionality

This fixes the 'Command check_app_updates not found' and 'Failed to update channel' errors reported in the latest build.
fix(ci): add libsodium to all build environments
Some checks failed
PR Review Automation / review (pull_request) Has been cancelled
Test / rust-clippy (pull_request) Has been cancelled
Test / rust-fmt-check (pull_request) Has been cancelled
Test / frontend-tests (pull_request) Has been cancelled
Test / rust-tests (pull_request) Has been cancelled
Test / frontend-typecheck (pull_request) Has been cancelled
10b931809b
tauri-plugin-stronghold pulls in libsodium-sys-stable which panics at
build time if libsodium is not found via pkg-config — it does not compile
from source. All builder images and the test job inline apt installs were
missing libsodium-dev, breaking every Rust compilation step.

- Add libsodium-dev to Dockerfile.linux-amd64
- Add libsodium-dev (host) + libsodium-dev:arm64 (cross target) to
  Dockerfile.linux-arm64
- Add libsodium-dev to all three Rust jobs in test.yml
- Add inline apt-get install to linux-amd64 and linux-arm64 Build steps
  in auto-tag.yml and release-beta.yml (bridges the timing race between
  build-images and auto-tag triggering on the same push)
- Add SODIUM_LIB_DIR + SODIUM_STATIC to Windows Build env (Dockerfile
  already pre-builds libsodium; this tells the crate where to find it)
sarman added 1 commit 2026-06-18 00:02:06 +00:00
Merge branch 'master' into fix/updater-issues
Some checks failed
PR Review Automation / review (pull_request) Has been cancelled
Test / frontend-typecheck (pull_request) Has been cancelled
Test / frontend-tests (pull_request) Has been cancelled
Test / rust-tests (pull_request) Has been cancelled
Test / rust-clippy (pull_request) Has been cancelled
Test / rust-fmt-check (pull_request) Has been cancelled
6ac4123cd4
sarman merged commit 450ef84da7 into master 2026-06-18 00:02:21 +00:00
sarman deleted branch fix/updater-issues 2026-06-18 00:02:21 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: sarman/tftsr-devops_investigation#106
No description provided.