Skip to content

fix(linux): backport XDG argument quoting to 0.5 - #2

Draft
vincentkoc wants to merge 1 commit into
proof/auto-launch-0.5-basefrom
fix/xdg-exec-quoting-0.5
Draft

vincentkoc wants to merge 1 commit into
proof/auto-launch-0.5-basefrom
fix/xdg-exec-quoting-0.5

Conversation

@vincentkoc

@vincentkoc vincentkoc commented Sep 13, 2026 •

Copy link
Copy Markdown
Owner

Backport the XDG argument serializer from zzzgydi#39 to the published auto-launch 0.5.0 source, fedaeba.

This is the Linux XDG portion of zzzgydi#32. It preserves the executable path and each literal argument through Desktop Entry string escaping and Exec quoting. Ordinary commands retain their current representation. The 0.5 constructor, dependencies, filesystem behavior, macOS and Windows implementations remain unchanged. This does not add FreeBSD support.

The separate real gio launch test uses a disposable HOME, a copied executable with spaces and special characters in its path, and an atomic receipt of the original arguments. It seeds the normal .config parent required by 0.5; it does not change the production directory-creation behavior. The GLib percent-in-executable-name limitation recorded in the current-source candidate still applies.

Validation at f6f40dae45d0b010fcd6f5e558d293c57c4d36f3: cargo test --locked --lib --test xdg_exec passed on native Linux in a disposable secretless Crabbox (Rust 1.98.1, gio 2.88.0). One unit test passed, zero tests were ignored, and the real-launch fixture verified the executable path and every argument. Cargo.lock remained unchanged. Independent source and native-proof review completed; rustfmt and git diff --check pass. This does not claim desktop login/session or GUI coverage.

This fork-local draft makes a compatible maintenance fix reviewable without a global 0.5-to-0.6 dependency upgrade. An upstream maintainer must choose and publish an actual maintenance release before downstream consumers can receive it. No release version is invented or published.

Backport the XDG serializer and real-launch test from 1572384 without changing the 0.5 dependencies or platform support.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant