summaryrefslogtreecommitdiff
path: root/net-misc/tigervnc/files/tigervnc-1.12.0-xsession-path.patch
blob: bfcf6ceaef16eaf854605e5ceeec556d3561a1c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Add more possible paths for Xsession, depending on which display manager is
installed.  We need an Xsession that executes its command line parameters, so
leave xinit last.

See also https://bugs.gentoo.org/746227

--- a/unix/vncserver/vncserver.in
+++ b/unix/vncserver/vncserver.in
@@ -437,11 +437,14 @@
 	die "$prog: couldn't find \"$cmd\" on your PATH.\n";
     }
 
-    foreach $cmd ("/etc/X11/xinit/Xsession", "/etc/X11/Xsession") {
-        if (-x "$cmd") {
-            $Xsession = $cmd;
-            last;
-        }
+    $Xsession=$ENV{TIGERVNC_XSESSION_FILE};
+    if (not defined $Xsession) {
+	foreach $cmd ("/usr/share/sddm/scripts/Xsession", "/etc/gdm/Xsession", "/etc/lightdm/Xsession", "/usr/share/slim/Xsession", "/etc/X11/Sessions/Xsession", "/etc/X11/xinit/Xsession", "/etc/X11/Xsession") {
+	    if (-x "$cmd") {
+		$Xsession = $cmd;
+		last;
+	    }
+	}
     }
     if (not defined $Xsession) {
         die "$prog: Couldn't find suitable Xsession.\n";