[Pkg-xfce-devel] Bug#526009: Bug#526009: xfce4-utils: sessions started with startxfce4 lose hal/dbus functionality
Scott Barker
scott at mostlylinux.ca
Tue Sep 1 22:48:43 UTC 2009
On 09/01/09 15:41, Yves-Alexis Perez wrote:
> Thanks for the summary, it'll definitely be quite helpful for users. It
> might be a good idea to push that to the xfce4{-session} README.Debian.
> Would you license it to GPL or something? :)
Please feel free to include it in the README.Debian file if you think it
will be helpful.
>> 1) The "Debian" way:
>>
>> Set xfce4-session as the default session manager for X (with
>> update-alternatives) and use "startx" at the console to start xfce4.
>> This will provide a minimal xfce4 session. For a more complete xfce4
>> session, the user can put "exec /usr/bin/startxfce4" in $HOME/.xsession,
>> so that various environment variables are set correctly for xfce4.
>
> And this is the preferred way :)
>> 2) The "xfce4" way:
>>
>> Put "exec ck-launch-session /etc/xdg/xfce4/xinitrc" in
>> $HOME/.config/xfce4/xinitrc, make $HOME/.config/xfce4/xinitrc
>> executable, and use "startxfce4" to start xfce4. This will ensure the
>> various environment variables are set correctly for xfce4, and will also
>> ensure that a correct consolekit session is started.
>
> In fact, even method 1) will enable that, since startxfce4 will
> run /etc/xdg/xfce4/xinitrc (or $HOME/.config/xfce4/xinitrc if it
> exists)
True, but only if "exec /usr/bin/startxfce4" is put into
$HOME/.xsession. Otherwise, it appears that the Debian "startx" process
just runs /usr/bin/x-session-manager, which for xfce4 is xfce4-session,
not startxfce4. (I determined this by looking at
/etc/X11/Xsession.d/50x11-common_determine-startup).
>> For either method, libpam-ck-connector can be installed or not
>> installed, it doesn't matter.
>>
>> For method 2), perhaps one day the xfce4 developers will include
>> ck-launch-session in the startxfce4 script (as they did for dbus), and
>> then the xinitrc customization will no longer be necessary.
>
> It's already not necessary, imho.
I have confirmed that if the user just runs "startxfce4" without making
any other customizations to the xfce4 or X11 startup process,
ck-launch-session does not get used, and thus the original problem remains.
>> For users of gdm/kdm/xdm, I do not know if it is possible to get more
>> than the minimal xfce4 session - it will depend if those display
>> managers call startxfce4 and/or set the correct environment variables.
>> As I don't use gdm/kdm/xdm, I cannot test that.
>
> Then don't worry, they already call (gdm at least does) startxfce4.
I note that gdm uses the .desktop files in /usr/share/xsessions to
determine what session managers are available. If startx used a similar
mechanism, then using $HOME/.xsession to spawn startxfce4 would become
unnecessary too.
--
Scott Barker scott at mostlylinux.ca
Linux Consultant http://www.mostlylinux.ca/scott
More information about the Pkg-xfce-devel
mailing list