Describe the bug
I believe that the version of Mutter that Gala relies on does not include a patch that changes how the touchscreen display information is retrieved, resulting in an error like this: GLib-GIO-ERROR **: 23:00:24.681: Settings schema 'org.gnome.desktop.peripherals.touchscreen' does not contain a key named 'display'
I've experienced this myself on my Thinkpad T490 that has a touchscreen and found people from the Gentoo and RedHat/Fedora communities experiencing similar issues here and here.
To Reproduce
Steps to reproduce the behavior:
Expected behavior
Gala not to crash
Screenshots
N/A
Additional context
I'm not sure what context to add since this is my first installation of NixOS on actual hardware.
Notify maintainers
@worldofpeace
Metadata
- system: `"x86_64-linux"`
- host os: `Linux 5.4.68, NixOS, 20.03.3087.b4db68ff563 (Markhor)`
- multi-user?: `yes`
- sandbox: `yes`
- version: `nix-env (Nix) 2.3.6`
- nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`
Maintainer information:
Affected packages (that I know of)
- pantheon
- gala
- mutter
I realize this is hardware specific and you might not have access to anything with a touchscreen to verify any fixes are working, so I'm happy to do what I can to help out here. Feel free to contact me directly if that's something that would be helpful.
It was changed from display -> output https://gitlab.gnome.org/GNOME/mutter/blob/gnome-3-28/src/backends/meta-input-settings.c#L827 https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/133. This was an issue in fedora https://github.com/elementary/gala/issues/517 and I ported the changes to the 3.28 mutter expression https://github.com/NixOS/nixpkgs/blob/release-20.03/pkgs/desktops/gnome-3/core/mutter/3.28.nix#L26. You definitely have those commits, so maybe I missed something or did it incorrectly.
It's also very likely that I'm not reading the output of journalctl correctly 馃槄. I'm uploading the output of the journalctl for one of these crashed sessions after a reboot as well as my nix configuration. It's probably a lot to throw at you, but hopefully minimal enough that it's not too much noise. If there's something that'll be more helpful I'm happy to do that.
On another look at the output it seems there's a number of things going wrong with failed asserts including the original missing 'display' key. I'm really out of my depth as I've never debugged the Pantheon or Gnome stacks before. Like 1581 should be the missing 'display' key, I'm hesitant to say more or I might point you in the wrong direction.
Here's my NixOS configuration. It's pretty close to vanilla so hopefully not too much.
configuration.nix.txt
hardware-configuration.nix.txt
Let me know how else I can help and I'll do my best 馃槂
I believe you found the correct error, but it's coming from gnome-settings-daemon's gsd-wacom.
Here's another thing I should mention, on 20.09 this is probably not an issue. We don't use mutter 3.28 anymore, but mutter 3.34. 20.03 is not EOL yet, but it will be once 20.09 is released which is very soon.
Ahh, so it seems I ported to an API that didn't exist for me :grin: This commit https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/commit/bbeb97900cbac8438341a92f11c6cc8340c014f2 isn't going to be in the fork of g-s-d we use in pantheon 3.30.2
Ah, so I found a bug but attributed it to the wrong software 馃槅. I'm glad you have an understanding of this. Does this mean that g-s-d needs a similar patch and the issue will be more-or-less resolved for 20.03? I'm new to the Nix community so I don't really have perspective on what the right course of action would be, especially with a new release coming out so soon.
Yeah, if I backport this PR to g-s-d for pantheon https://gitlab.gnome.org/GNOME/gnome-settings-daemon/-/merge_requests/37 I think everything should work (since we already backported the stuff for mutter, just not g-s-d)
If you do backport that PR, I'd love to give it a go and see if it works if that would be helpful - I might need some direction on applying those changes to a Nix system.
Also, @worldofpeace, you're absolutely right that 20.09 doesn't have this issue.
Sorry about this, I don't think I'll have the time within the EOL period to fix this for 20.03 :frowning: It is fixed in 20.09 so I will close this
Makes a lot of sense, thanks for the thoughtful responses!
Most helpful comment
Sorry about this, I don't think I'll have the time within the EOL period to fix this for 20.03 :frowning: It is fixed in 20.09 so I will close this