Gradience
Gradience copied to clipboard
feat: Snap theming support
Feature description
I had ~the misfortune~ to use a snap package recently, and I noticed that snap packages tend to default to the old adwaita theme, but there is a snap port of the adw-gtk theme which could maybe be used as a jumping off point.
Additional Context
Did you read the Code of Conduct?
- [X] I have read the Code of Conduct.
Welcome on Gradience. 🥳 We really appreciate your contribution. The core team will review your issue as soon as possible. You can also join the Matrix room: https://matrix.to/#/#Gradience-space:envs.net or the Discord server: https://discord.com/invite/4njFDtfGEZ
Oh god, they ported adw-gtk3 to Snap? 😂️
We could try to add Snap support, although those methods look pretty hacky (at least for adw-gtk3), they also seem to require root permissions, for which we don't have yet any support in backend and I don't know how stable all of those workarounds and Snap boilerplate would be.
Also, are those .yml (I suppose Snap manifest) files editable after an app is packaged and installed?
I can't tell you for sure that we will ever work on this, but if we will, it will be probably somewhere after we release an 1.0 update. For now I can only tell you to try remove that Snap stuff before it gets your Firefox 🙃️
Lol that's totally fair, I plan to uninstall the snap package and snapd itself as soon as I can anyways. Just wanted to throw this at the wall in case it turned out not to be too difficult. Love gradience so far though, thank you so much for this project :)
~/snap/APP/current/.config/gtk-3.0/gtk.css seems to already link to ~/.config/gtk-3.0/gtk.css out of the box, so GTK3 Snap applications should theoretically Just Work if you have the adw-gtk3-theme Snap installed.
Unfortunately, this does not appear to also be the case for GTK4. It's probably worth opening an upstream issue. If the relevant symlink gets added out-of-the-box by Snap like is currently the case for GTK3, then theoretically the Gradience theme should apply to all Snap LibAdwaita applications, with no changes needed by Gradience itself.