- run ck-xinit-session for all sessions where the xdg cookie isn't already

set (#452156, patch from Patrice Dumas)
- add which Requires (#413041, patch from Patrice Dumas)
This commit is contained in:
Adam Tkac 2009-02-25 09:57:22 +00:00
parent b71c79e37e
commit c92ca0017c
3 changed files with 17 additions and 10 deletions

View File

@ -40,7 +40,7 @@ SWITCHDESKPATH=/usr/share/switchdesk
# this script. # this script.
XCLIENTS_D=/etc/X11/xinit/Xclients.d XCLIENTS_D=/etc/X11/xinit/Xclients.d
if [ -d "$XCLIENTS_D" -a "$#" -eq 1 -a -x "$XCLIENTS_D/Xclients.$1.sh" ]; then if [ -d "$XCLIENTS_D" -a "$#" -eq 1 -a -x "$XCLIENTS_D/Xclients.$1.sh" ]; then
exec -l $SHELL -c "$SSH_AGENT $XCLIENTS_D/Xclients.$1.sh" exec -l $SHELL -c "$CK_XINIT_SESSION $SSH_AGENT $XCLIENTS_D/Xclients.$1.sh"
else else
# now, we see if xdm/gdm/kdm has asked for a specific environment # now, we see if xdm/gdm/kdm has asked for a specific environment
case $# in case $# in
@ -60,18 +60,18 @@ case $# in
exec /bin/sh -c "exec -l $SHELL -c \"gnome-session\"" exec /bin/sh -c "exec -l $SHELL -c \"gnome-session\""
;; ;;
kde|kde1|kde2) kde|kde1|kde2)
exec $SSH_AGENT /bin/sh -c "exec -l $SHELL -c \"startkde\"" exec $CK_XINIT_SESSION $SSH_AGENT /bin/sh -c "exec -l $SHELL -c \"startkde\""
;; ;;
twm) twm)
# fall back to twm # fall back to twm
exec $SSH_AGENT /bin/sh -c "exec -l $SHELL -c \"twm\"" exec $CK_XINIT_SESSION $SSH_AGENT /bin/sh -c "exec -l $SHELL -c \"twm\""
;; ;;
*) *)
# GDM provies either a command line as the first argument or # GDM provies either a command line as the first argument or
# provides 'failsafe', 'default' or 'custom'. KDM will do the # provides 'failsafe', 'default' or 'custom'. KDM will do the
# same at some point # same at some point
if [ "$1" != "default" -a "$1" != "custom" ]; then if [ "$1" != "default" -a "$1" != "custom" ]; then
exec $SSH_AGENT /bin/sh -c "exec -l $SHELL -c \"$1\"" exec $CK_XINIT_SESSION $SSH_AGENT /bin/sh -c "exec -l $SHELL -c \"$1\""
fi fi
;; ;;
esac esac
@ -80,11 +80,11 @@ fi
# otherwise, take default action # otherwise, take default action
if [ -x "$HOME/.xsession" ]; then if [ -x "$HOME/.xsession" ]; then
exec -l $SHELL -c "$SSH_AGENT $HOME/.xsession" exec -l $SHELL -c "$CK_XINIT_SESSION $SSH_AGENT $HOME/.xsession"
elif [ -x "$HOME/.Xclients" ]; then elif [ -x "$HOME/.Xclients" ]; then
exec -l $SHELL -c "$SSH_AGENT $HOME/.Xclients" exec -l $SHELL -c "$CK_XINIT_SESSION $SSH_AGENT $HOME/.Xclients"
elif [ -x /etc/X11/xinit/Xclients ]; then elif [ -x /etc/X11/xinit/Xclients ]; then
exec -l $SHELL -c "$SSH_AGENT /etc/X11/xinit/Xclients" exec -l $SHELL -c "$CK_XINIT_SESSION $SSH_AGENT /etc/X11/xinit/Xclients"
else else
# should never get here; failsafe fallback # should never get here; failsafe fallback
exec -l $SHELL -c "xsm" exec -l $SHELL -c "xsm"

View File

@ -65,4 +65,6 @@ if [ -x /usr/bin/ssh-agent -a -z "$SSH_AGENT_PID" ]; then
fi fi
CK_XINIT_SESSION= CK_XINIT_SESSION=
[ -x /usr/bin/ck-xinit-session ] && CK_XINIT_SESSION="/usr/bin/ck-xinit-session" if [ -x /usr/bin/ck-xinit-session -a -z "$XDG_SESSION_COOKIE" ]; then
CK_XINIT_SESSION="/usr/bin/ck-xinit-session"
fi

View File

@ -3,7 +3,7 @@
Summary: X.Org X11 X Window System xinit startup scripts Summary: X.Org X11 X Window System xinit startup scripts
Name: xorg-x11-%{pkgname} Name: xorg-x11-%{pkgname}
Version: 1.0.9 Version: 1.0.9
Release: 4%{?dist} Release: 5%{?dist}
License: MIT License: MIT
Group: User Interface/X Group: User Interface/X
URL: http://www.x.org URL: http://www.x.org
@ -39,7 +39,7 @@ Requires: xauth
Requires: coreutils Requires: coreutils
Requires: xorg-x11-server-utils Requires: xorg-x11-server-utils
Requires: ConsoleKit-x11 Requires: ConsoleKit-x11
Requires: ConsoleKit-libs Requires: which
# NOTE: Most of the xinitrc scripts/config files are now in xorg-x11-xinit, # NOTE: Most of the xinitrc scripts/config files are now in xorg-x11-xinit,
# so the xinitrc package became unnecessary. The xdm configs/scripts move # so the xinitrc package became unnecessary. The xdm configs/scripts move
@ -129,6 +129,11 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/xsessions/xinit-compat.desktop %{_datadir}/xsessions/xinit-compat.desktop
%changelog %changelog
* Wed Feb 25 2009 Adam Tkac <atkac redhat com> 1.0.9-5
- run ck-xinit-session for all sessions where the xdg cookie isn't already
set (#452156, patch from Patrice Dumas)
- add which Requires (#413041, patch from Patrice Dumas)
* Mon Aug 25 2008 Matthias Clasen <mclasen@redhat.com> 1.0.9-4 * Mon Aug 25 2008 Matthias Clasen <mclasen@redhat.com> 1.0.9-4
- Make the gnome session actually take the gnome case in the switch (#458694) - Make the gnome session actually take the gnome case in the switch (#458694)
- Update patches - Update patches