arc-design / arc-theme

A flat theme with transparent elements
GNU General Public License v3.0
695 stars 55 forks source link

Support multiple GTK 3.x versions simulatnaeously #163

Open jhenstridge opened 5 years ago

jhenstridge commented 5 years ago

At present, the build logic for Arc detects the current version of GTK 3, and then installs a version of the theme to match. It would be useful to have a mode where all version variants of the theme were installed simultaneously so a single set of theme data was usable by applications compiled against multiple versions of GTK.

More concretely, this would mean installing the 3.18 compatible theme to $datadir/themes/Arc/gtk-3.0 and the 3.20+ version to $datadir/themes/Arc/gtk-3.20. When GTK is loading a theme, it will look for the gtk-3.x directory that is closest to the GTK version but not greater.

The specific use case I have in mind is making the Arc theme available to applications packaged as snaps (see https://snapcraft.io). These applications run in a private mount namespace that will usually contain different libraries to the host system. Some snap apps are built against an Ubuntu 16.04 base and run using GTK 3.18, while others use more recent libraries.

At the moment, we provide the same theme data to both apps, so providing both versions of the theme will give a better experience to users using Arc.

NicoHood commented 5 years ago

I understand the idea, but this make the package double the size. There are packages for debian, ubuntu, arch and many other distributions, so why would we need it as snap?

And beside all this, it is your responsibility as packager to do such a thing if it makes sense to your. I think that is doable to compile the theme twice to different directories. I assume you already do that.

NicoHood commented 4 years ago

I think we can close that issue?