Mit diesem kleinen Widget kann man per Button auf der Desktop-Oberfläche von Ubuntu Shell-Befehle im Userkontext ausführen lassen.
Für Windows siehe → buttonres
exec = sh -c "...Befehl..."
über einen shell-Aufruf ausführen lassen oder man lagert die Befehle in ein eigenes Shellscript aus (→ Beispiel). Dabei sind aber Enviroment-Variablen, wie z.B. „HOSTNAME“ nicht belegt!
/opt/buttonbar/
ab oder am Server unter progs.[Programm] Name = "linuxmuster Button Bar" width = 200 # Negative Positionswerte entsprechen einer Position von rechts oder unten xpos = -20 ypos = 40 FixedPosition = 1 # Anzeige der ButtonBar bei erweiterten Bildschirm auf beiden Bildschirmen: 0|1 AlleBildschirme = 1 Hintergrundfarbe = $FFFFFF BilderButtons = 0 BWidth = 74 BHeight = 74 BilderPfad = "Bilder" Spalten = 3 # BorderStyle : none | single BorderStyle = "none" [Button1] Name = "Bildschirm Spiegeln" exec = sh -c "/usr/local/bin/bildschirme.sh" BefehlsAusgabeAnzeigen = 0
Hier erscheint die Buttonbar übrigens oben links.
[Programm] Name="Linuxmuster Button Bar" width = 250 ButtonAnzahl = 4 xpos = -20 ypos = 40 FixedPosition = 0 Hintergrundfarbe = $FFFFFF # BorderStyle : none | single BorderStyle = "single" [Button1] Name = "Erster - ls" exec = "ls" BefehlsAusgabeAnzeigen = 1 [Button2] Name = "Zweiter - pwd" exec = "pwd" BefehlsAusgabeAnzeigen = 1 [Button3] Name = "Dritter date" exec = "date" BefehlsAusgabeAnzeigen = 1 [Button4] Name = "Vierter - mit sh uptime" exec = sh -c "echo 'uptime:' ; uptime" BefehlsAusgabeAnzeigen = 1
Um eine einfache Auflösungsumschaltung zu realisieren, benutzt man folgende cfg-Datei. Die genauen xrandr-Optionen müssen zum eigenen System vorher ermittelt werden, siehe → bildschirmaufloesung.
[Programm] Name="Auflösung" width = 100 xpos = -20 ypos = 40 FixedPosition = 1 Hintergrundfarbe = $FFFFFF # BorderStyle : none | single BorderStyle = "none" # ButtonAnzahl maximal 20 ButtonAnzahl = 2 [Button1] Name = "800x600" exec = "xrandr --output VGA1 --mode 800x600" BefehlsAusgabeAnzeigen = 0 [Button2] Name = "1280x960" exec = "xrandr --output VGA1 --mode 1280x960" BefehlsAusgabeAnzeigen = 0
Hinter einem VGA-Splitter o.ä. erkennt Ubuntu die Fähigkeiten des Monitors/Beamer nicht, dann müssen diese „hart“ gesetzt werden, z.B. mit den drei Befehlen:
xrandr --newmode "1280x800_60.00" 83.50 1280 1352 1480 1680 800 803 809 831 -hsync +vsync xrandr --addmode VGA1 "1280x800_60.00" xrandr --output VGA1 --mode "1280x800_60.00"
Die vielen Parameter für den newmode-Befehl muss man vorher durch den cvt-Befehl ermitteln:
# cvt 1280 800 60
In der buttonbar.cfg-Datei ruft man dann diese Befehle hintereinander ab:
[Button2] Name = "Beamer-1280x800" exec = sh -c "xrandr --newmode '1280x800_60.00' 83.50 1280 1352 1480 1680 800 803 809 831 -hsync +vsync ; xrandr --addmode VGA1 '1280x800_60.00' ; xrandr --output VGA1 --mode '1280x800_60.00'" BefehlsAusgabeAnzeigen = 0
Um den Lehrermonitor und einen angeschlossenen Beamer in den Spiegel-Modus zu versetzen, ohne die Systemeinstellungen aufrufen zu müssen:
[Button1] Name = "Bildschirm Spiegeln" exec = "xrandr --output VGA-1 --mode 1280x800 --output HDMI-2 --mode 1280x800 --same-as VGA-1" BefehlsAusgabeAnzeigen = 0
Bei mehreren Computerräumen mit verschiedenen Monitoren und Beamern kann man den Befehl auch an ein shell-Script auslagern. Im shell-Script können dann je nach PC-Name verschiedene Anschlüsse oder Auflösungen aktiviert werden und man kann trotzdem überall das selbe LINBO-Image verwenden. Siehe Beispiel-Script
[Button1] Name = "Bildschirm Spiegeln" exec = "/opt/buttonbar/bildschirme.sh" BefehlsAusgabeAnzeigen = 0
Alle Befehle werden zunächst im Userkontext ausgeführt. Wenn diese jedoch root-Rechte benötigen, dann muss der gewünschte Befehl per sudo aufgerufen werden. Um dies passwortlos für alle User zu erlauben muss eine neue Datei im Verzeichnis /etc/sudoers.d/
erzeugt werden:
All All=NOPASSWD: /bin/mount
[Button3] Name = "sudo mount -a" exec = "sudo /bin/mount -a" BefehlsAusgabeAnzeigen = 0
Ab Version 0.20 der Buttonbar kann sie auch grafische Buttons in einer oder mehreren Spalten darstellen. Die Grafiken zu den Buttons müssen im BMP-Format vorliegen.
Konfigurationsdatei:
... BilderButtons = 1 BWidth = 74 BHeight = 74 BilderPfad = "Bilder" Spalten = 3 # ButtonAnzahl maximal 20 ButtonAnzahl = 5 [Button1] Name = "800x600" exec = "xrandr --output VBOX0 --mode 800x600" BefehlsAusgabeAnzeigen = 0 GrafikName= "gluehbirne.bmp" ...
Download 64 Bit → buttonbar-0.23-x86_64.tar.bz2
Download 64 Bit →
buttonbar-0.21a-x86_64.tar.bz2
Download 64 Bit →
buttonbar-0.1-x86_64.tar.gz
Download 32 Bit →
buttonbar-0.1-i386.tar.gz
Download Source →
buttonbar-0.1-src.tar (Programmiert mit Lazarus)
# apt install appmenu-gtk2-module