summaryrefslogtreecommitdiff
path: root/debian/patches/01_set-default-path.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/01_set-default-path.patch')
-rw-r--r--debian/patches/01_set-default-path.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/debian/patches/01_set-default-path.patch b/debian/patches/01_set-default-path.patch
new file mode 100644
index 0000000..1a3cfdf
--- /dev/null
+++ b/debian/patches/01_set-default-path.patch
@@ -0,0 +1,32 @@
+Author: Yves-Alexis Perez <corsac@debian.org>
+Author: Lionel Le Folgoc <mrpouit@gmail.com>
+Bug: https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/798277
+Description: Fix default PATH environment variable
+--- a/src/seat.c
++++ b/src/seat.c
+@@ -274,7 +274,10 @@ run_script (Seat *seat, DisplayServer *d
+ process_set_env (script, "PATH", g_getenv ("PATH"));
+ }
+ else
+- process_set_env (script, "PATH", "/usr/local/bin:/usr/bin:/bin");
++ if (user_get_uid (user) == 0)
++ process_set_env (script, "PATH", "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin");
++ else
++ process_set_env (script, "PATH", "/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games");
+
+ if (user)
+ {
+--- a/src/session-child.c
++++ b/src/session-child.c
+@@ -354,7 +354,10 @@ session_child_run (int argc, char **argv
+ else
+ {
+ /* Set POSIX variables */
+- pam_putenv (pam_handle, "PATH=/usr/local/bin:/usr/bin:/bin");
++ if (user_get_uid (user) == 0)
++ pam_putenv (pam_handle, "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin");
++ else
++ pam_putenv (pam_handle, "PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games");
+ pam_putenv (pam_handle, g_strdup_printf ("USER=%s", username));
+ pam_putenv (pam_handle, g_strdup_printf ("LOGNAME=%s", username));
+ pam_putenv (pam_handle, g_strdup_printf ("HOME=%s", user_get_home_directory (user)));