PapirusDevelopmentTeam / papirus-icon-theme

Pixel perfect icon theme for Linux
https://git.io/papirus-icon-theme
GNU General Public License v3.0
6.45k stars 407 forks source link

Only inherit themes which are really needed #3736

Open alexxcons opened 3 weeks ago

alexxcons commented 3 weeks ago

Hi Papirus team,

now that the related xdg merge request got merged and v0.18 of the spec got released, I am starting my mission to get the "Inherits" attribute right for popular icon-themes to prevent potentially missing icons :slightly_smiling_face:

Currently Papirus has:

Inherits=breeze,hicolor

Currently ePapirus has:

Inherits=elementary,hicolor

I wonder why breeze and elementary are listed here ... is Papirus lacking some fd.org icons which need to be provided by these?

If there is no strong reason to keep them in the Inherits list, I would suggest dropping them.

If one/some of the other themes need to stay on the list for some reason, it makes sense to have a section in the README.md to explain packagers that the papirus-ixon-theme package should have a hard dependency on the other listed themes.

morganist commented 3 weeks ago

@alexxons hi, can you please clarify in what way does the v0.18 spec change the way inherited themes work? wouldn't removing them cause missing icons for example in KDE apps, considering that not all Breeze icons are covered by Papirus?

alexxcons commented 3 weeks ago

Here the concrete line which was added to the spec.

Wouldn't removing them cause missing icons for example in KDE apps, considering that not all Breeze icons are covered by Papirus?

In theory, if Papirus provides all icons given in the icon-naming-spec, that should be sufficient. Since, if an App requires additional icons, according to the spec,that App should install these additional icons itself into the "hicolor" folder.

It might be that there are (KDE) Apps which miss installing these additional icons and rely on having breeze in the Inherit tree. If you notice so, you should report that to the app developer. If these icons are used by multiple applications, it might make sense to request a new icon-name for them on freedesktop.org, so that all themes will ship that icon.

In case you want to make sure that even such Apps which dont follow the standards are serviced with the KDE specific icons when using Papirus, it is fine to still keep breeze in the Inherits section. Though than you should make sure, that whenever Papirus is installed, as well breeze is installed (hard dependency). Since otherwise, users of the mentioned KDE Apps still won't have icons when installing only Papirus ... and they won't know why icons are missing / which theme to install to get them.

The best place to define a hard dependency to breeze probably would be, to write that into the README.md, so that packagers do know ... it might be required to open issues against distros as well, in order to inform them on the dependency.

morganist commented 3 weeks ago

thanks for the explaination and for opening this issue! we'll see what works better for Papirus