Windowmanager: Unterschied zwischen den Versionen

Aus Fachschaft_Informatik
Zur Navigation springen Zur Suche springen
(Seite erstellt Sheepy)
K (Überarbeitung Tag)
 
(2 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{Vorlage:Überarbeitung}}
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 <tt>.xinitrc</tt> selbst eintragen und dann beim Login als Session "FVWM" waehlen. In der Datei sind folgende Programmschnipsel sinnvoll:
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 <tt>.xinitrc</tt> selbst eintragen und dann beim Login als Session "FVWM" waehlen. In der Datei sind folgende Programmschnipsel sinnvoll:


== Bash statt /bin/sh ==
== Bash statt /bin/sh ==
[[Güterbahnhof]]
 
<pre>
<pre>
# Die /bin/sh enthält viele Fehler und ist nicht so mächtig wie die Bash.
# Die /bin/sh enthält viele Fehler und ist nicht so mächtig wie die Bash.
Zeile 101: Zeile 103:
</pre>
</pre>


[[Kategorie: Rechenzentrum]]
[[Kategorie:Rechenzentrum]]

Aktuelle Version vom 8. Dezember 2015, 15:52 Uhr

Diese Seite muss überarbeitet werden.
Genannte Informationen sind nicht mehr auf dem aktuellsten Stand.

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. In der Datei sind folgende Programmschnipsel sinnvoll:

Bash statt /bin/sh[Bearbeiten]

# Die /bin/sh enthält viele Fehler und ist nicht so mächtig wie die Bash.
[ -n "$BASH_VERSION" ] || exec bash "$0"

Alle Ausgaben mitloggen[Bearbeiten]

# 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-Logindateien einbinden[Bearbeiten]

for s in $HOME/.bash_profile $HOME/.bash_login $HOME/.profile; do
  [ -f $s ] && . $S
done

Ruhe, bitte[Bearbeiten]

# dont beep
xset b off

Tastatur[Bearbeiten]

# kill the annoying caps lock key
xmodmap -e "remove lock = Caps_Lock"

SSH-Schlüssel[Bearbeiten]

 
# 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/bin/ssh-askpass ] && [ -f $id1 -o -f $id2 -o -f $id3 ]; then
  eval `ssh-agent -s`
  SSH_ASKPASS=/usr/pkg/bin/ssh-askpass ssh-add < /dev/null
fi

Windowmanager[Bearbeiten]

# Abhängig vom Betriebssystem sollen verschiedene Windowmanager
# ausgewählt werden.
#
case `uname` in
SunOS)   wms="fluxbox icewm xterm" ;;
Linux)   wms="windowmaker fluxbox icewm xterm" ;;
*)       wms="xterm" ;;
esac

# Das erste Programm aus der oben gewählten Liste ausführen.
success=0
pid=0

for wm in $wms; do
  if type "$wm" >/dev/null; then
    echo "Starting $wm..."
    "$wm" &
    pid=$!

    # wait some time and check if its still alive
    sleep 1
    pgrep "$wm" | grep $pid > /dev/null && { success=1; break; }
    echo "$wm failed."
  else
    echo "$wm 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

SSH-Kram aufräumen[Bearbeiten]

if [ -n "$SSH_AGENT_PID" ]; then
  ssh-add -D < /dev/null
  eval `ssh-agent -s -k`
fi