Erfahrungen mit Linux

Keinerlei Haftung für Befolgen von Tipps und Anleitungen oder für die Links auf dieser Seite!

Inhalt

  1. Von Windows zu Linux
  2. Mandrake, Mandriva, Mageia 4 - und seine Macken
  3. DVB Fernsehen auf dem Linux-PC (DVBT)
  4. Freie DNS (Domain Name System) Server
  5. Linux und der LXDE / Openbox - Desktop
  6. Xplanet als LXDE Desktop-Hintergrund verwenden
  7. Das Openbox Menü
  8. Links

Von Windows zu Linux

Meine erste Installation eines Linux System erfolgte im Jahr 1996, mit Hilfe einer Slackware-CD aus dem Sonderheft einer PC-Zeitschrift - auf einem 486er mit 8 MB Ram! Der Kernel hatte entweder noch eine 1.2 oder schon eine 1.3er Versionsnummer, so genau weiß ich das nicht mehr. Nach drei Tagen Arbeit lief Linux mit graficher Oberfläche endlich, aber mein 14 Zoll Bildschirm hatte ab da eine Macke. Und zwar bedingt durch meine vielen fehlgeschlagenen Versuche, die richtigen Werte für Grafikkarte und Bildschirm für die xf86conf zu finden. Ja, damals konnte man mit Linux noch seine Hardware schrotten - zumindest den Bildschirm. Plug and Play gab es noch nicht, man musste die Werte von v-sync und h-sync aus den Spezifikationen der Bedienungsanleitung heraus suchen, die richtige Gruppe der Grafikkarten (was am schwierigsten war, denn es waren nur wenige gelistet), den richtigen Maustyp und viele andere kryptischen Dinge mit einem überaus seltsam zu bedienenden Linux-Konsoleneditor in die Konfigurations-Datei eintragen. Stimmte darin etwas nicht, begann der Monitor beim Befehl "startx" wild zu flimmern und laut zu pfeifen, sekundenschnelles Abschalten durch Daumen am Ausschalter war bei jedem Versuch eine Frage des Überlebens. Anfangen konnte ich mit Linux dann doch nicht viel, als die GUI endlich funktionierte. Linux war schon damals auf Netzwerke ausgerichtet, und ein solches hatte ich nicht. Und so wurde der Linuxspeicherplatz nach ein paar Wochen wieder für andere Experimente verwendet.

Bis 2000 kamen dann hin und wieder Versuchsinstallationen, Debian, Suse und Mandrake auf meine Rechner, die Installationen waren mittlerweile zwar keine Abenteuer mehr und schnell erledigt. Aber immer war irgend etwas nicht zum Laufen zu bringen. Meist war es der Drucker, der nicht ansprechbar war (sinngemäßes Zitat aus der Zeit: Wenn sie ihren Drucker ansprechen können, haben sie, wenn sie nicht in einer Großstadt wohnen, vermutlich den einzigen PostScript-Drucker in ihrem Ort), ging ausnahmsweise dieser, funktionierte die Soundkarte nicht - oder umgekehrt, je nach Distribution. Ein Studium von monsterhaften Anleitungen im Internet zur Behebung von Interruptkonflikten war die Folge. Heute weiß glücklicherweise fast gar kein Normaluser mehr, was ein Interrupt bzw. IRQ ist. So richtig wusste und weiß ich das bis heute nicht, nur, dass die Dinger dafür sorgen, dass eine CPU nicht endlos vor sich hin rechnet und IRQs Nummern haben - Punkt!

Die grafischen Oberflächen jedoch, die GUIs von Linux, die waren meist - nun ja, gewöhnungsbedürftig. Aber 2000 oder so kam KDE 1.1 und kurz darauf KDE 1.2 (auch die Sound- und Druckerprobleme ließen sich beseitigen), seit dem war Linux in Form von Mandrake fester Bestandteil meiner Festplatte. Ab 2002 wurde Linux dann mein Hauptbetriebssystem und 2005 flog Microsoft endgültig von der Platte. Ich habe es seither kein einziges Mal vermisst.

Meine Treue zu Mandrake und seinen Nachfolgern Mandriva und Mageia hielt sehr lange an. Das Konfigurationstool namens drakconf war bei dieser Distribution einfach unschlagbar. Einzig die Internet-Einrichtung machte (einerlei bei welcher Hardwarekonstellation) immer Schwierigkeiten. Weiter unten sind meine alten Erfahrungsberichte zu Linux und Mageia zu lesen. Mittlerweile, d. h. zum Jahresbeginn 2016 stieg ich allerdings auf Debian um, mir schien, dass das Fehlen eines kommerziellen Hintergrundes begann, sich negativ auf die Mageia-Distribution auszuwirken. Debian hat zwar auch seine Macken, doch die sind geringfügig und man gewöhnt sich schnell an die Stabilität von Debian, auch wenn Debian nicht immer die allerneueste Software zur Verfügung stellt. Wer mit Linux arbeiten und nicht groß herumspielen will, ist mit Debian auf jeden Fall gut bedient. Das allermeiste der folgenden Mageiabeschreibung ist auch bei Debian anwendbar, nur manche der Pfade sind etwas anders gesetzt. Weil auch mir selbst dieser Mageia-Bericht schon ein paar Mal als Spickzettel diente, wird er hier erneut wiedergegeben, man vergißt ja so viel...

Mandrake, Mandriva, Mageia 4 - und seine Macken

Mageia Netzwerkeinrichtung

"Bei Mageia wird das (die Netzeinrichtung) Dank des net_applet zum Albtraum. Das war schon immer so, obwohl ich seit meinem ersten Mandrake diese Distri auf mindestens 8 verschiedenen PC's mit zuerst mehreren Modems, später dann mit einer ganzen Hand voller verschiedener Wlan-Sticks in 10 oder mehr Versionsnummern installiert habe. Bekomme ich das Netz dann endlich zum Laufen, habe ich nach zwei Jahren, wenn ich mich denn entschließe auf eine neue Version zu aktualisieren, längst wieder vergessen, wie das ging, das mit der Netzwerkeinrichtung. Denn eine Neuinstallation ist auf jeden Fall fällig, Versions-Updates haben bei Mandrake-Mandriva-Mageia ebenfalls noch nie funktioniert. Das ist auch Dank vernünftiger und benutzerdefinierter Partitionierung weiter nicht tragisch, wäre da nicht dieses verdammte net_applet! Aus diesem Grund für das nächste Mal zu meiner Erinnerung:

Während der Installation bietet Mageia die Aktualisierung der Pakete über das Netzwerk an. Per Netzwerkkabel klappt das einwandfrei, der Versuch über einen WLAN-Stick scheitert. Ist die Installation abgeschlossen und das System neu gestartet, konfiguriert man das Netzwerk nicht über das Kontrollzentrum, sondern man klickt im Systemabschitt der Taskleiste des Fenstermangers rechts auf das Symbol des net_applet, geht auf Einstellungen und deaktiviert "Immer bei Systemstart starten", erneuter Rechtsklick und das applet beenden. Jetzt geht man im Mageia-Kontrollzentrum auf "Software verwalten" und installiert den NetworkManager nach, falls der noch nicht installiert ist. Danach dort wechseln in 'System' und 'Ein- oder Ausschalten von Systemdiensten'. Dort sucht man den eben installierten NetworkManager-Dienst, markiert 'Starten beim Systemstart' und startet den Dienst mit dem "Start"-Knopf manuell, falls er noch nicht aktiviert ist. Im Systemabschnitt der Taskleiste erscheint jetzt das networkmanager-applet. Das Kontrollzentrum kann dann beendet werden. Mit einem Rechtsklick auf das networkmanager-applet lässt sich jetzt so einfach und fehlerlos wie bei allen anderen Distributionen ein WLAN einrichten, ohne dass dabei immer wieder nicht verstellbare SSID's (\x00\x00\x00\x00\...) oder immer wieder falsche Verschlüsselungsmethoden wie beim net_applet auftauchen, die einen in die schiere Verzweifelung treiben, da bei einer Neukonfigurierung immer wieder diese Dinge eingestellt sind. Egal wie oft man sie ändert oder die Konfigurationen ganz rauswirft.
Dieses seltsame Ding namens net_applet hat es bei meinem Mageia 4 sogar geschafft, ein paar Stunden lang einwandfrei zu funktionieren - "endlich ham die das hingekriegt", dachte ich bei mir, doch leider, plötzlich brach die Verbindung während der ersten Aktualisierung ab, und ließ sich auf keine Art und Weise wieder zum Leben erwecken. Dies geschah nicht nur auf meinem Desktop-PC, sondern auch auf meinem alten Laptop, das von XP auf Linux Mageia umgestellt wurde.

Mageia weitere Einstellungen

Der Ärger mit dem net_applet ist schon bald verraucht, hat man doch sonst ein stabiles und gut funktionierendes Linux-System mit riesiger Softwareauswahl, an dem man sich jahrelang freut. Lediglich Mediathekview und der Double-Commander, einen hervorragenden Dateimanager, vermisse ich bei Mageia 4, doch liegen beide Programme als Standalone-Varianten auf den Servern der Hersteller, man entpackt sie einfach in ein entsprechendes bin-Verzeichnis auf der Home-Partition und legt eine Verknüpfung für den schnellen Start, bspw. auf den Desktop, indem man eine der .desktop Dateien dupliziert, umbenennt und die Zeilen mit Programm, Pfad und Icon mit einem Editor entsprechend ändert. (Double-Commander siehe auch "Zusätzliche Software" weiter unten.)
In der Paketverwaltung sollte man auch nicht vergessen, im Kontrollzentrum "Software verwalten" die Paketquellen anzuwählen und die Tained-Versionen sowohl zur Installation als auch für Updates zu markieren. Die tained-Version des VLC bspw. spielt alle Videoformate ab, die normale Version hingegen weigert sich bei manchen Videos und meldet, dass sich das Videoformat nicht abspielen lässt, und man könne dagegen auch nichts tun. Meist wird das Video zwar dann doch abgespielt, aber ohne Ton.
Wer Probleme mit Browsern und Flash hat, sollte nachsehen, ob "totem-mozilla-flash - Totem flash plugin for Mozilla Firefox​" installiert ist. Falls ja - weg damit!
Ebenso sollte von den Tained-Paketen unter "Sound" alles nachinstalliert werden, was verdächtig ist - Player, Codecs, Encoder und Decoder (vor allem alles was nach Lame, MP3 und Ogg-Vorbis klingt). Leider habe ich nie wirklich herausgefunden, welche Pakete z. Bsp. für die Wiedergabe von Musik auf Webradioseiten zuständig sind. Damit muß man sich aber auch nicht unbedingt beschäftigen, die zu installierenden Pakete sind ja nicht besonders groß und plötzlich wird der Websound wiedergegeben - Ziel erreicht!
Mageia-Mandriva ist für seine restriktive Handhabung von unfreien Paketen ja seit je bekannt, ein wirkliches Problem stellt das nicht dar, denn die Mageia-Distribution stellt die RPM-Pakete ja, wenn auch etwas versteckt, zur Verfügung und überlässt dem Nutzer die Wahl. Ob das aber noch zeitgemäß ist, weiß ich nicht...

msec
Für Besitzer älterer Hardware stellt sich bei Mageia ein weiteres Problemchen ein. Dieses nennt sich "msec". Mit diesem Sicherheits-Checker kann es passieren, dass anstelle "unaufdringlicher Sicherheitsüberprüfungen" der PC stundenlang derart träge wird, dass mit ihm fast nicht mehr gearbeitet werden kann. Und das jeden Tag, jedenfalls in der Standardeinstellung. Mit alter Hardware ist es also ratsam, die Sicherheitseinstellung zu ändern, auch wenn das ein gewisses Risiko bedeutet. Wer Msec (Mandriva security package) nicht ganz abschalten will, der sollte im Kontrollzentrum unter 'Sicherheit' 'Konfiguration der Systemsicherheit...' 'Sicherheitseinstellungen' 'audit_weekly' wählen. Die lästigen Prüfungen stören dann nur einmal pro Woche, ich halte das für einen guten Kompromiss zwischen Sicherheit und Computerleistung auf betagten PC's.

Kyocera FS-680
Schon seit ich von Mandriva auf Mageia 3 umstieg, hatte ich Probleme mit meinem uralten, mit 32MB RAM-Erweiterung aufgerüsteten Laserdrucker, dem Kyocera FS-680. Erkannt wird er unter Mageia 4 problemlos, wählt man jedoch den empfohlenen Treiber "Kyocera FS-680 [en]", druckt das Gerät zwar aus Anwendungen wie Libre Office einwandfrei, jedoch das Drucken aus Browsern heraus funktioniert nicht. Die erste Seite klappt noch, auf der Zweiten aber wird eine Fehlermeldung gedruckt und die LEDs fangen an zu blinken. Die Treiberauswahl "Kyocera FS-680 - CUPS+Gutenprint v5.2.9 [en]" löst das Problem jedoch und der Drucker funktioniert wieder einwandfrei. (Ob Gutenprint standardmäßig installiert wird, weiß ich nicht mehr, da ich, aus Erfahrung gewitzt, gleich nach der Installation einiges an Software rund um CUPS und Drucken installiert habe).

Beschädigte RPM-Datenbank

Unter Mageia kann man bei einer beschädigten RPM-Datenbank, welche sich weder mit dem MCC noch den rpm-Befehlen im Terminal wieder zum Leben erwecken lässt, im Notfall versuchen - aber auf eigene Gefahr! - mit:
"db51_recover -vh /var/lib/rpm"
die Datenbank zu reparieren. Bei mir hat's vor ein paar Jahren mal geklappt, glücklicherweise ist das Problem nie wieder augetaucht...

DVB Fernsehen auf dem Linux-PC (DVBT)

Update
Das Folgende bezieht sich auf nicht auf das aktuelle DVBT2, jedoch sollte das Vorgehen mit einem DVBT2 Stick wohl weitgehend ähnlich verlaufen.

Letzthin (2013) stolperte ich auf einem Flohmarkt über ein Päckchen mit der Aufschrift: "CINERGY TStickRC - TV am PC ansehen und aufnehmen - TV - TERRATEC". Bei dem Preis von Eins-Fuffzich nahm ich das fast neu aussehende USB-Ding natürlich mit. Wie üblich war die mitgelieferte Software nur für Windows, weshalb ich die CD gleich in der Hülle stecken ließ. Da der terrestrische Empfang bei uns schlecht ist, habe ich nicht die mitgelieferte Stabantenne, sondern ein Antennenkabel am Stick angebracht. (Funktioniert bei mir alles einwandfrei, bis auf das Problem, dass der USB-Stick manchmal nicht erkannt wird. Aus- und Einstecken des Sticks löst das Problem, das vermutlich nicht an der Software, sondern an meinem alten PC liegt, der auch mit anderen USB-Geräten oft Probleme hat.) Hier eine kurze Anleitung wie ich das DVB-T Fernsehen mit TerraTec bei mir unter Mageia 4 zum Laufen bekam.

Terminal öffnen und Testen ob der Stick erkannt wird:
dmesg | grep DVB
Holen der Firmware (die Webseite mit der Anleitung die ich fand war in Französisch, so, dass ich nur so ungefähr mitbekam, um was es ging - groß rumprobiert habe ich aber nicht - wget muß natürlich installiert sein).
su

cd /lib/firmware/

wget http://www.otit.fi/~crope/v4l-dvb/af9015/af9015_firmware_cutter/firmware_files/4.95.0/dvb-usb-af9015.fw



Testen ob alles funktioniert (evt. Neustart und/oder Stick rausziehen und wieder einstecken):

dmesg | grep -i dvb

Ergebnis bei mir:
[ 13.598122] usbcore: registered new interface driver dvb_usb_af9015
[ 5084.565041] usb 2-7.4: Product: USB2.0 DVB-T TV Stick
[ 5084.572994] usb 2-7.4: dvb_usb_v2: found a 'TerraTec Cinergy T Stick RC' in cold state
[ 5084.593491] usb 2-7.4: dvb_usb_v2: downloading firmware from file 'dvb-usb-af9015.fw'
[ 5085.174907] usb 2-7.4: dvb_usb_v2: found a 'TerraTec Cinergy T Stick RC' in warm state
[ 5085.702915] usb 2-7.4: dvb_usb_v2: will use the device's hardware PID filter (table count: 32)
[ 5085.703106] DVB: registering new adapter (TerraTec Cinergy T Stick RC)
[ 5085.728842] usb 2-7.4: DVB: registering adapter 0 frontend 0 (Afatech AF9013)...
[ 5085.818418] usb 2-7.4: dvb_usb_v2: schedule remote query interval to 500 msecs
[ 5085.818426] usb 2-7.4: dvb_usb_v2: 'TerraTec Cinergy T Stick RC' successfully initialized and connected
[ 5085.994118] input: NEWMI USB2.0 DVB-T TV Stick as /devices/pci0000:00/0000:00:0b.0/usb2/2-7/2-7.4/2-7.4:1.1/0003:0CCD:0097.0001/input/input6
[ 5085.994777] hid-generic 0003:0CCD:0097.0001: input,hidraw0: USB HID v1.01 Keyboard [NEWMI USB2.0 DVB-T TV Stick] onusb-0000:00:0b.0-7.4/input1

Erstellen der Kanalliste für Me TV, evt. Pfad zu Speicherung der Liste anpassen(me-tv muß natürlich vorher installiert werden)
su username (oder neues Terminal)

Baden-Württemberg - Kanäle scannen:
scan /usr/share/dvb/dvb-t/de-Baden-Wuerttemberg > ~/channels-bw.conf
Ich wohne im Grenzgebiet zu Bayern: Zusätzlich bayerische Kanäle scannen:
scan /usr/share/dvb/dvb-t/de-Bayern > ~/channels-by.conf

Fernsehen mit Me-TV (me-tv-client - bei Aufforderung beide Listen hinzufügen). Me-TV zeigt zunächst neben den Sendernamen "Unbekanntes Programm", das verschwindet aber, wenn man auf den Sender klickt.
Auf meinem PC funktioniert das Programmzappen mit Kaffeine allerdings flüssiger als mit MeTV, finde ich, auch holt das Programm die Kanalliste aus dem Netz, mit Kaffeine sind die letzten Aktionen überflüssig.
Auch mit dem VLC kann man den PC als Glotze nutzen. Allerdings ist die Einrichtung nicht so komfortabel wie bei Kaffeine. Im VLC:
⇒Medien Aufnahmegerät öffnen
⇒Capture mode ""TV-Digital" ⇒Tuner Karte /dev/dvb/adapter wählen
⇒Übertragungssystem DVB-T
⇒Transponder/Multiplex-Frequenz Dort den ersten Wert eintragen, der in der channel.conf hinter einem Sendernamen ist - drei Nullen weglassen, da der Wert in KHz ist
⇒Bandbreite Den Wert eintragen der in der channel.conf in MHz angegeben ist (automatisch funktioniert zumindest bei mir nicht)
⇒Wiedergabe spielt jetzt einen der Sender auf dieser Frequenz, die unter ⇒Wiedergabe ⇒Programm ausgewählt werden können.
Dieser Vorgang muß für jede unterschledliche Frequenz wiederholt werden, will man alle Sender empfangen können. Die Frequenzen werden in der Wiedergabeliste angezeigt, mit ⇒Medien ⇒'Wiedergabeliste in Datei speichern' muß diese Wiedergabeliste dann abgespeichert und beim nächsten Start mit ⇒Medien ⇒'Datei öffnen' wieder aufgerufen und die entsprechende Frequenz gewählt werden. Also, wie gesagt, funktioniert, aber nicht sehr komfortabel...
Auch auf meinem alten Laptop funktionierte diese Methode der Firmwareinstallation übrigens einwandfrei und war in weniger als 5 Minuten erledigt. Wird zu Anfang mit 'dmesg | grep DVB' ein anderes Gerät angezeigt, würde ich diese Methode einfach mit der entsprechenden Firmwarebezeichnung versuchen, falls sie im Verzeichnis nicht schon vorhanden ist.

Freie DNS (Domain Name System) Server

Wer staatliche Zensur aushebeln (oder aber auch seine Internetverbindung etwas tunen) will, verwendet freie DNS Server. Wie das mit dem Network Manager auf einfachste Weise eingestellt werden kann, wird auf englisch bei "Configure your network settings to use Google Public DNS" Google erklärt (zu Linux/Debian scrollen). Nämlich Rechtsklick ⇒networkmanager-applet ⇒Verbindungen bearbeiten ⇒Verbindung wählen ⇒Bearbeiten ⇒root PW ⇒IPv4-Einstellungen ⇒Methode von "Automatisch (DHCP)" auf "Automatisch (DHCP), nur Adressen" umstellen und den neuen DNS-Server eingeben. Ein Ersatz DNS-Server kann, durch ein Leerzeichen getrennt, zusätzlich angegeben werden. Die gleiche Prozedur kann man auch bei den IPv6-Einstellungen vornehmen. Unter ⇒Verbindungsinformationen im Applet ist jetzt das neue DNS aufgeführt.
Höchstwahrscheinlich hat Google mit seiner gigantischen Rechenleistung weit schnellere DNS Server als der eigene Provider, wer jedoch der geballten Macht von Google und seinen riesigen Datenbeständen (von denen niemand weiß was damit geschieht) mißtraut, der wählt einen anderen öffentlichen DNS Server. Hilfreich beim Finden ist dabei zum Beispiel der Artikel "OpenDNS und andere freie DNS-Server" und seine Links, bspw. zum "DNS Howto" des Chaos Computer Clubs.

Linux und der LXDE / Openbox - Desktop

Seit KDE der 4er Versionen ist dieser Fenstermanager - lange Zeit von mir mit Linux fast gleichgesetzt - auf meinem PC nicht mehr in Benutzung, auch wenn dessen Entwickler den Manager von der Spielwiese der frühen 4er-Reihe wieder in eine vernünftige Arbeitsoberfläche zurück verwandelt haben. Denn der Mensch ist ein Gewohnheitstier und der Wechsel der GUI war bei der ersten KDE 4er Auflage unumgänglich, denn dieser Desktop war schlicht nicht mehr benutzbar. Und mittlerweile hatte ich nun einmal Gefallen an LXDE/Openbox gefunden und ich werde auch die nächsten Jahre weiter diesen Fenstermanager benutzen. Für völlige Newbies ist LXDE vielleicht nicht so ideal - ich weiß es nicht, aber LXDE hat viele Vorteile, bspw. den geringen Resourcenverbrauch oder das frei konfigurierbare Kontextmenü von Openbox beim Rechts-Klick auf den Desktop.

Xplanet als LXDE Desktop-Hintergrund verwenden

Xplanet mit LXDE
Xplanet mit LXDE unter Debian

Xplanet
Diese wunderschöne Darstellung unseres Sonnensystems mit seinen Planeten lässt sich nur widerwillig in LXDE integrieren. Entweder man ruft es als Autostartprogramm einmalig mit entsprechendem Parameter zur Speicherung auf und wählt das erzeugte Bild als Hintergrundbild, dann allerdings ist dieses statisch und zeigt während der Sitzung nur das gerenderte Bild an. Oder aber man verzichtet auf die Desktop-Symbole, hat dafür aber zum Beispiel eine Echtzeit-Darstellung der Erde. Ich habe mich für die zweite Variante entschieden, häufig genutzte Programme hole ich mir eh im Openbox-Kontextmenü, der Papierkorb ist auch über den PCManFM Dateimanager leicht zu erreichen und da ich den Nachrichtenticker "Tickr" benutze, habe ich mir in ein zweites kleines Panel links oben das Ordnermenü als eingefügt, so, dass ich jederzeit mein Homeverzeichnis parat habe, ausserdem kann man rechts oder links ein aufklappbares Seiten-Panel mit Symbolen als Programmverknüpfungen anlegen. Wozu also noch Desktopsymbole?
Für die zweite Variante von Xplanet mit LXDE ändert man die Datei ~/.config/lxsession/LXDE/autostart , indem man pcmanfm als Desktop abschaltet und ihn nur als Dämon starten lässt.
Meine autostart sieht so aus:
@lxpanel --profile LXDE
#@pcmanfm --desktop --profile LXDE #Originaleintrag - für xplanet auskommentieren
@pcmanfm -d #nur als Dämon ausführen für xplanet
@/usr/libexec/notification-daemon
@xplanet -latitude 48 -longitude 10 -radius 35 -center +1420+540 -wait 600 -background /kompletter pfad zum hg-bild/comet.jpg #startet xplanet als hintergrundprogramm
(siehe: man xplanet)
Pcmanfm muss man in diesem Fall als Dämon starten, ruft man, wie im Original, 'pcmanfm --desktop' auf, wird Xplanet nicht zu sehen sein. Startet man den pcmanfm dagegen in der autostart überhaupt nicht, funktioniert zwar XPlanet, aber Wechseldatenträger werden nicht mehr automatisch gemountet. (Man kann den Pcmanfm-Dateimanager allerdings ja auch vor dem Einlegen von Wechseldatenträgern händisch starten, dann werden diese erkannt.)

Das Openbox Menü

Kontextmenü Openbox
Kontextmenü Openbox

Hier nachfolgend meine Beschreibung der Openbox Menü Konfiguration sowie am Ende der Beschreibung ein paar Beispiele zur Verwendung dieses Kontextmenüs. Es ist schon mit etwas Arbeit verbunden, und vielleicht ist es nicht der beste Weg, dieses Menü einzustellen, aber es war mein Weg und vielleicht kann sich der eine oder die andere hier ein paar Anregungen holen.
Sämtliche Aktionen sind aber als normaler Benutzer auszuführen - keinesfalls als root!

In einem Terminal wird zunächst in das versteckte .config Verzeichnis des Benutzers gewechselt:

cd ~/.config/openbox

Ist dieses Verzeichnis noch nicht vorhanden, wir des durch

mkdir -p ~/.config/openbox

erstellt. Falls der Ordner schon vorhanden war, sollten sich dort die Dateien autostart, environment und rc.xml bzw. lxde-rc.xml befinden. Sind sie nicht vorhanden, werden sie durch folgenden Befehl in das Verzeichnis kopiert

cp /etc/xdg/openbox/{rc.xml,autostart,environment} ~/.config/openbox

Mageia Menü im Kontextmenü

Update
auch das Debian Menü lässt sich auf ganz ähnliche Weise integrieren.

Jetzt sorgen wir dafür - sofern man das möchte, dass das aktuelle Mageia-Menü im Kontextmenü erscheint. Allerdings ist dieses Menü ja auch durch den Startknopf der Taskleiste aufrufbar und somit lediglich eine zusätzliche Möglichkeit des Programmaufrufs.

Es werden zunächst von allen XML's Sicherungen angelegt, falls etwas schief geht, und mit einem Editor, welcher Syntax-Highlighting beherrscht (ich bevorzuge Geany, mit dem ich auch meine Webseiten erstelle), zunächst die standardmäßig in ~/.config/openbox/ liegende Datei lxde-rc.xml geöffnet. (Falls, wie oben beschrieben, dieses Verzeichnis nicht vorhanden war - es wird bei Mageia beim Start von LXDE automatisch erstellt - sondern wie beschrieben per Hand erstellt wurde, ist die Datei lxde-rc.xml nicht vorhanden, rc.xml wurde dann aber in dieses Verzeichnis mit kopiert, die Dateien sind inhaltlich nahezu identisch, weshalb man die rc.xml schlicht in lxde-rc.xml umbenennen kann.) Dort findet sich der Eintrag:

<menu>
<!-- You can specify more than one menu file in here and they are all loaded,
just don't make menu ids clash or, well, it'll be kind of pointless -->
<!-- default menu file (or custom one in $HOME/.config/openbox/) -->
<file>/usr/share/lxde/openbox/menu.xml</file>

Dort ändert man
<file>/usr/share/lxde/openbox/menu.xml</file> (bei Umbenennen der rc.xml steht dort schon der richtige Pfad und die xdg-menu.xml)
in <file>/etc/xdg/openbox/xdg-menu.xml</file> um:

<menu>
<!-- You can specify more than one menu file in here and they are all loaded,
just don't make menu ids clash or, well, it'll be kind of pointless -->
<!-- default menu file (or custom one in $HOME/.config/openbox/) -->
<file>/etc/xdg/openbox/xdg-menu.xml</file>

Damit hat man das stets aktuelle Mageia-Menü in das Openboxmenü im Prinzip integriert, es muss nur noch aufgerufen werden.

Wirklich interessant am Openbox-Kontextmenü ist aber die Möglichkeit, hier Starter zu verankern, die Programme aufrufen, die bspw. als Standalone-Versionen nicht systemweit verfügbar sind, sondern im Homeverzeichnis gespeichert wurden. Als Beispiele nenne ich hier den Double-Commander oder Mediathekview.

Als nächstes kopiert man im Terminal mit dem Befehl:

cp /usr/share/lxde/openbox/menu.xml ~/.config/openbox

die systemweite Kontextmenü-Einstellungsdatei in die eigene config, falls sie noch nicht vorhanden ist. Man geht dann wieder im Editor an unsere geänderte Stelle der lxde-rc.xml :

<!-- You can specify more than one menu file in here and they are all loaded,
just don't make menu ids clash or, well, it'll be kind of pointless -->

hier lässt sich lesen, dass sich auch eine zweite oder dritte xml-Datei in das Kontextmenü einbauen läßt, man fügt also die xml-Datei <file>~/.config/openbox/menu.xml</file> hinzu, der Eintrag in der lxde-rc.xml sieht jetzt folgendermaßen aus:

<menu>
<!-- You can specify more than one menu file in here and they are all loaded,
just don't make menu ids clash or, well, it'll be kind of pointless -->
<!-- default menu file (or custom one in $HOME/.config/openbox/) -->
<file>/etc/xdg/openbox/xdg-menu.xml</file>
<file>~/openbox/menu.xml</file>

der Name der zweiten oder auch einer dritten xml-datei kann natürlich frei gewählt werden, nur darf die Datei keine Syntaxfehler enthalten.
WICHTIG! Seltsamerweise muß aber der Eintrag <file>/etc/xdg/openbox/xdg-menu.xml</file> an erster Stelle stehen, sonst wird das Mageia-Menü nicht angezeigt!
Wahlweise kann hier aber, wie in vielen Fällen, das Zeichen ~ oder die ausgeschriebene Pfadangabe verwendet werden. Wer will, kann jetzt schon auf das Openboxmenü umstellen, um zu überprüfen wie es aussieht. Die Umstellung wird im übernächsten Kapitel "Umstellung des LXDE-Menüs" weiter unten beschrieben, angezeigt werden sollte jetzt nur das voreingestellte Menü, also der Inhalt der menu.xml, welche im nächsten Kapitel modifiziert und um das stets aktuelle Mageia-Programm-Menü, also den Inhalt der xdg-menu.xml, erweitert wird. (Ich hoffe bloß, dass ich die einfachen Dinge der Menüerstellung nicht durch komplizierte Erklärungen schwer verständlich mache!)

Benutzerdefiniertes Menü

menu.xml Openbox
menu.xml Openbox

Jetzt wird das benutzerdefinierte Menü editiert, in unserem Beispiel die Datei menu.xml in ~/.config/openbox/

Der Eintrag:

<menu id="root-menu" label="XYZ">
...
...
</menu>

legt die ID-Einträge und deren angezeigte Reihenfolge fest, <separator label="Einstellungen" /> bedeutet einen Trenner mit Bezeichnung, in diesem Beispiel steht dort farbig hinterlegt "Einstellungen" (siehe Bild meines Menüs weiter unten) und <separator /> einen Trennstrich im Menü.
Die Einträge einer xml Datei enthalten, wie man sieht, sogenannte tags, das sind die Bezeichnungen innerhalb der spitzen Klammern, die dazu dienen, die Daten zu klassifizieren.

<element> - öffnet den tag element,
<attribut> - öffnet den tag attribut,
<unterelement> - öffnet den tag unterelement,
</unterelement> - schließt den tag unterelement.
</attribut> - schließt den tag attribut.
</element> - schließt den tag element.
Ein Element-tag kann also Unterstrukturen besitzen, Attribut-tags die ebenfalls wiederum Unter-Element-tags enthalten können, die zwischen dem öffnenden und dem schließenden Attribut-tag liegen. Hat das Attribut in der aufgerufenen Datei keine Unter-Elemente, kann ein Element mit Attribut auch nur mit

<element attribut="beispiel" />
als bis auf ein Attribut leer, oder, ist auch dieses nicht vorhanden, als ganz inhaltslos eingefügt werden:
<element /> (Bsp. <separator />)

Der / schließt also als erstes Zeichen nach der ersten - oder wenn wenn nichts weiter definiert ist, als letztes Zeichen vor der letzten - spitzen Klammer einen Tag, und ein geöffneter Tag muss auch immer geschlossen werden, sonst entsteht ein Syntaxfehler.

<attribut> - öffnet den tag attribut,
<unterelement> - öffnet den tag unterelement,
</attribut> - schließt den tag attribut.
</unterelement> - schließt den tag unterelement.
Hier würde ebenfalls, durch die falsche Hierarchie, ein Syntaxfehler entstehen. Ein untergeordneter tag muss innerhalb des Elterntags geschlossen werden.

<!-- ⇐Kommentaranfang und Kommentarende⇒ -->
Dieser Kommentar-tag bedeutet eine Hilfsbeschreibung die nur der Information dient und der sonst keinerlei Bedeutung für die Ausführung hat, er muß aber natürlich ebenfalls korrekt beendet werden, sonst werden die folgenden Tags nicht mehr ausgeführt. Solche Kommentare können ohne Konsequenzen auch gelöscht werden, um die Dateien zu verkleinern, etwa in der lxde-rc.xml.

Diese Auszeichnungen sind ja von HTML her vielen bekannt, ich erwähne das nur um Syntaxfehlern vorzubeugen, mehr braucht man hier über XML nicht zu wissen, um das Menü zu erstellen. Es ist immer darauf zu achten, dass alle geöffneten Tags auch geschlossen sind und die richtige Hierarchie eingehalten wird! Je größer die XML, um so unübersichtlicher wird das Ganze, es ist empfehlenswert, die Hierarchie im Editor durch einen erhöhten Einzug (Tab) zu strukturieren um den Überblick zu behalten. Meine Menüdatei hat unter anderem diese Einträge:

<?xml version="1.0" encoding="UTF-8"?>
<openbox_menu xmlns="http://openbox.org/3.4/menu">
...
...
<menu id="Programme" />
...
...
<!-- Rootmenu Einträge -->
<menu id="root-menu" label="Openbox 3">
<separator label="Anwendungen" />
<menu id="webedit" />
<menu id="werkzeug-menu" />
<menu id="inet" />
<menu id="medien" />
<separator label="Einstellungen" />
<menu id="system-menu" />
<menu id="system-andere" />
<menu id="hilfe" />
<separator label="Start und Kill" />
<menu id="task" />
<menu id="kurzstart" />
<separator label="Mageia Systemmenü" />
<menu id="Programme" />
<item label="Programm das direkt im Wurzelmenü gestartet wird"... (kompletter Item)
</menu>
...
...
</openbox_menu>

<menu id="Programme" /> (zur Verdeutlichung von mir rot markiert) ist die id des aktuellen Systemmenüs von Mageia (wer will wirft dazu einen Blick in die Datei xdg-menu.xml, diese Datei wird vom System nach jeder neuen Programminstallation neu erstellt und kann und darf nicht geändert werden), dieses Menü wird durch den schlichten Eintrag <menu id="Programme" /> ober- oder auch unterhalb der id="root-menu" Tags (blau) eingefügt und darf nicht geändert werden, soll das Systemmenü erscheinen. Innerhalb des id="root.menu" (blau) wird dieser Eintrag an der Stelle, an welcher er später erscheinen soll, ebenfalls eingefügt (grün).
Untermenüs werden einfach erzeugt indem ein Menü von einem anderen eingeschlossen wird, nur das oberste Menü erhält dann einen Eintrag in der id="root-menu". Bsp.:

<!--Erstes Ebenenmenü Anfang-->
<menu id="webedit" label="Webseiten-Entwicklung">
...
items und menus
...
<separator label="Überprüfen" />
  <!--Zweites Ebenenmenü Anfang-->
  <menu id="tidy_usw" label="Tidy, Links und Co.">
  items und menus
  ...
    <!--Drittes Ebenenmenü Anfang-->
    <menu id="test" label="Test">
    items
    ...
    ...
    </menu>
    <!--Drittes Ebenenmenü Ende-->
  </menu>
  <!--Zweites Ebenenmenü Ende-->
...
weitere items und menus
...
...
</menu>
<!--Erstes Ebenenmenü Ende-->
<menu id="weiteres-menu" label="Weiteres Toplevelmenü">
...
usw...

Rot ist also hier das Menü, das auf der ersten Ebene liegt und bei Rechtsklick auf den Desktop mit den anderen Menüeinträgen sichtbar wird (in id="root-menu" aufgeführt), insofern ist die Bezeichnung "Erstes Ebenenmenü" vielleicht etwas irreführend, blau das Submenü. Die erste sichtbare Ebene, also die Rootebene kann aber auch direkt ein auszuführendes Programm enthalten, wenn es nur aus einem item-Eintrag besteht, dieser muß dann aber innerhalb der id="root-menu" verankert werden, da es ja ein Eintrag der Wurzelebene ist. Untermenüs können selbst wieder Untermenüs (grün) enthalten, mehr als drei Ebenen habe ich nicht getestet. Die Menü-Id's sind absolut notwendig und können in der Regel frei vergeben werden (bis auf das wichtige "root-menu", das diese id behalten muß), dürfen aber natürlich nicht doppelt vorkommen und keine Umlaute oder reservierte Zeichen enthalten. Diese menu's (rot) können ebenfalls ober- oder unterhalb der id="root-menu"-tags eingetragen werden, denn die Reihenfolge der Menü-Einträge wird ja durch dieses id="root-menu" bestimmt. Ein Eintrag innerhalb eines Menütags sieht bspw. so aus:

<item label="MediathekView">
<action name="Execute">
<command>~/bin/mediathekview/MediathekView.sh</command>
<startupnotify>
<enabled>yes</enabled>
</startupnotify>
</action>
</item>

hier wird also das unter ~/bin/mediathekview/ liegende Script MediathekView (label) gestartet, das ein Programm zum Speichern der in den öffentlich-rechtlichen Sendern angebotenen Mediathek-Beiträge ausführt (command). Die Original menu.xml ist ja ein gutes Beispiel für richtige Einträge, nur dass es kein Untermenü-Beispiel hat. Eigentlich kann wenig dabei schief gehen. Falls doch, kopiert man die Sicherungen zurück. Sieht alles gut aus, wird das LXDE Kontextmenü auf Openbox umgestellt.

Umstellung des LXDE-Menüs

Dazu klickt man rechts irgendwo auf den Desktop und wählt im erscheinenden Fenster 'Einstellungen der Arbeitsfläche' und in diesem den Reiter 'Erweitert'. Dort wird das Häkchen bei 'Beim Klicken auf die Arbeitsfläche die Menüs des Fenstermanagers anzeigen' gesetzt und das Fenster geschlossen. Rechtsklick auf den Desktop zeigt jetzt (hoffentlich) das eben erstellte neue Menü. Die 'Einstellungen der Arbeitsfläche' können auch unter Start-Ausführen in der Taskleiste oder im Terminal durch den Befehl:

pcmanfm --desktop-pref

LXDE Arbeitsfläche Einstellungsfenster
LXDE Arbeitsfläche Einstellungsfenster

erreicht werden. Wichtig, wenn statt des Kontextmenüs eine Fehlermeldung erscheint. Dann ist vermutlich ein Syntaxfehler in einer XML die Ursache. Im Terminal liest
openbox --reconfigure
die Konfigurationsdateien neu ein und aktualisiert das Mageia Menü nach einer Programminstallation,
openbox --restart
startet Openbox ohne abmelden neu, nicht jedoch das gesamte LXDE. Programme bleiben geöffnet und die Autostart wird nicht neu eingelesen. Deshalb ist es nicht schlecht, das Terminal immer geöffnet zu lassen. (Die beiden obigen Befehle können sinnvollerweise natürlich auch im Menü verankert werden.)

Es empfiehlt sich stets unter Linux, einen zweiten eingerichteten Fenstermanager auf dem System zu haben. Sollten alle Stricke reißen, kann man vom Ersatzfenstermanager aus die Sicherungen wieder zurück kopieren.
Auf jeden Fall aber sollte der Midnight-Commander (mc) auf dem System vorhanden sein, um Dateien leicht editieren, kopieren und umbenennen zu können, falls man aus irgend einem Grund einmal keine funktionierende grafische Oberfläche mehr zur Verfügung hat. Doch das nur allgemein, das sollte eigentlich nie passieren - jedenfalls nicht während der Erstellung eines Openboxmenüs.

Λ