X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=data%2Fxsession%2Fopenbox-gnome-session.in;h=86b7d06f266e7c5d5dbc08a47b760c42d8bee8dc;hb=c5155e7422668f6a176c15f2cecac6693fcf3134;hp=c2bc9399401b831ed6aa467991fbd000ec7cb982;hpb=f58ece609523b5cc4c825c4af185e5a6fdd00210;p=chaz%2Fopenbox diff --git a/data/xsession/openbox-gnome-session.in b/data/xsession/openbox-gnome-session.in index c2bc9399..86b7d06f 100644 --- a/data/xsession/openbox-gnome-session.in +++ b/data/xsession/openbox-gnome-session.in @@ -1,5 +1,38 @@ #!/bin/sh +if test -n "$1"; then + echo "Syntax: openbox-gnome-session" + echo + echo "See the openbox-gnome-session(1) manpage for help." + exit +fi + +# Clean up after GDM +xprop -root -remove _NET_NUMBER_OF_DESKTOPS \ + -remove _NET_DESKTOP_NAMES \ + -remove _NET_CURRENT_DESKTOP 2> /dev/null + +VER=$(gnome-session --version 2>/dev/null | \ + sed -e 's/[^0-9.]*\([0-9.]\+\)/\1/') + +MAJOR=$(echo $VER | cut -d . -f 1) +MINOR=$(echo $VER | cut -d . -f 2) + # Run GNOME with Openbox as its window manager export WINDOW_MANAGER="@bindir@/openbox" -exec gnome-session "$@" + +if test $MAJOR -lt 2 || (test $MAJOR = 2 && test $MINOR -le 22); then + # old gnome-session allows multiple sessions to be saved + exec gnome-session --choose-session=openbox-session "$@" +else + # make sure the gnome-wm script is being used + gconftool-2 -t string \ + -s /desktop/gnome/session/required_components/windowmanager "gnome-wm" \ + 2> /dev/null + + # new gnome-session does not allow multiple sessions + exec gnome-session "$@" +fi + + +