Leitfaden zum Überwinden der ersten Hürden nach der Installation
des X Window Systems unter QNX 4

Inhaltsverzeichnis

Eintragsstruktur

Einleitung

Generelles Maßgeschneidertes

Eintragstruktur

Die Einträge zu den einzelnen Punkten sind wie folgt gegliedert:

Motivation
Warum der Standardzustand auf Dauer nicht tragbar ist.

Abhilfe
Der prinzipielle Lösungsweg.

Durchführung
Die konkret notwendigen Befehle zur Lösung des Problems.

Fallen und Fußangeln
Unerwünschte Seiteneffekte und/oder notwendige Voraussetzungen.

Weitere Informationen
Wo nachgelesen werden kann, wie es sich im Detail verhält.

Bevor die eigentlichen Maßnahmen geschildert werden, folgt hier noch eine kurze Darstellung der Konfigurationsmöglichkeiten unter X. Sie bildet die Grundlage für viele der im weiteren Verlauf beschriebenen Lösungsverfahren und sollte daher nicht übersprungen werden.


Einleitung

Nach der Installation des X Windows Systems liegt ein zwar lauffähiges jedoch noch recht rohes X vor dem Benutzer. Dieser Leitfaden soll dabei helfen, möglichst schnell einen "arbeitsfähigen" Zustand zu erreichen. Zunächst werden im Abschnitt "Generelles" die Schritte abgehandelt, die notwendig sind, um ein rudimentäres Arbeiten überhaupt zu erlauben. Im Abschnitt "Maßgeschneidertes" werden Maßnahmen vorgestellt, die eine Anpassung an die speziellen Bedürfnisse der Benutzer gestatten.

Bevor die eigentlichen Maßnahmen geschildert werden, folgt hier noch eine kurze Darstellung der Konfigurationsmöglichkeiten unter X. Sie bildet die Grundlage für viele der im weiteren Verlauf beschriebenen Lösungsverfahren und sollte daher nicht übersprungen werden.


Konfigurationsmöglichkeiten

Alle Einstellungen, die über die aktuelle Sitzung hinaus Gültigkeit haben sollen, werden am besten in eine Konfigurationsdatei eingetragen. Diese Dateien werden beim Starten von Programmen ausgeführt bzw. aufgerufen und sorgen dafür, daß das Programm sich von Anfang so verhält, wie der Benutzer es wünscht.

Es gibt drei Arten, auf die Programme konfiguriert werden können:

  • Command-line Optionen. Diese Methode unterscheidet sich nicht von der unter QNX üblichen Methode. Die Optionen werden mit einem Spiegelstrich hinter dem Befehlsnamen angegeben. Um z.B. ein xterm mit einem Scrollbar und dem Titel "Terminal 1" zu versehen, kann geschrieben werden:

    xterm -sb -name "Terminal 1"

  • Startup-Scripts. Die auszuführenden Befehle bzw. die Konfigurationsdaten werden in einem Startup-Script festgelegt, das beim Aufruf eines Programms ausgeführt wird. Die Startup-Scripts-Dateinamen beginnen mit einem Punkt und Enden auf rc und enthalten dazwischen den Namen des Programms, bei dessen Start sie aufgerufen werden; so wird z.B. beim Start von xinit (letzter Befehl in startx) das Startup-Script .xinitrc ausgeführt.

    Viele Startup-Scripts sind in Standardversionen vorhanden, die in Verzeichnissen unter /usr/X11/lib/ liegen, und die leicht abweichende Namen tragen. Diese Scripts werden ausgeführt, solange der Benutzer in seinem $HOME -Verzeichnis kein entsprechendes Script angelegt hat. Möchte man also vom Standard abweichende Einstellungen vornehmen muß man zunächst diese Standardversionen finden, in das eigene $HOME-Verzeichnis kopieren, umbenennen und kann dann dieses Startup-Script editieren. Dies sind die Namen einiger wichtiger Startup-Scripts:

    Programm Standard-Script Eigenes Script
    twm /usr/X11/lib/twm/system.twmrc .twmrc
    mwm /usr/X11/lib/system.mwmrc .mwmrc
    xinit /usr/X11/lib/xinit/xinitrc .xinitrc

  • Ressourcen. Fast alle Programme, die unter X laufen (sogenannte Clients) können bis ins Detail über Ressourcen modifiziert werden. Ohne hier ins Detail gehen zu wollen, sei gesagt, daß für jedes Element der Oberfläche (Knopf, Textfeld, Rahmen, etc.) sein Verhalten und Aussehen spezifiziert werden kann. Vom Standard abweichende Ressourcen werden in der Datei .Xdefaults festgelegt, die von jedem Client bei seinem Start gelesen wird. Um z.B. xtetris mit dem Label "Nicht spielen!" (statt "XTETRIS 2.5") zu versehen, muß folgende Zeile in .Xdefaults eingefügt werden:

    .xtetris.Frame.TitleBar.label: Nicht spielen!


Generelles


Links

Motivation Das komplett installierte X Window System benötigt unter QNX4 390 MB Plattenplatz. Auf jedem Rechner, an dem ernsthaft mit X gearbeitet werden soll, muß dieser Plattenplatz zur Verfügung gestellt werden, obgleich meistens nur ein geringer Teil der installierten Dateien dauerhaft benötigt wird.

Abhilfe Falls nicht extrem vielen X-Programmen und -Daten gearbeitet werden muß (viele Aufrufe bzw. lesende und schreibende Zugriffe), dann bietet sich eine Installation über Links an. Die Dateien werden vom Rechner, auf dem X normal installiert wurde (A) gelesen und auf dem Rechner, auf dem nur Links vorhanden sind (B) ausgeführt. A wird also nur hinsichtlich zusätzlicher Lese- und Schreibzugriffe belastet, nicht aber hinsichtlich eigentlicher Prozessorzeit.
Durchführung Alle X-relevanten Verzeichnisse müssen per Link auf dem Zielrechner (B) angelegt werden.

Dieses sind:

/usr/X11
/usr/lib/X11
/usr/bin/X11
/usr/gnu
/usr/man/manl
/usr/man/mann
/usr/lib/terminfo/x

Der Befehl zum Anlegen des Links für /usr/X11 sähe wie folgt aus:

ln -s //A/usr/X11 //B/usr/X11

Um diese Arbeit zu erleichtern, wurde das Shellscript linkX erstellt. Der Aufruf lautet

linkX A

Um die Links wieder zu entfernen (z.B. um X11 komplett auf B zu installieren oder Links auf einen anderen Rechner anzulegen) muß für alle X-relevanten Verzeichnisse(s.o.) z.B. folgender Befehl ausgeführt werden:

rm //B/usr/X11

Um auch diese Arbeit zu erleichtern, wurde das Shellscript unlinkX erstellt. Der Aufruf lautet

unlinkX

Fallen & Fußangeln Der Rechner A muß für B stets über das Netz sichtbar sein, um mit X arbeiten zu können.
Weitere Informationen QNX Utilities Reference: ln, rm

Maus

Motivation X ist für die Arbeit mit dreiknöpfigen Mäusen ausgelegt. Viele Funktionen sind nur über die mittlere Maustaste ausführ- bzw. ansprechbar. So erfolgt z.B.

  • ein Text-"Paste" von Client zu Client (xterm, Editor, Anwendung mit Eingabefeldern) durch Drücken auf die mittlere Maustaste
  • direktes Scrolling durch Ziehen am Scrollbar mit der mittleren Maustaste
  • das Aufblenden des Optionsmenüs im xterm nur beim gleichzeitigen Drücken auf <Ctrl> und die mittlere Maustaste
Abhilfe Der Maustreiber Mouse muß so gestartet werden, daß er die dritte Maustaste erkennt.

Durchführung In der Datei /etc/config/sysinit.Knotennummer muß der Befehl zum Starten des Maustreibers Mouse so geändert werden, daß - je nach Maustyp - entweder die MouseMan von Logitech (mman) oder die PS/2-Maus mit 3 Knöpfen (ps2+) unterstützt wird. Die anderen Optionen sollten beibehalten werden.

Bsp.:

Die Zeile

Mouse msoft </dev/ser1 &

wird umgewandelt in

Mouse mman </dev/ser1 &

Fallen & Fußangeln Einige QNX-Anwendungen kommen mit drei Knöpfen nicht klar. In diesem Fall muß der Maustreiber terminiert (slay Mouse) und mit den Parametern für eine zweiknöpfige Maus neugestartet werden. Z.B.:

slay mouse

Mouse msoft </dev/ser1

Weitere Informationen QNX Utilities Reference: Mouse, slay

QNX User's Guide: system initialization file


Shell mit History und Befehleditiermöglichkeit

Motivation Um in einer Shell angenehm arbeiten zu können, sind die Funktionen, die in einer normalen QNX-Shell geboten werden sehr hilfreich:
  • In einer Befehlszeile kann der Cursor nach links und rechts bewegt werden
  • Die letzten Befehle können durch Druck auf die Tasten ­ und ¯ traversiert werden.
Diese Funktionalität ist in einem xterm nicht standardmäßig vorhanden.

Abhilfe Dem einem xterm zugrundeliegende Terminal muß mitgeteilt werden, daß es sich wie ein X-Terminal verhalten soll. Damit dies für alle xterms gilt, sollte diese Einstellung möglichst zentral durchgeführt werden; am besten beim Starten von X.

Durchführung In die .xinitrc müssen vor dem Aufruf des Windowmanagers (mwm, twm, etc.) die folgenden Zeilen eingefügt werden:

# terminal settings
TERM=xterm
stty load
stty +edit

Weitere Informationen QNX Utilities Reference: stty

Hotkeyexit deaktivieren

Motivation Durch gleichzeitiges Drücken auf die Tasten <Ctrl>, <Alt> und <Backspace> kann X ohne Sicherheitsabfrage verlassen werden. Dieses kann unbeabsichtigt zu ärgerlichen Situationen und Datenverlust führen.

Abhilfe Mit configX kann der Hotkeyexit deaktiviert werden.
Durchführung configX aufrufen und im Menü " Options" den Menüpunkt "HotKeyExit" auswählen, so daß das dazugehörige Kästchen nicht mehr ausgefüllt erscheint. Das Programm mit "Save and Quit" aus dem Menü "File" verlassen.
Weitere Informationen QNX X Window System Installation & User's Guide: Using configX

Maßgeschneidertes


Eigene Menüs

Motivation Häufig benutzte Anwendungen müssen stets auf Neue von Hand aus einer Shell heraus gestartet werden. Nach Deaktivierung des Hotkeyexits kann X nur noch durch slay mwm verlassen werden.

Abhilfe In der .mwmrc können eigene Menüs und andere aussehensrelevante Dinge des Motif-Window-Managers festgelegt werden.

Durchführung Um X über das "Root Menu" (rechte Maustaste außerhalb eines Clients gedrückt gehalten) zu verlassen, muß hinter der Zeile

"Restart..." f.restart

in der Definition von DefaultRootMenu eingefügt werden:

"Quit..." f.quit_mwm

Um ein Menü mit häufig benutzten Anwendungen (z.B. xterm, ezfm, xman) auf die linke Maustaste zu legen, müssen folgende Zeilen eingefügt werden:

In der Definition von DefaultButtonBindings

<Btn1Down> root f.menu ApplicationMenu

Irgendwo außerhalb einer existierende Definition

           Menu ApplicationMenu
            {
             "Application Menu" f.title
             "Terminal" f.exec "xterm &"
             "Ezfm" f.exec "xqsh -e /usr/bin/ezfm &"
             "Manual" f.exec "../../usr/X11/bin/xman -notopbox
             &"
            }
         
Weitere Informationen X Window System User's Guide (Motif Edition): Customizing mwm

Deutsche Tastaturbelegung

Motivation Standardmäßig geht X von einer amerikanischen Tastaturbelegung aus. Umlaute und andere Deutschland-spezifische Tastenumlegungen (<Z> getauscht mit <Y>, etc.) werden nicht berücksichtigt.
Abhilfe Die Abbildung von Tasten (keycodes) auf Zeichen oder Funktionen (keysyms) wird in modmap-Dateien festgelegt. X muß mitgeteilt werden, daß die deutsche modmap benutzt werden soll.
Durchführung Um die Standardtastaturbelegung zu übergehen, muß eine eigene .Xmodmap angelegt werden. Da eine deutsche modmap bereits existiert, genügt es, die .Xmodmap als Link auf die deutsche modmap anzulegen:
ln -s /usr/X11/lib/xinit/Germany.modmap $HOME/.Xmodmap
Fallen & Fußangeln Die Germany.modmap ist fehlerhaft, wird aber von QNX in bälde korrigiert werden.

Weitere Informationen X Window System User's Guide: Setup clients: xmodmap

Lesbarer xterm-Font bei hoher Bildschirmauflösung

Motivation Bei Wahl einer hohen Bildschirmauflösung (wie sie zum sinnvollen Arbeiten oft notwendig ist) ist auf einigen Monitoren die Kantenschärfe und damit auch die Lesbarkeit der Texte im xterm extrem heruntergesetzt.
Abhilfe Für das xterm muß ein fetter Standardzeichensatz gewählt werden.
Durchführung In die .Xdefaults muß eingefügt werden:

.xterm.vt100.font: -misc-fixed-bold-r-normal--0-0-75-75-c-0-iso8859-1

Weitere Informationen X Window System User's Guide: Setting Resources, Font Specification

© 1999 by SW Datentechnik GmbH