[Bug 1435492] Re: Xsession.d script assumes that /sbin is in $PATH

Gunnar Hjalmarsson 1435492 at bugs.launchpad.net
Fri Mar 27 15:28:20 UTC 2015


I have attached a new diff file for upstart together with a patch which
shows the delta. This takes care of the potiential issue as far as
upstart is concerned.

However...

@Johannes: /etc/X11/Xsession.d/99cadence-session-start does not belong
to the upstart package, so this does not really fix your specific
situation. Actually I don't see the cadence package anywhere in the
Ubuntu archive. To fix it for yourself, you may want to edit that file,
so it uses the full path when calling upstart. Preventing ~/.profile
from sourcing ~/.bashrc is another way. (Any manual edit of /usr/sbin
/lightdm-session will get lost at the next update of the lightdm
package.)

** Patch added: "upstart-diff-file.patch"
   https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/1435492/+attachment/4357899/+files/upstart-diff-file.patch

** Changed in: upstart (Ubuntu)
       Status: Triaged => In Progress

** Changed in: upstart (Ubuntu)
     Assignee: (unassigned) => Gunnar Hjalmarsson (gunnarhj)

** Changed in: upstart (Ubuntu)
   Importance: Undecided => Medium

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1435492

Title:
  Xsession.d script assumes that /sbin is in $PATH

Status in upstart package in Ubuntu:
  In Progress

Bug description:
  According to changelog.Debian from version 1.12.3 on lightdm is using
  "bash for the session to improve error handling" to fix #678421.

  Unfortunately this can break the session start up when the user sets
  the $PATH environment variable in ~/.bashrc. Then /sbin might no
  longer be in $PATH and /etc/X11/Xsession.d/99cadence-session-start
  won't find /sbin/upstart when calling "upstart --user"

  The mechanism is the following:

  1. /usr/sbin/lightdm-session lines 37-42 source among others
  ~/.profile

  2. The usual .profile of /etc/skel will source ~/.bashrc if the shell
  is Bash (and not /bin/sh)

  3. ~/.bashrc (maybe) is setting $PATH without /sbin

  4. upstart --user call fails as /sbin is not in $PATH

  Suggested solutions:

  * switch back to /bin/sh

  * make sure that /sbin is in $PATH

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/upstart/+bug/1435492/+subscriptions



More information about the Ubuntu-sponsors mailing list