Bug 1853462 - fedora-icon-theme depends on gnome-themes, which has been retired
Summary: fedora-icon-theme depends on gnome-themes, which has been retired
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: fedora-icon-theme
Version: 33
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Orphan Owner
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-07-02 18:12 UTC by Adam Williamson
Modified: 2021-11-30 16:12 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-11-30 16:12:13 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Adam Williamson 2020-07-02 18:12:11 UTC
gnome-themes was retired as an orphan recently:

https://src.fedoraproject.org/rpms/gnome-themes/c/e85d646df62cc5c047c36f4e3eb9f48555e9e5d7?branch=master

This is a problem, because fedora-icon-theme depends on it, and is part of six important package groups: basic-desktop, cinnamon-desktop, deepin-desktop, lxde-desktop, lxqt-desktop and xfce-desktop.

All those groups currently cannot be installed, and live images based on them are failing to compose.

The dependency is a real one: the 'fedora' icon theme contained in fedora-icon-theme inherits from the 'mist' theme, which is/was part of gnome-themes. So, we need to do something about this.

We have a few options:

1) unorphan gnome-themes and bring it back
2) make the 'fedora' icon theme inherit from something else
3) just stop using the 'fedora' icon theme in everything and retire it too

I'm currently going through each desktop to figure out which ones actually use the 'fedora' icon theme.

Note that the 'fedora' theme doesn't actually contain any icons, it only contains some configuration files. I'm not sure whether any of them really do anything much any more (aside from inheriting from mist, which means the mist icons are effectively the default for anything that uses the 'fedora' theme).

Marking as an automatic Beta freeze exception as this is blocking the compose of several popular but not release-blocking desktops: "Bugs which entirely prevent the composition of one or more of the non-release-blocking images required to be built for a currently-pending (pre-)release" - https://fedoraproject.org/wiki/QA:SOP_freeze_exception_bug_process#Automatic_freeze_exceptions

Comment 1 Adam Williamson 2020-07-02 18:58:01 UTC
for the purposes of option 3), here's a survey of what each desktop is actually doing by default atm:

* cinnamon: uses Mint-Y-Aqua by default, could drop fedora-icon-theme
* deepin:   not sure, but 'deepin-icon-theme' at least exists and does not depend on fedora-icon-theme
* lxde:     has 'sNet/IconThemeName=Fedora' in /etc/xdg/lxsession/LXDE/desktop.conf , but LXAppearance shows 'Adwaita' highlighted on the 'Icon Theme' tab, icons do seem to be adwaita not fedora. tasaka-san?
* lxqt:     uses Breeze by default, could drop fedora-icon-theme
* xfce:     does use Fedora by default. could switch to 'GNOME' (part of gnome-icon-theme, which hasn't been updated since 2014) with what looks to be minimal disruption, or Adwaita with a bit more disruption

I guess for now I'll update comps to drop fedora-icon-theme from cinnamon and lxqt since that seems likely to be uncontroversial, we can discuss the others here.

Comment 2 Kevin Fenzi 2020-07-02 19:04:38 UTC
I guess I'd say move xfce to Adwaita, but will defer to nonamedotc on that.

Comment 3 leigh scott 2020-07-02 20:20:36 UTC
(In reply to Adam Williamson from comment #1)
> for the purposes of option 3), here's a survey of what each desktop is
> actually doing by default atm:
> 
> * cinnamon: uses Mint-Y-Aqua by default, could drop fedora-icon-theme
> * deepin:   not sure, but 'deepin-icon-theme' at least exists and does not
> depend on fedora-icon-theme
> * lxde:     has 'sNet/IconThemeName=Fedora' in
> /etc/xdg/lxsession/LXDE/desktop.conf , but LXAppearance shows 'Adwaita'
> highlighted on the 'Icon Theme' tab, icons do seem to be adwaita not fedora.
> tasaka-san?
> * lxqt:     uses Breeze by default, could drop fedora-icon-theme
> * xfce:     does use Fedora by default. could switch to 'GNOME' (part of
> gnome-icon-theme, which hasn't been updated since 2014) with what looks to
> be minimal disruption, or Adwaita with a bit more disruption
> 
> I guess for now I'll update comps to drop fedora-icon-theme from cinnamon
> and lxqt since that seems likely to be uncontroversial, we can discuss the
> others here.

+1 Thank you for dealing with it.

Comment 4 Mukundan Ragavan 2020-07-02 20:37:20 UTC
I am happy with Adwaita for Xfce as well.

Adam, if you can please update for xfce as well. Thanks for looking at this Adam.

Comment 5 Adam Williamson 2020-07-02 21:08:46 UTC
OK, I'm on it. Gonna send an xfce4-settings build with the default changed, and then update comps.

Comment 6 Adam Williamson 2020-07-02 21:35:34 UTC
Done. So that leaves just deepin , lxde and basic-desktop (I guess I should figure out what WM that gives you these days, and what its default setting is...icewm still?)

Comment 7 Zamir SUN 2020-07-03 00:35:20 UTC
(In reply to Adam Williamson from comment #1)
> * lxqt:     uses Breeze by default, could drop fedora-icon-theme

As the LXQt spin maintainer, I don't think we use fedora-icon-theme. As you mentioned, we use breeze-icon-theme instead. So go ahead for this.

(In reply to Adam Williamson from comment #6)
> Done. So that leaves just deepin , lxde and basic-desktop (I guess I should
> figure out what WM that gives you these days, and what its default setting
> is...icewm still?)

As the coordinator of Deepin Desktop (yes, I'm also the coordinator there), we are not shipping as live media, so it's benign to fix the dependency individually. I'll talk to Robin and other packagers for proper handling with this.

Thanks for the heads-up.

Comment 8 Zamir SUN 2020-07-03 01:35:30 UTC
(In reply to Zamir SUN from comment #7)
> (In reply to Adam Williamson from comment #6)
> > Done. So that leaves just deepin , lxde and basic-desktop (I guess I should
> > figure out what WM that gives you these days, and what its default setting
> > is...icewm still?)
> 
> As the coordinator of Deepin Desktop (yes, I'm also the coordinator there),
> we are not shipping as live media, so it's benign to fix the dependency
> individually. I'll talk to Robin and other packagers for proper handling
> with this.
> 

Confirmed with Robin that Deepin Desktop do not depend on fedora-icon-theme.

Comment 9 Adam Williamson 2020-07-03 03:43:44 UTC
It doesn't depend on it, but it's included in the deepin-desktop comps group. That means if someone tries to install that group, they'll get a dependency error now.

If our deepin config doesn't actually use the theme, then we can easily fix the problem by taking the package out of the comps group.

Comment 10 Zamir SUN 2020-07-03 12:10:32 UTC
(In reply to Adam Williamson from comment #9)
> It doesn't depend on it, but it's included in the deepin-desktop comps
> group. That means if someone tries to install that group, they'll get a
> dependency error now.
> 
> If our deepin config doesn't actually use the theme, then we can easily fix
> the problem by taking the package out of the comps group.

Deepin Desktop isn't actually using it. I just confirmed the default icon theme is "Deepin". I guess I thought it is the Fedora logo (which is fedora-logos) when I write the group list. So removing it is totally fine.

Thanks.

Comment 11 Adam Williamson 2020-07-03 16:02:37 UTC
Huh, so, LXDE is...odd.

We do customize /etc/xdg/lxsession/LXDE/desktop.conf to say 'sNet/IconThemeName=Fedora'. That file *seems* sort of correct and relevant, in that lxsession reads from it and lxappearance writes to it. However, AFAICT the setting is never actually *applied* by anything (any more?)

lxappearance does write the file, but AFAICS, the only thing it *reads* from it is sGtk/ColorScheme. lxsession also does not, AFAICS, at any point do anything to apply the IconThemeNameSetting - there's a function that reads it (and various other values) in, but it never then *does* anything with them that I can find.

lxappearance has a parallel mechanism which seems to be what actually *works*. It reads in the 'current' settings by calling gtk_settings_get_default, which just asks GTK+ (whichever GTK+ version it's built against - GTK+ 2 in our case) to tell it the current settings. The default theme and icon theme for both GTK+ 2 and 3 in Fedora packages is Adwaita, so that's what it shows.

If you change anything and hit Apply, as well as writing an lxsession desktop.conf, it writes out two files with what it sees as the current config: ~/.gtkrc-2.0 and ~/.config/gtk-3.0/settings.ini . These are known config locations for GTK+ 2 and 3, respectively. If you then log out and back in (the changes are not applied instantly, despite the name of the 'Apply' button, which should probably rather be called 'Save'...), the changes seem to take effect, in both GTK+ 2 and GTK+ 3 apps (tested with leafpad and pcmanfm).

So despite our attempt to use Fedora on LXDE, AFAICS that setting never really applies to anything. Our real default is Adwaita, and will have been for as long as we've built/configured GTK+ 2 and 3 to use Adwaita by default, I believe.

Given this I think we could probably just drop our attempt to set the theme to Fedora in desktop.conf, and drop the inclusion of fedora-icon-theme in the image. I'll go ahead and do that.

Comment 12 Adam Williamson 2020-07-03 19:14:39 UTC
Done that. So now I just have basic-desktop to look into.

Comment 13 Adam Williamson 2020-07-03 20:47:23 UTC
basic-desktop includes:

* awesome -   looks for "Adwaita", "gnome", "hicolor" in that order
* dwm -       doesn't really "do" icon themes (or icons), apps will presumably use the toolkit defaults
* i3 -        ditto
* metacity -  AFAICS will use icon theme configured in GTK+ (so, Adwaita by default)
* openbox -   we include a thing called 'xdg-menu' which seems to be an app menu of sorts for the WM, it seems to use GTK+ icon theme (so, Adwaita by default)
* qtile -     has some gubbins to do with icon themes I can't be bothered unpicking, but nothing that references 'fedora'
* ratpoison - nothing to do with icon themes
* xmonad -    nothing to do with icon themes

so, I think we're good there too. I'm going to drop the package from that group too. Then we can probably retire it...

Comment 14 Adam Williamson 2020-07-03 20:51:15 UTC
setting severity back to medium and dropped FE tags, now I removed all use of the package in images.

Comment 15 Mamoru TASAKA 2020-07-06 00:26:41 UTC
Sorry for delayed reply.

Well, for LXDE, 'sNet/IconThemeName=Fedora' in /etc/xdg/lxsession/LXDE/desktop.conf is not working from Fedora 32 (It worked in Fedora 32). 
"lxsession" should be working as xsession manager, it reads desktop.conf and should set icon and etc, but it is not working as expected right now. So actually Fedora 32 LXDE desktop spin uses Adwaita(? perhaps) instead of "Fedora" icon.

So for LXDE, actually (due to some bug I have not figure out yet), it is currently "safe" to remove gnome-themes dependency, perhaps.

Comment 16 Adam Williamson 2020-07-06 01:08:19 UTC
https://bugzilla.redhat.com/show_bug.cgi?id=1853462#c11 is what I figured out about the behaviour in current Rawhide / git code at least. I didn't look into older code.

Comment 17 Ben Cotton 2020-08-11 15:28:41 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 33 development cycle.
Changing version to 33.

Comment 18 Fedora Admin user for bugzilla script actions 2020-09-02 14:52:04 UTC
This package has changed maintainer in the Fedora.
Reassigning to the new maintainer of this component.

Comment 19 Bruno Wolff III 2020-09-04 14:06:51 UTC
I looked at the same issue for echo-icon-theme and it looks like Mist is actually provived by gtk2-engines which was required by gnome-themes. I think requiring gnome-icon-theme and gtk2-engines can replace the requirement for gnome-themes. There could be some subtlety that I'm that I'm missing, but it seems to work for echo-icon-theme which also depends on Mist.

Comment 20 Bruno Wolff III 2020-09-04 14:19:04 UTC
Looking more, gtk2-engines only provides a tiny bit of mist. So echo might have worked for me because of which specific icons I need or some other fallback was covering things.

Comment 21 Edward 2020-11-06 18:56:48 UTC
Attempted to install fedora-icon-theme on LXQt Fedora 33 and would not install, looking for gnome-themes.

Could this be fixed please?

Thank you.

Comment 22 Adam Williamson 2020-11-06 19:20:32 UTC
Edward: why did you want fedora-icon-theme at all?

Comment 23 Edward 2020-11-06 20:18:42 UTC
(In reply to Adam Williamson from comment #22)
> Edward: why did you want fedora-icon-theme at all?

Adam - I recall your name from a previous Linux distro I used to use (on their forum). Hope you're well.

With respect to LXQt, after changing an icon theme, logging out and then back in again, some of the icons changed to generic icons (squares, blue diamond, etc.), or were missing.

The icon themes that came with the LXQt install image were Adwaita and Breeze. When going through the menus, Adwaita is missing icons (Pulse Audio (no icons), on the Leave menu: Hibernate, Reboot, Suspend are using a blue diamond icon and the dnfdragora-updater notification shows the same). Breeze substituted an Internet app's regular icon for another.

I was hoping fedora-icon-theme would be a complete icon set.

Comment 24 Edward 2020-11-06 20:36:38 UTC
I have since installed mate-icon-theme and it seems mostly complete. No generic icons in any of the menus, not changing any Internet app icons, but the dnfdragora-updater icon still shows the bluish-purple diamond icon.

Comment 25 Edward 2020-11-07 01:52:42 UTC
Update: The Oxygen icon theme has addressed my concerns.

Comment 26 Ben Cotton 2021-11-04 17:20:12 UTC
This message is a reminder that Fedora 33 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 33 on 2021-11-30.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '33'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 33 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 27 Adam Williamson 2021-11-05 23:24:47 UTC
The package got retired for F34. So we can let this bug die naturally with F33.

Comment 28 Ben Cotton 2021-11-30 16:12:13 UTC
Fedora 33 changed to end-of-life (EOL) status on 2021-11-30. Fedora 33 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.