Windowmanager
Wenn einem KDE, GNOME, CDE und FVWM alle nicht gefallen, kann man auch seinen eigenen Windowmanager auswählen. Das geht allerdings nicht über das Menü beim Einloggen, sondern man muss es in der Datei .xinitrc selbst eintragen und dann beim Login als Session "FVWM" waehlen. Die Datei koennte folgendermassen aussehen:
# make sure we're run by the bash
if [ x"$[[BASH_VERSION]]" = x"" ]
then
exec /usr/bin/env bash $0
fi
# Alle Ausgaben mitloggen -- das kann auch später nützlich sein,
# um zu gucken, was Programme, die nicht aus einem Terminal heraus
# gestartet werden, ausgeben.
#
exec 1>> "$HOME/.x11_log" 2>&1
echo "[`date`] X11-Sitzung auf `hostname` gestartet ..."
# bash loginscripte sourcen
for S in $HOME/.bash_profile $HOME/.bash_login $HOME/.profile
do
[ -f $S ] && . $S
done
# dont beep
xset b off
# kill the annoying caps lock key
xmodmap -e "remove lock = [[Caps_Lock]]"
# Abhängig vom Betriebssystem sollen verschiedene Windowmanager
# ausgewählt werden.
#
case `uname` in
[[SunOS]]) programs="fluxbox icewm xterm" ;;
Linux) programs="windowmaker fluxbox icewm xterm" ;;
*) programs="xterm" ;;
esac
# Start ssh agent (idea stolen from [[OpenBSD]])
id1=$HOME/.ssh/identity
id2=$HOME/.ssh/id_dsa
id3=$HOME/.ssh/id_rsa
if [ -x /usr/pkg/2006Q2/bin/ssh-askpass ] && [ -f $id1 -o -f $id2 -o -f $id3 ];
then
eval `ssh-agent -s`
[[SSH_ASKPASS]]=/usr/pkg/2006Q2/bin/ssh-askpass ssh-add < /dev/null
fi
# Das erste Programm aus der oben gewählten Liste ausführen.
success=0
pid=0
for p in $programs
do
if type "$p" > /dev/null
then
echo "Starting $p..."
"$p" &
pid=$!
# wait some time and check if its still alive
sleep 1
pgrep "$p" | grep $pid > /dev/null && { success=1; break; }
{| class="wikitable"
!
|}
echo "$p failed."
else
echo "$p is not found in $PATH." 1>&2
fi
done
if [ $success -eq 1 ]
then
# wait for windowmanager to exit
wait $pid
else
msg='Kein Programm zum Ausfuehren gefunden. :('
echo "$msg" 1>&2
xmessage -center -timeout 15 "$msg"
fi
if [ "$[[SSH_AGENT_PID]]" ]
then
ssh-add -D < /dev/null
eval `ssh-agent -s -k`
fi
: