Themes and font settings don’t apply to X apps running in Wayland (g-s-d 3.33.90 → 3.33.92 regression)

Bug #1843107 reported by Anders Kaseorg on 2019-09-07
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mutter
Fix Released
Unknown
gnome-settings-daemon (Ubuntu)
Undecided
Unassigned
mutter (Ubuntu)
Undecided
Iain Lane

Bug Description

After upgrading gnome-settings-daemon from 3.33.90-1ubuntu2 to 3.33.92-1ubuntu1, my GTK theme and font settings selected with gnome-tweaks are no longer applied to X11 applications when running in a Wayland session (I tried Firefox and Emacs). This seems to be because gsd-xsettings is not running.

Known workarounds:
• downgrade gnome-settings-daemon to 3.33.90-1ubuntu2 and reboot; or
• use Xorg instead of Wayland; or
• manually start /usr/lib/gnome-settings-daemon/gsd-xsettings.

ProblemType: Bug
DistroRelease: Ubuntu 19.10
Package: gnome-settings-daemon 3.33.92-1ubuntu1
Uname: Linux 5.2.11-050211-lowlatency x86_64
NonfreeKernelModules: openafs
ApportVersion: 2.20.11-0ubuntu7
Architecture: amd64
Date: Fri Sep 6 17:24:02 2019
InstallationDate: Installed on 2016-02-19 (1295 days ago)
InstallationMedia: Ubuntu-GNOME 16.04 LTS "Xenial Xerus" - Alpha amd64 (20160218)
SourcePackage: gnome-settings-daemon
UpgradeStatus: Upgraded to eoan on 2019-06-23 (75 days ago)

Anders Kaseorg (andersk) wrote :
Iain Lane (laney) wrote :

Thanks Anders. I'm hoping this is fixed by the patches from https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/680 - if you're able to build your own gnome-shell package, maybe you could try those commits? Otherwise, we should get them in the distro shortly (this week).

Anders Kaseorg (andersk) wrote :

Hmm, I upgraded mutter from eoan-proposed and gnome-shell from eoan-proposed plus those three commits (https://launchpad.net/~andersk/+archive/ubuntu/ppa, if you want to check my work), but it didn’t resolve the problem. Even after a reboot, gsd-xsettings doesn’t start and X11 applications don’t get themed.

$ dpkg-query -W gir1.2-mutter-5 libmutter-5-0 mutter mutter-common gnome-shell gnome-shell-common
gir1.2-mutter-5:amd64 3.33.92-1ubuntu1
gnome-shell 3.33.92-1ubuntu1andersk1
gnome-shell-common 3.33.92-1ubuntu1andersk1
libmutter-5-0:amd64 3.33.92-1ubuntu1
mutter 3.33.92-1ubuntu1
mutter-common 3.33.92-1ubuntu1

$ strings /usr/lib/gnome-shell/libgnome-shell.so | grep x11-display
        global.display.connect('x11-display-opened', () => {
        global.display.connect('x11-display-closing', () => {

$ systemctl --user status gnome-session-x11-services.target gsd-xsettings.target gsd-xsettings.service
● gnome-session-x11-services.target - GNOME session X11 services
   Loaded: loaded (/usr/lib/systemd/user/gnome-session-x11-services.target; static; vendor preset: enabled)
   Active: inactive (dead)

● gsd-xsettings.target - GNOME XSettings
   Loaded: loaded (/usr/lib/systemd/user/gsd-xsettings.target; static; vendor preset: enabled)
   Active: inactive (dead)

● gsd-xsettings.service - GNOME XSettings
   Loaded: loaded (/usr/lib/systemd/user/gsd-xsettings.service; static; vendor preset: enabled)
   Active: inactive (dead)

Anders Kaseorg (andersk) wrote :

By adding some debugging output to mutter and gnome-shell I verified that mutter emits the x11-display-opened signal before gnome-shell is able to connect a handler for it, and the handler never runs.

(Possibly things would be different in the experimental autostart-xwayland mode, but the whole system froze when I tried to log in with that enabled.)

Anders Kaseorg (andersk) wrote :

This is fixed by https://gitlab.gnome.org/GNOME/mutter/merge_requests/792 (I tested 850ef518795dcc20d3b9a4f661f70ff8d0ddacb2).

Changed in mutter:
status: Unknown → New
Changed in mutter:
status: New → Fix Released
Iain Lane (laney) on 2019-09-13
Changed in gnome-settings-daemon (Ubuntu):
status: New → Invalid
Changed in mutter (Ubuntu):
status: New → In Progress
assignee: nobody → Iain Lane (laney)
Iain Lane (laney) wrote :

Taken that patch, thanks!

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mutter - 3.34.0-2ubuntu1

---------------
mutter (3.34.0-2ubuntu1) eoan; urgency=medium

  * Merge with debian. Remaining changes:
    + debian/control:
      - Update VCS flags to point to launchpad
      - Update maintainer to ubuntu
    + debian/gbp.conf: update branch to point to ubuntu/master
    + debian/patches/x11-Add-support-for-fractional-scaling-using-Randr.patch:
      - X11: Add support for fractional scaling using Randr

mutter (3.34.0-2) experimental; urgency=medium

  * d/p/core-Split-x11-display-initialization-in-2-signals.patch: Cherry-pick.
    Fixes starting up of gsd-xsettings on Wayland. (LP: #1843107)

 -- Iain Lane <email address hidden> Fri, 13 Sep 2019 11:13:49 +0100

Changed in mutter (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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