summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2018-04-27 19:03:19 +0200
committerJan Tojnar <jtojnar@gmail.com>2018-05-16 16:25:21 +0200
commit3bfa8563d10e356f085f122d8982ccd13647ff02 (patch)
treef6b60f766a7b7bd64526afbfec572a22bfe92b24 /pkgs/desktops
parent6f23e142cbaaf38a3f66104655785f212bcb6200 (diff)
downloadnixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.tar
nixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.tar.gz
nixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.tar.bz2
nixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.tar.lz
nixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.tar.xz
nixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.tar.zst
nixlib-3bfa8563d10e356f085f122d8982ccd13647ff02.zip
gnome3.gdm: fix wayland detection
Apparently, wayland session were not used at all until now.
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome-3/core/gdm/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/gdm/fix-paths.patch11
2 files changed, 13 insertions, 2 deletions
diff --git a/pkgs/desktops/gnome-3/core/gdm/default.nix b/pkgs/desktops/gnome-3/core/gdm/default.nix
index 88fed09de382..247d3566d6f3 100644
--- a/pkgs/desktops/gnome-3/core/gdm/default.nix
+++ b/pkgs/desktops/gnome-3/core/gdm/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, substituteAll, pkgconfig, glib, itstool, libxml2, xorg, dbus
 , intltool, accountsservice, libX11, gnome3, systemd, autoreconfHook
 , gtk, libcanberra-gtk3, pam, libtool, gobjectIntrospection, plymouth
-, librsvg, coreutils }:
+, librsvg, coreutils, xwayland }:
 
 stdenv.mkDerivation rec {
   name = "gdm-${version}";
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {
   patches = [
     (substituteAll {
       src = ./fix-paths.patch;
-      inherit coreutils plymouth;
+      inherit coreutils plymouth xwayland;
     })
     ./sessions_dir.patch
     ./gdm-x-session_extra_args.patch
diff --git a/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch b/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch
index d10283d40eae..adac2dc913cc 100644
--- a/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch
+++ b/pkgs/desktops/gnome-3/core/gdm/fix-paths.patch
@@ -1,3 +1,14 @@
+--- a/daemon/gdm-local-display-factory.c
++++ b/daemon/gdm-local-display-factory.c
+@@ -450,7 +450,7 @@
+ #ifdef ENABLE_WAYLAND_SUPPORT
+                         gboolean wayland_enabled = FALSE;
+                         if (gdm_settings_direct_get_boolean (GDM_KEY_WAYLAND_ENABLE, &wayland_enabled)) {
+-                                if (wayland_enabled && g_file_test ("/usr/bin/Xwayland", G_FILE_TEST_IS_EXECUTABLE) ) {
++                                if (wayland_enabled && g_file_test ("@xwayland@/bin/Xwayland", G_FILE_TEST_IS_EXECUTABLE) ) {
+                                         session_type = "wayland";
+                                 }
+                         }
 --- a/daemon/gdm-manager.c
 +++ b/daemon/gdm-manager.c
 @@ -147,7 +147,7 @@