Theme Connector For Snaps classic confinement

Automatic theme snap installation is on my todo list. Here are some notes about the design:

The plan there is to have a background user session service packaged as a strict confined snap (both for security, and to limit cross-distro release compatibility problems). It would watch for theme changes, and prompt to install theme snaps as needed.

As for connecting up slots, this will be handled by the greedy connection support as mentioned by @galgalesh. There are a few points to keep in mind though:

  1. the greedy connection feature relies on snap declarations provided by the store to indicate that multiple connection is desired. This would need to be provided by gtk-common-themes and all other snaps providing the slot.
  2. We need some level of review tools support before allowing third parties to publish theme snaps that will auto-connect. For example checking that a GTK 3 theme snap provides nothing but CSS, images, and perhaps a gtk.gresource file.

Having the theme change detection service manually connect plugs/slots is not desirable since (a) it bypasses the autoconnect checks, and (b) it won’t cover apps installed after the theme change.

1 Like