fix(flatpak): drop the Windows client from the workspace for the offline build
apple / swift (push) Successful in 54s
ci / rust (push) Successful in 1m45s
android / android (push) Successful in 2m2s
ci / web (push) Successful in 29s
ci / docs-site (push) Successful in 31s
deb / build-publish (push) Successful in 2m40s
decky / build-publish (push) Successful in 11s
docker / build-push (--build-arg FEDORA_VERSION=44, ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm) (push) Successful in 6s
docker / build-push (., web/Dockerfile, punktfunk-web) (push) Successful in 5s
docker / build-push (ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Successful in 5s
docker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Successful in 5s
docker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Successful in 3s
ci / bench (push) Successful in 4m33s
flatpak / build-publish (push) Successful in 4m2s
rpm / build-publish (bazzite, punktfunk-fedora-rpm) (push) Successful in 8m13s
docker / deploy-docs (push) Successful in 17s
rpm / build-publish (fedora-44, punktfunk-fedora44-rpm) (push) Successful in 7m46s
apple / swift (push) Successful in 54s
ci / rust (push) Successful in 1m45s
android / android (push) Successful in 2m2s
ci / web (push) Successful in 29s
ci / docs-site (push) Successful in 31s
deb / build-publish (push) Successful in 2m40s
decky / build-publish (push) Successful in 11s
docker / build-push (--build-arg FEDORA_VERSION=44, ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora44-rpm) (push) Successful in 6s
docker / build-push (., web/Dockerfile, punktfunk-web) (push) Successful in 5s
docker / build-push (ci, ci/fedora-rpm.Dockerfile, punktfunk-fedora-rpm) (push) Successful in 5s
docker / build-push (ci, ci/rust-ci.Dockerfile, punktfunk-rust-ci) (push) Successful in 5s
docker / build-push (docs-site, docs-site/Dockerfile, punktfunk-docs) (push) Successful in 3s
ci / bench (push) Successful in 4m33s
flatpak / build-publish (push) Successful in 4m2s
rpm / build-publish (bazzite, punktfunk-fedora-rpm) (push) Successful in 8m13s
docker / deploy-docs (push) Successful in 17s
rpm / build-publish (fedora-44, punktfunk-fedora44-rpm) (push) Successful in 7m46s
The lock prune (a5b99b2) stopped flatpak-builder full-cloning windows-rs
(disk-fill), but exposed the next layer: `cargo --offline --locked -p
punktfunk-client-linux` resolves the WHOLE workspace, so it still tried
to load the now-un-vendored windows-rs source for the
punktfunk-client-windows member (its windows-rs git deps are
cfg(windows)-gated, but cargo resolves all targets regardless) and
failed: "can't checkout ... you are in the offline mode".
Drop the Windows client from the workspace members inside the sandbox
build (sed on the copied Cargo.toml — the flatpak never compiles it) and
remove --locked (the lock no longer matches the reduced member set;
--offline still pins every crate to the vendored cargo-sources.json, so
the build stays reproducible). android stays — it has no git deps.
Verified locally: removing the member, `cargo build -p
punktfunk-client-linux --offline` Finishes with zero windows-rs
involvement; manifest YAML still valid.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -135,7 +135,18 @@ modules:
|
|||||||
CARGO_HOME: /run/build/punktfunk-client/cargo
|
CARGO_HOME: /run/build/punktfunk-client/cargo
|
||||||
CARGO_NET_OFFLINE: 'true'
|
CARGO_NET_OFFLINE: 'true'
|
||||||
build-commands:
|
build-commands:
|
||||||
- cargo --offline build --release --locked -p punktfunk-client-linux
|
# Drop the Windows client from the workspace before building. It pins windows-rs as a
|
||||||
|
# git dependency (cfg(windows)-gated, but cargo resolves it for the whole workspace
|
||||||
|
# regardless of target), and that git source is deliberately NOT vendored into
|
||||||
|
# cargo-sources.json — see packaging/flatpak/prune-windows-lock.py, which strips it so
|
||||||
|
# flatpak-builder doesn't full-clone the multi-GB windows-rs repo. Without removing the
|
||||||
|
# member, `cargo --offline` would try to load the un-vendored windows-rs source and fail
|
||||||
|
# ("can't checkout ... you are in the offline mode"). The flatpak never compiles the
|
||||||
|
# Windows client; this edits only the sandbox copy of Cargo.toml. (No --locked: the lock
|
||||||
|
# no longer matches the reduced member set; --offline still pins every crate to the
|
||||||
|
# vendored cargo-sources.json, so the build stays reproducible.)
|
||||||
|
- sed -i '\#"crates/punktfunk-client-windows",#d' Cargo.toml
|
||||||
|
- cargo --offline build --release -p punktfunk-client-linux
|
||||||
- install -Dm0755 target/release/punktfunk-client ${FLATPAK_DEST}/bin/punktfunk-client
|
- install -Dm0755 target/release/punktfunk-client ${FLATPAK_DEST}/bin/punktfunk-client
|
||||||
# Desktop entry (renamed to the app id; Exec is the in-sandbox binary).
|
# Desktop entry (renamed to the app id; Exec is the in-sandbox binary).
|
||||||
- install -Dm0644 packaging/flatpak/io.unom.Punktfunk.desktop
|
- install -Dm0644 packaging/flatpak/io.unom.Punktfunk.desktop
|
||||||
|
|||||||
Reference in New Issue
Block a user