Red Hat Bugzilla – Bug 447910
gdm does not run ~/.xsession
Last modified: 2015-01-14 18:21:21 EST
Description of problem:
I want to use my own ~/.xsession. After upgrading from F8 to F9, gdm no longer
runs my ~/.xsession. I have added "set -x" to /etc/X11/xinit/Xsession, and found
out that gdm starts Xsession with first argument of "gnome-session"
(even though I have "Session=custom" in the [Desktop] section of ~/.dmrc).
Changing the DISPLAY_MANAGER variable to "XDM" in /etc/sysconfig/desktop
(thus running xdm instead of gdm) fixes the problem).
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Create a custom ~/.xsession, for example with the text
echo "Custom .xsession has been started" >&2
2. Run "chmod a+rx ~/.xsession"
3. Start gdm and log in
the gnome session is started, ~/.xsession is not executed at all.
only xterm should be started, the message should be visible in
~/.xsession-errors, and the environment variable XSESSION_HAS_BEEN_RUN should be set
inside the xterm.
This worked in F8, so I consider this a regression. Moreover, gdm greeter does
not have any session selector anymore, and apparently the configuration options
in /etc/gdm/custom.conf (documented at
http://www.gnome.org/projects/gdm/docs/2.20/configuration.html) do not work on
2.22 anymore (I have tried to add "IncludeAll=false" and
"ShowXtermFailsafeSession=true" in the [greeter] section of custom.conf without
success; custom.conf is being accessed according to its atime, but these options
have no effect).
Install the xorg-x11-xinit-session package and you should be good to go.
*** This bug has been marked as a duplicate of 142260 ***
This has helped, thanks. However - from the usability point of view: shouldn't
the language and session selector be visible always, not only after the user
types its user name?
Well, the settings are specific to the user selected.
If we showed them before hand, then on multi-user setups, one user could change
the session, walk away, and another user could get logged into the wrong session
or in the wrong language.
We also want the selectors to show up with the user's preferred choice
automatically. We don't know that information until the user gets selected.
I don't need them being active, just visible (and disabled until user types his
name). Altough maybe switching the gdm language from the menu even before login
could be usable in the multi-user environment. After user types his name, it can
be changed to his defaults.
Wow! I just installed Fedora 9, and suddenly my .xsession, which has been
working since I started using xdm rougly 16 years ago (!), stopped working. I
see in this bug (which is, by the way, an unrelated bug from 4 years ago), in
comment 1, the solution.
But really, give me a break - why do we need this bizarre solution anyway???
Where's the logic of ignoring people's .xsession when they explicitly put that
file in? After all, it's not like someone will accidentally create this file?
I think this is an major error in judgement from Fedora, and one that needs to
be reversed. No amount of documentation in the release notes (which I obviously
missed...) can "explain" this bug away. There's simply no reason to have this
bug, and it can be easily fixed (just do what that new package does - always).
I think this bug definitely needs to be reopened!
I'm even more surprised now that I see what the xorg-x11-xinit-session package does. I thought it will change gdm's default behavior or something, but it doesn't. Basically, all it does is to add a "User Script" option in the login script, in addition to the usual "KDE" and "Gnome" options. The user needs to explicitly choose this option to run his .xsession.
If this is the case, why not install this "package" (a single file) always, by default - what does it hurt?