#!/bin/bash # setwm by Jun Nishii # modified by Daisuke SUZUKI AllWM="gnome-session mate-session-manager kdebase xfce-utils \ WindowMaker enlightenment fvwm2 twm \ afterstep blackbox fluxbox sawfish icewm qvwm lxde-common" ExistWM="" for i in $AllWM do if (rpm -q --quiet $i) ;then ExistWM="$ExistWM $(echo $i | sed -e 's/gnome-session/gnome/' -e 's/mate-session-manager/mate/' -e 's/kdebase/kde/' -e 's/xfce-utils/xfce/' -e 's/lxde-common/lxde/')" fi done ShowUsage() { cat < option: status EOF for i in $ExistWM do echo " $i" done } CheckOption() { if [ $# != 1 ] ; then ShowUsage ${0##*/} exit 1 fi } setWM(){ CMD=$1 case $1 in status) if [ -f $HOME/.wm_style ]; then echo -n "Current Window Mangager is " cat $HOME/.wm_style exit 0 else echo "Window Manager is not set yet." exit -1 fi ;; wmaker*|WindowMaker*) CMD=RunWM WM=WindowMaker ;; gnome*|Gnome*|GNOME*) CMD=gnome-session WM=GNOME ;; mate*|Mate*|MATE*) CMD=mate-session WM=MATE ;; kde*|Kde*|KDE*) CMD=startkde WM=kde ;; xfce*|XFce*|XFCE*) CMD=startxfce4 WM=xfce ;; lxde*|LXDE*) CMD=startlxde WM=lxde ;; icewm*|IceWm*|ICEWM*) CMD=icewm WM=icewm ;; enlight*|Enlight*|e) CMD=enlightenment WM=Enlightenment ;; afterstep*|Afterstep*|AfterStep*) CMD=afterstep WM=AfterStep ;; blackbox*|BlackBox*|BLACKBOX*) CMD=blackbox WM=blackbox ;; fluxbox*|FluxBox*|FLUXKBOX*) CMD=fluxbox WM=fluxbox ;; sawfish*) CMD=sawfish WM=sawfish ;; qvwm*|QVWM*) CMD=qvwm WM=qvwm ;; fvwm2*|FVWM2*) CMD=fvwm2 WM=fvwm2 ;; twm*|TWM*) CMD=twm WM=twm ;; *) echo "Mmmm....Sorry but I don't know the window manager..." exit -1 esac if [ -n "$(which $CMD 2>/dev/null)" ]; then echo "$WM" > $HOME/.wm_style echo "OK, restart X to move to $WM" else echo "Not found $CMD" exit -1 fi } CheckOption $* setWM $1 exit 0