Can't switch between Yaru and Adwaita shell themes, even when User Themes is enabled

Bug #1832137 reported by Carlos Pita
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
yaru-theme (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

In an ubuntu session the default shell theme is Yaru. In a vanilla gnome session the default shell theme is Adwaita. In both cases, there is no way to pick the other shell theme. Of course, I agree with the defaults, but arguably one might be interested in using Yaru in a vanilla gnome session and viceversa. Plus, the ability to change the gtk theme to Adwaita in an ubuntu session is crippled by the inability to also change the shell theme in a consistent way (and viceversa).

The problem is that these themes get installed under /usr/share/gnome-shell/theme and not under /usr/share/themes/<Theme>/gnome-shell as is usually the case with every other third party theme. But it's simple to fix this in order to allow for selecting the alternative theme: symlink from /usr/share/themes/<Theme>. For example:

    ln -s /usr/share/gnome-shell/theme/Yaru /usr/share/themes/Yaru/gnome-shell

    ln -s /usr/share/gnome-shell/theme /usr/share/themes/Adwaita/gnome-shell

The only downside I see is that you will have Yaru as an alias to Default under an ubuntu session and Adwaita as an alias to Default under a vanilla session. That is, two options in the dropdown will refer to the same underlying theme. But this seems quite innocuous to me, specially for a user that has already made his/her way into Tweaks and theme customization. And arguably having an explicitly named option and a default option may even be desirable.

description: updated
Revision history for this message
Carlos Pita (carlosjosepita) wrote :

One additional consideration. Maybe one answer to my request could be: Ubuntu desktop is opinionated, provide a few extensions and restricted customization options, you're not supposed to change the gtk widget theme, let alone the shell theme for mere consistency with widgets, and if you want to do that, well you have already found a workaround. And I would agree. But then there is this other aspect: not allowing vanilla Gnome users to set Yaru, of all themes, as their shell theme, would be perplexing given the status of Yaru as emblematic of Ubuntu. So, short of having it both ways, I would still propose to let vanilla sessions set Yaru as the shell theme, that is:

    ln -s /usr/share/gnome-shell/theme/Yaru /usr/share/themes/Yaru/gnome-shell

This also has the advantage that only the yaru-theme package has to be modified.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

The ability to change the shell theme is hidden behind the User Themes extension. To do it you need to:

1. sudo apt install gnome-shell-extensions

2. In gnome-tweaks enable Extensions > User themes

3. Restart gnome-tweaks

4. gnome-tweaks > Appearance > Themes > Shell ... is now selectable.

Changed in yaru-theme (Ubuntu):
status: New → Invalid
Revision history for this message
Carlos Pita (carlosjosepita) wrote :

I know that Daniel, that is not what I meant. The problem is that Adwaita is not listed for an Ubuntu session and, conversely, Yaru is not listed for a vanilla session, because both are "Default" and the meaning of default is contextual to the session and neither of them are listed under /usr/share/themes.

Changed in yaru-theme (Ubuntu):
status: Invalid → New
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

OK. Future readers of this bug might be confused though. Because you say "there is no way to pick the other shell theme" which is simply untrue. Please reword those statements to avoid confusing other people in future.

While I agree with your concern here, we also need to be mindful that upstream Gnome Shell has their own reasons for disallowing shell theming by default.

From the perspective of less advanced users than yourself, I think the current design is actually going to be less confusing. Because normal people don't know to call the current theme "Yaru" or "Adwaita". It's less confusing for them to refer to the default theme as just "Default".

So yes I agree with your concern and I would like it resolved too, but at the same time I can see it being beneficial for many people that this doesn't get fixed.

Changed in yaru-theme (Ubuntu):
importance: Undecided → Wishlist
Revision history for this message
Carlos Pita (carlosjosepita) wrote :

Thanks for you careful considerations, Daniel.

> Because you say "there is no way to pick the other shell theme" which is simply untrue.

I'm not quite following you here, what I mean is that when you are in Yaru shell theme you can't pick Adwaita shell theme (that is, the other theme in the "Adwaita/Yaru" pair mentioned in the subject) and viceversa. Please feel free to reword it in the way you believe will cause less confusion because I'm sincerely not understanding.

> It's less confusing for them to refer to the default theme as just "Default".

Don't forget that there still would be a Default entry. Under Ubuntu you would get:

Default (meaning Yaru)
...
Adwaita
....
Yaru

Under vanilla:

Default (meaning Adwaita)
...
Adwaita
....
Yaru

Although my minimal proposal was to implement only the second case, because:

1) Users opting for vanilla desktop are probably less prone to confusion here.

2) They will be unable to use Yaru, which I consider worse than Ubuntu session users unable to use Adwaita. In fact, I want to use a vanilla session but I like Yaru and would like to achieve widget/shell consistency. It's a bit ridiculous being unable to use Yaru in Ubuntu :)

3) You only have to patch a package. Better, the less "upstreamy" one, yaru-theme.

summary: - Switch Adwaita/Yaru shell themes under vanilla/ubuntu gnome sessions
+ The default shell theme is titled Default instead of its real name
+ 'Yaru' or 'Adwaita'
Changed in yaru-theme (Ubuntu):
status: New → Triaged
Revision history for this message
Carlos Pita (carlosjosepita) wrote : Re: The default shell theme is titled Default instead of its real name 'Yaru' or 'Adwaita'

Oh, I now see why I was not following you. I don't think the "Default" name to be a problem, quite to the contrary. What I don't like is the inability to select the other (the non-default) theme. Even if you renamed Default to Yaru, that won't make Adwaita appear. And if in a vanilla session you renamed Default to Adwaita, that won't make Yaru appear either. The only way for a shell theme to appear in Tweaks with a name that is not "Default" is to be listed under /usr/share/themes/<Theme>/gnome-shell (OTOH, to be "Default" it has to live under /usr/share/gnome-shell/theme).

What I did point out is that by linking "the other theme" from /usr/share/themes you would get two entries for the same theme, the Default one and the Yaru/Adwaita one. Now, if you wanted to remove Default and at the same time introduce Yaru and Adwaita, I think that would be more difficult to achieve that my simple fix. But, in any case, now the description is not accurate to me :)

Revision history for this message
Carlos Pita (carlosjosepita) wrote :

Just to make it crystal clear. I now enter my Ubuntu session, go to Tweaks and get this shell themes list:

(1)
Default
Materia
Materia-compact
Materia-dark
Materia-dark-compact
Materia-light
Materia-light-compact

Nevertheless, Adwaita shell theme IS installed in my computer. Hence I would like to see:

(2)
Default
Adwaita <-------
Materia
Materia-compact
Materia-dark
Materia-dark-compact
Materia-light
Materia-light-compact

If, instead, I enter my vanilla Gnome session I again get (1) above but I would like to see:

(3)
Default
Materia
Materia-compact
Materia-dark
Materia-dark-compact
Materia-light
Materia-light-compact
Yaru <---------

Now, creating the symlinks I proposed, I won't get (2) and (3) but the quite similar (4):

(4)
Default
Adwaita <------------
Materia
Materia-compact
Materia-dark
Materia-dark-compact
Materia-light
Materia-light-compact
Yaru <-----------

Under both types of session there would be redundancy, since sometimes Default means Adwaita and sometimes it means Yaru, but I see that as a lesser problem than being unable to select "the other" theme.

Finally, a minimal proposal is to create just one of the symlinks to get Yaru into the list but not Adwaita, so only yaru-theme has to be patched.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Sorry, I was convinced it was possible to select Adwaita. But it seems my memory was confused with either selecting the Applications theme or because I build gnome-shell from source every day and see the Adwaita shell theme every day there.

summary: - The default shell theme is titled Default instead of its real name
- 'Yaru' or 'Adwaita'
+ Can't switch between Yaru and Adwaita shell themes, even when User
+ Themes is enabled
Changed in yaru-theme (Ubuntu):
importance: Wishlist → Medium
Revision history for this message
Carlo Lobrano (c-lobrano) wrote :

> Finally, a minimal proposal is to create just one of the symlinks to get Yaru into the list but not Adwaita, so only yaru-theme has to be patched.

This has been done in development version starting from PR https://github.com/ubuntu/yaru/pull/1578

Changed in yaru-theme (Ubuntu):
status: Triaged → Fix Committed
Changed in yaru-theme (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.