Fluxbox Wiki

0. Einleitung

Fluxbox bringt keine eigene Möglichkeit mit, den Computer ohne Klimmzüge herunterzufahren. Trotzdem gibt es mehrere Möglichkeiten, ohne jedes Mal einen Aufwand betreiben zu müssen den Computer auszuschalten.

1. Benutzt man GDM zum Login

Benutzt man GDM zum Login, kann man diesen aber auch dazu heranziehen, den Computer auszuschalten. Damit dabei nicht zu leicht etwas daneben geht, macht eine Rückfrage Sinn.

Ein einfaches Fragefenster kann man mit xmessage erzeugen:

 xmessage -nearmouse -buttons Nein:1,Ja:0 "Wirklich herunterfahren?"

Klickt der Benutzer auf "nein" haben wir weiter nichts mehr zu tun, können ihm höchstens noch etwas nettes zum Abschied sagen. Klickt er auf "ja" schalten wir den Computer aus.

Dazu sagen wir als erstes GDM, dass er den Computer herunterfahren soll, wenn Fluxbox beendet ist:

 gdmflexiserver -a -c 'SET_LOGOUT_ACTION HALT'

Danach schießen wir Fluxbox ab:

kill -TERM $(xprop -root _BLACKBOX_PID | awk '{print $3}')

Dieser Umweg ist nötig, da man GDM nicht auf so einfachem Weg dazu auffordern kann, den Computer direkt auszuschalten. Es ist nur möglich, ihm diese Aufgabe für den Fall zu geben, dass der Benutzer sich auslogt.

Ein bisschen Drumrum ergänzt das Ganze dann zu einem kleinen Script, das man in sein Menü einbauen kann:

 #!/bin/sh
 if xmessage -nearmouse -buttons Nein:1,Ja:0 "Wirklich herunterfahren?"; then
   gdmflexiserver -a -c 'SET_LOGOUT_ACTION HALT'
   kill -TERM $(xprop -root _BLACKBOX_PID | awk '{print $3}')
 else
   xmessage -nearmouse "Warum hast du es dann versucht?"
 fi

1. Einen kleinen Button im fluxbox Menü hinzufügen

Das ganze geht wie folgt: Zuerst kreieren wir eine neue Gruppe

Bsp.:

 sudo addgroup shutdown

nun noch den eigenen user der Gruppe zuordnen

sudo adduser <Dein_Username> shutdown

danach editieren wir die Datei /etc/sudoers mit folgendem Befehl

visudo

dieser Datei fügen wir einfach am Ende folgendes hinzu

%shutdown ALL=(root) NOPASSWD: /sbin/shutdown
%shutdown ALL=(root) NOPASSWD: /sbin/halt
%shutdown ALL=(root) NOPASSWD: /sbin/reboot

nachdem das geschehen ist kann man einfach in der Datei ./fluxbox/menu folgende Zeilen an der Stelle einfügen, an der man gerne den Button hätte

 [exec] (reboot) {sudo reboot}
 [exec] (shutdown) {sudo halt}