Re: How to install icons for multiple themes
El dissabte, 22 d’abril de 2017, a les 1:25:18 CEST, Kevin Kofler va escriure: > Albert Astals Cid wrote: > > Humanity does not, ubuntu-mono does not either. > > Of course Ubuntu has to do everything its own way. But I doubt KDE > applications would want to install to those themes (through ECM) anyway. I disagree, as a KDE application developer it is probably much easier to convince the breeze iconset developers to include your icon that it is to convince the Humanity iconset developers. Cheers, Albert > > The concrete problem at hand can easily be fixed in the Breeze icon theme. > > Kevin Kofler
Re: How to install icons for multiple themes
Albert Astals Cid wrote: > Humanity does not, ubuntu-mono does not either. Of course Ubuntu has to do everything its own way. But I doubt KDE applications would want to install to those themes (through ECM) anyway. The concrete problem at hand can easily be fixed in the Breeze icon theme. Kevin Kofler
Re: How to install icons for multiple themes
El divendres, 21 d’abril de 2017, a les 12:33:09 CEST, Kevin Kofler va escriure: > Milian Wolff wrote: > >> > ECM installs to e.g.: > >> > > >> > /home/milian/projects/compiled/other/share/icons/breeze/16x16/apps/ > >> > hotspot.svgz > >> > > >> > Strace shows me the nearest match it looks into: > >> > /home/milian/projects/compiled/kf5/share/icons/breeze/apps/16/hotspot.s > >> > vg > > Pretty much ALL the other icon themes around use the 16x16/apps naming > scheme. Humanity does not, ubuntu-mono does not either. Cheers, Albert
Re: How to install icons for multiple themes
Matthias Klumpp wrote: > And since the spec allows themes to define arbitrary layouts, there is > technically nothing wrong with the Breeze theme. IMHO, doing things differently just because you can, even if it breaks KDE's own ECM macros, is not helpful. Kevin Kofler
Re: How to install icons for multiple themes
2017-04-21 12:33 GMT+02:00 Kevin Kofler: > [...] > I think it would really be helpful to make Breeze match the de-facto > standard directory hierarchy. I asked for this a while back (and also to have PNG additional to SVG icons for rendering speed improvements) and the bug report was closed without comment. And since the spec allows themes to define arbitrary layouts, there is technically nothing wrong with the Breeze theme. In any case, ecm_install_icons makes assumptions which are not guaranteed to be true... -- Debian Developer | Freedesktop-Developer I welcome VSRE emails. See http://vsre.info/
Re: How to install icons for multiple themes
Milian Wolff wrote: >> > ECM installs to e.g.: >> > >> > /home/milian/projects/compiled/other/share/icons/breeze/16x16/apps/ >> > hotspot.svgz >> > >> > Strace shows me the nearest match it looks into: >> > /home/milian/projects/compiled/kf5/share/icons/breeze/apps/16/hotspot.svg Pretty much ALL the other icon themes around use the 16x16/apps naming scheme. I think it even used to be mandated by the fd.o spec. At least all the ones I have installed (except for Breeze) do so, in alphabetical order: Adwaita, Bluecurve, crystalsvg, gnome, hicolor, HighContrast, locolor, oxygen. I am pretty sure most other themes around on the network do, too. Breeze is really the odd one out. > sorry for the delay and thanks for the response. The above makes me wonder > about the functionality of ecm_install_icons. As it stands, it is > completely broken for anything but the hicolor theme, don't you agree? I > would say we should fix it there, somehow... As you can see above, it is only really broken for the Breeze theme. Instead of removing useful functionality from ECM, wouldn't it make more sense to fix the Breeze paths to match the other themes? The Fedora package actually creates a whole hierarchy of empty directories such as 16x16/apps under Breeze: http://pkgs.fedoraproject.org/cgit/rpms/breeze-icon-theme.git/tree/breeze-icon-theme.spec#n82 I think it would really be helpful to make Breeze match the de-facto standard directory hierarchy. Kevin Kofler
Re: How to install icons for multiple themes
On Donnerstag, 20. April 2017 11:34:39 CEST Matthias Klumpp wrote: > 2017-04-20 11:30 GMT+02:00 Milian Wolff: > > [...] > > Hey Albert, > > > > sorry for the delay and thanks for the response. The above makes me wonder > > about the functionality of ecm_install_icons. As it stands, it is > > completely broken for anything but the hicolor theme, don't you agree? I > > would say we should fix it there, somehow... > > > > It is very unfortunate that the themes can come up with their own path > > mapping... > > Indeed - unfortunately it's to late to change that now :-/ > > > How do other applications deal with this situation? Should the apps only > > install hicolor, and the other per-theme icons be submitted to the > > corresponding icon themes? > > That's exactly how this is intended to work, anything except the > hicolor/locolor default themes is essentially expected to be > self-contained. So that means I'll have to rework ecm_install_icons: - deprecate the THEME argument - extend documentation I'll try to find the time for this and submit the patches then. Thanks everyone -- Milian Wolff m...@milianw.de http://milianw.de signature.asc Description: This is a digitally signed message part.
Re: How to install icons for multiple themes
2017-04-20 11:30 GMT+02:00 Milian Wolff: > [...] > Hey Albert, > > sorry for the delay and thanks for the response. The above makes me wonder > about the functionality of ecm_install_icons. As it stands, it is completely > broken for anything but the hicolor theme, don't you agree? I would say we > should fix it there, somehow... > > It is very unfortunate that the themes can come up with their own path > mapping... Indeed - unfortunately it's to late to change that now :-/ > How do other applications deal with this situation? Should the apps only > install hicolor, and the other per-theme icons be submitted to the > corresponding icon themes? That's exactly how this is intended to work, anything except the hicolor/locolor default themes is essentially expected to be self-contained. Cheers, Matthias -- Debian Developer | Freedesktop-Developer I welcome VSRE emails. See http://vsre.info/
Re: How to install icons for multiple themes
On Montag, 17. April 2017 23:36:24 CEST Albert Astals Cid wrote: > El dilluns, 17 d’abril de 2017, a les 22:27:15 CEST, Milian Wolff va escriure: > > Hey all, > > > > how is one supposed to install different versions of icons for different > > icon themes? Say I have an icon for breeze, breeze-dark and oxygen. I went > > ahead and plumbed it into CMake with ECM's ecm_install_icons specifying > > THEME accordingly, but at runtime nothing is found... Only if I install > > into hicolor does it work for me > > > > Stracing makes me wonder whether the lookup rules match the installation > > logic... > > > > ECM installs to e.g.: > > > > /home/milian/projects/compiled/other/share/icons/breeze/16x16/apps/ > > hotspot.svgz > > > > Strace shows me the nearest match it looks into: > > /home/milian/projects/compiled/kf5/share/icons/breeze/apps/16/hotspot.svg > > > > - this is a wrong prefix, but both are listed in XDG_DATA_DIRS > > - it has the wrong directory structure, i.e. it's apps/16 instead of > > 16x16/ > > apps > > - it doesn't look for the svgz variant, even though ecm_install_icons says > > so > > > > So, clearly something is majorly broken here... If I install into the > > hicolor theme, things start to work since strace also shows that this path > > is looked up: > > > > /home/milian/projects/compiled/other/share/icons/hicolor/16x16/apps/ > > hotspot.svgz > > > > So I'm at a loss. At what level is this broken? Is this inside the KDE > > icon > > subsystem? Is this in ECM? Am I missing some environment variable? > > > > Any help would be appreciated, thanks > > Generally you can't do what you want to do. > > Themes describe where the icons live on their index.theme > > breeze/index.theme says > [actions/16] > Size=16 > Context=Actions > Type=Fixed > > hicolor/index.theme says > [16x16/actions] > Size=16 > Context=Actions > Type=Threshold > > So unless you hardcode the folder names for every single theme you want to > support into ecm (and hope they don't change) you can't install stuff into > multiple themes. > > For the svgz vs svg thing, breeze saying > KDE-Extensions=.svg > is the reason for it. Hey Albert, sorry for the delay and thanks for the response. The above makes me wonder about the functionality of ecm_install_icons. As it stands, it is completely broken for anything but the hicolor theme, don't you agree? I would say we should fix it there, somehow... It is very unfortunate that the themes can come up with their own path mapping... How do other applications deal with this situation? Should the apps only install hicolor, and the other per-theme icons be submitted to the corresponding icon themes? Cheers -- Milian Wolff m...@milianw.de http://milianw.de signature.asc Description: This is a digitally signed message part.
Re: How to install icons for multiple themes
El dilluns, 17 d’abril de 2017, a les 22:27:15 CEST, Milian Wolff va escriure: > Hey all, > > how is one supposed to install different versions of icons for different > icon themes? Say I have an icon for breeze, breeze-dark and oxygen. I went > ahead and plumbed it into CMake with ECM's ecm_install_icons specifying > THEME accordingly, but at runtime nothing is found... Only if I install > into hicolor does it work for me > > Stracing makes me wonder whether the lookup rules match the installation > logic... > > ECM installs to e.g.: > > /home/milian/projects/compiled/other/share/icons/breeze/16x16/apps/ > hotspot.svgz > > Strace shows me the nearest match it looks into: > /home/milian/projects/compiled/kf5/share/icons/breeze/apps/16/hotspot.svg > > - this is a wrong prefix, but both are listed in XDG_DATA_DIRS > - it has the wrong directory structure, i.e. it's apps/16 instead of 16x16/ > apps > - it doesn't look for the svgz variant, even though ecm_install_icons says > so > > So, clearly something is majorly broken here... If I install into the > hicolor theme, things start to work since strace also shows that this path > is looked up: > > /home/milian/projects/compiled/other/share/icons/hicolor/16x16/apps/ > hotspot.svgz > > So I'm at a loss. At what level is this broken? Is this inside the KDE icon > subsystem? Is this in ECM? Am I missing some environment variable? > > Any help would be appreciated, thanks Generally you can't do what you want to do. Themes describe where the icons live on their index.theme breeze/index.theme says [actions/16] Size=16 Context=Actions Type=Fixed hicolor/index.theme says [16x16/actions] Size=16 Context=Actions Type=Threshold So unless you hardcode the folder names for every single theme you want to support into ecm (and hope they don't change) you can't install stuff into multiple themes. For the svgz vs svg thing, breeze saying KDE-Extensions=.svg is the reason for it. Cheers, Albert
How to install icons for multiple themes
Hey all, how is one supposed to install different versions of icons for different icon themes? Say I have an icon for breeze, breeze-dark and oxygen. I went ahead and plumbed it into CMake with ECM's ecm_install_icons specifying THEME accordingly, but at runtime nothing is found... Only if I install into hicolor does it work for me Stracing makes me wonder whether the lookup rules match the installation logic... ECM installs to e.g.: /home/milian/projects/compiled/other/share/icons/breeze/16x16/apps/ hotspot.svgz Strace shows me the nearest match it looks into: /home/milian/projects/compiled/kf5/share/icons/breeze/apps/16/hotspot.svg - this is a wrong prefix, but both are listed in XDG_DATA_DIRS - it has the wrong directory structure, i.e. it's apps/16 instead of 16x16/ apps - it doesn't look for the svgz variant, even though ecm_install_icons says so So, clearly something is majorly broken here... If I install into the hicolor theme, things start to work since strace also shows that this path is looked up: /home/milian/projects/compiled/other/share/icons/hicolor/16x16/apps/ hotspot.svgz So I'm at a loss. At what level is this broken? Is this inside the KDE icon subsystem? Is this in ECM? Am I missing some environment variable? Any help would be appreciated, thanks -- Milian Wolff m...@milianw.de http://milianw.de signature.asc Description: This is a digitally signed message part.