We’ve got an updated version of gtk-common-themes in the candidate channel (and latest/stable/ubuntu-24.10
for the new Ubuntu release) that merged PR #10 to remove the Breeze themes.
I see that there are gtk-theme-breeze
and icon-theme-breeze
snaps published to the store as stable. So snapd-desktop-integration should be able to trigger their installation when people upgrade to the new gtk-common-themes (although it may require a log out/log in to occur).
There are a few issues with the new snaps though, that prevent them from actually sharing the theme data.
For gtk-theme-breeze
:
- it currently defines a
gtk-theme-breeze
slot, which no applications will try to plug. Instead, it should define the same slots as gtk-common-themes:slots: gtk-3-themes: interface: content source: read: - $SNAP/share/themes/Breeze - $SNAP/share/themes/Breeze-Dark gtk-2-themes: interface: content source: read: - $SNAP/share/gtk2/Breeze - $SNAP/share/gtk2/Breeze-Dark
- The snap contains a lot of files outside of the paths shared via the content interface slots. I think most of this could go, massively reducing the size of the snap.
- Consider making the snap architecture independent. If you’re using
build-base: core24
, adding the following to your snapcraft.yaml should do the trick:platforms: all: build-on: amd64 build-for: all
For icon-theme-breeze
:
- The snap seems to be shipping themes that are not exported via the content interface slot. Am I right in thinking these are all cursor themes? If they are likely to only be used along side the Breeze icon theme, it might make sense to just keep them here and add them to the
icon-themes
slot. - This snap should also be architecture independent.
With those issues sorted out, the snaps will need to have the snap declaration updated on the store. I think we’d want the same declaration as was used for these other theme snaps: