Migrated from issue yandy-r/crosshook#26
Originally opened by @yandy-r on 2026-03-25T01:42:00Z
Original state: open
Duplicate Check
Component
Build / Packaging
Platform
Linux (other distro)
Proton / WINE Version
N/A
CrossHook Version
5926d6a
Bug Description
GitHub Dependabot alert #1 is open for glib in src/crosshook-native/Cargo.lock.
Current analysis shows this repository cannot patch glib directly without an upstream dependency-chain change.
Observed dependency path:
tauri v2.10.3
gtk v0.18.2
glib ^0.18 (currently locked to glib v0.18.5)
A direct update attempt fails because gtk v0.18.2 requires glib = "^0.18", so glib 0.20.0 cannot be selected while the current Linux Tauri/GTK stack remains in place.
Steps to Reproduce
- Check the Dependabot alert for this repository.
- Inspect the transitive dependency path with:
cargo tree --manifest-path src/crosshook-native/Cargo.toml -i glib
- Attempt to move to the patched version with:
cargo update --manifest-path src/crosshook-native/Cargo.toml -p glib --precise 0.20.0 --dry-run
- Observe that Cargo rejects the update because
gtk v0.18.2 requires glib = "^0.18".
Expected Behavior
CrossHook should be able to consume a non-vulnerable glib version, or we should have a clear upgrade path to a Tauri/Linux stack that does.
Actual Behavior
The repository is currently blocked on an upstream Linux desktop dependency chain:
tauri 2.10.3 is already current in this environment.
- The Linux GTK stack still resolves to
gtk 0.18.2 / glib 0.18.x.
- The Dependabot alert remains open because the patched
glib 0.20.0 line is incompatible with the current transitive constraints.
Game & Trainer Details
N/A
Logs / Screenshots
$ cargo tree --manifest-path src/crosshook-native/Cargo.toml -i glib
glib v0.18.5
└── gtk v0.18.2
└── tauri v2.10.3
└── crosshook-native src-tauri
$ cargo update --manifest-path src/crosshook-native/Cargo.toml -p glib --precise 0.20.0 --dry-run
error: failed to select a version for the requirement `glib = "^0.18"`
candidate versions found which didn't match: 0.20.0
required by package `gtk v0.18.2`
... which satisfies dependency `gtk = "^0.18"` of package `tauri v2.10.3`
Suggested Follow-up
- Track upstream Tauri/Linux GTK dependency updates that move off
gtk 0.18 / glib 0.18.
- Re-evaluate when a newer Tauri/Wry/Linux stack can resolve to
glib >= 0.20.0.
- If upstream remains blocked, assess whether a temporary fork/patch strategy is acceptable for this project.
Storage strategy
- No new persisted app data is expected for this tracking bug. Any eventual mitigation should avoid introducing new settings or metadata unless an upstream workaround genuinely requires it.
- Runtime-only analysis such as dependency inspection, build verification, or alert triage should remain ephemeral rather than becoming app-managed state.
Persistence & usability
- No migration or backward-compatibility work should be required while this remains an upstream dependency-chain tracking issue.
- If a temporary mitigation is ever needed, it should not rewrite user profiles, settings, or metadata DB contents.
Code maintainability
- Keep any eventual workaround isolated to build/dependency-management surfaces rather than scattering version checks throughout runtime code.
- Prefer one clearly owned dependency policy path over per-platform or per-feature exceptions.
- If supporting code is needed, keep modules focused and split early rather than growing a mixed-responsibility file past the 400-500 line range.
Dependencies / Blockers
- Blocked by upstream movement in the Tauri/GTK/Linux dependency chain so
glib >= 0.20.0 becomes selectable.
- Track the Dependabot alert and upstream release notes rather than creating CrossHook-only forks by default.
Scope boundaries / Non-goals
- This issue is not a mandate to add runtime fallbacks, Linux-only behavior forks, or unrelated packaging changes.
- Do not treat a temporary fork as the default plan unless upstream is demonstrably stalled and the maintenance cost is accepted explicitly.
Duplicate Check
Component
Build / Packaging
Platform
Linux (other distro)
Proton / WINE Version
N/A
CrossHook Version
5926d6aBug Description
GitHub Dependabot alert
#1is open forglibinsrc/crosshook-native/Cargo.lock.GHSA-wrw7-89jp-8q8gglib>= 0.15.0, < 0.20.00.20.0Current analysis shows this repository cannot patch
glibdirectly without an upstream dependency-chain change.Observed dependency path:
tauri v2.10.3gtk v0.18.2glib ^0.18(currently locked toglib v0.18.5)A direct update attempt fails because
gtk v0.18.2requiresglib = "^0.18", soglib 0.20.0cannot be selected while the current Linux Tauri/GTK stack remains in place.Steps to Reproduce
gtk v0.18.2requiresglib = "^0.18".Expected Behavior
CrossHook should be able to consume a non-vulnerable
glibversion, or we should have a clear upgrade path to a Tauri/Linux stack that does.Actual Behavior
The repository is currently blocked on an upstream Linux desktop dependency chain:
tauri 2.10.3is already current in this environment.gtk 0.18.2/glib 0.18.x.glib 0.20.0line is incompatible with the current transitive constraints.Game & Trainer Details
N/A
Logs / Screenshots
Suggested Follow-up
gtk 0.18/glib 0.18.glib >= 0.20.0.Storage strategy
Persistence & usability
Code maintainability
Dependencies / Blockers
glib >= 0.20.0becomes selectable.Scope boundaries / Non-goals