Konfiguration

GDM verfügt über eine Reihe von Konfigurationsschnittstellen. Diese beinhalten Integrationspunkte für Skripte, die Daemon-Konfiguration, die Begrüßer-Konfiguration, allgemeine Sitzungseinstellungen, die Einbindung der Konfiguration des »gnome-settings-daemon« und die Sitzungskonfiguration. All diese Konfigurationsarten werden nachfolgend detailliert beschrieben.

5.1. Skripting-Integrationspunkte

Die Integrationspunkte für Skripte von GDM können im Ordner <etc>/gdm/ gefunden werden:

Xsession
Init/
PostLogin/
PreSession/
PostSession/

Die Init-, PostLogin-, PreSession- und PostSession-Skripte arbeiten alle wie unten beschrieben.

Für jeden Typ Skripts wird das Vorgabe-Skript, das ausgeführt wird, »Default« genannt und es wird in einem Ordner abgelegt, der mit dem Skripttyp assoziiert ist. D.h. das Vorgabe-Skript von Init lautet <etc>/gdm/Init/Default. Es kann ein Skript je Anzeige verwendet werden, und falls es existiert wird es an Stelle des Vorgabe-Skripts ausgeführt. Diese Skripte werden im selben Ordner abgelegt und haben den selben Namen wie der »DISPLAY«-Wert des Xserver für diese Anzeige. Falls zum Beispiel das Skript <Init>/:0 existiert wird es für die Anzeige »:0« ausgeführt.

Alle diese mit Systemverwalterrechten ausgeführten Skripte geben den Wert 0 zurück, falls die Ausführung erfolgreich war. Falls ein Fehler auftrat, der zum Abbruch der Anmeldesitzung führte, wird ein von 0 verschiedener Wert zurückgegeben. Beachten Sie auch, dass GDM bis zum Beenden der Skripte blockiert ist. Wenn eines dieser Skripte hängt, dann bleibt der Anmeldevorgang ebenfalls hängen.

Wenn der Xserver für den Anmeldebildschirm erfolgreich gestartet wurde, aber vor der Darstellung des Bildschirms, wird das Skript Init von GDM ausgeführt. Dieses Skript ist zum Starten von Programmen nützlich, die ausgeführt werden sollen, während der Anmeldebildschirm angezeigt wird, oder - falls erforderlich - für beliebige Initialisierungen.

Nachdem der Benutzer erfolgreich authentifiziert wurde wird von GDM das Skript PostLogin ausgeführt. Dies wird vor dem Aufsetzen einer Sitzung getan, auch vor dem Aufruf von »pam_open_session«. Dieses Skript ist nützlich für Initialisierungen, die vor dem Start der Sitzung geschehen müssen. Zum Beispiel könnte hier der persönliche Ordner des Benutzers angelegt werden.

Nach der Initialisierung der Sitzung wird das Skript PreSession von GDM ausgeführt. Dieses Skript ist nützlich für Initialisierungen, die nach dem Start der Sitzung geschehen müssen. Zum Beispiel kann es für die Sitzungsverwaltung oder die Benutzerverwaltung verwendet werden.

Wenn der Benutzer seine Sitzung beendet, führt GDM das Skript PostSession aus. Beachten Sie, dass der XServer gestoppt wird und während der Ausführung des Skripts nicht läuft. Daher kann in dieser Zeit nicht auf den X-Server zugegriffen werden.

Bedenken Sie, dass das Skript PostSession selbst dann ausgeführt wird, wenn die Anzeige z.B. wegen eines Ein-/Ausgabefehlers oder ähnlichem nicht mehr reagiert. Somit gibt es keine Garantie, dass X-Anwendungen während der Skriptausführung funktionieren.

Alle der oben genannten Skripte setzen die Umgebungsvariable $RUNNING_UNDER_GDM auf yes. Falls die Skripte auch durch andere Anmeldefenster genutzt werden, ermöglicht Ihnen dies die eindeutige Identifizierung des Aufrufs durch GDM. Auf diese Weise können Sie bestimmten Code ausführen, wenn GDM zum Einsatz kommt.

5.2. Autostart-Einstellungen

Der Ordner <share>/gdm/autostart/LoginWindow enthält Dateien im Format der »FreeDesktop.org Desktop Application Autostart Specification«. Funktionsmerkmale der Spezifikation können verwendet werden, um Programme anzugeben, die automatisch neugestartet oder ausgeführt werden sollen, wenn ein bestimmter Wert in der GConf-Konfiguration festgelegt ist usw.

Alle .desktop-Dateien in diesem Ordner werden einen automatischen Start der verknüpften Programme bei Erscheinen des Begrüßers auslösen. Von Haus aus wird GDM mit Dateien geliefert, die den einfachen grafischen Begrüßer, die Energieverwaltung, den Einstellungsdienst und den Fensterverwalter Metacity automatisch starten. Jene Programme werden vom Begrüßer benötigt. Zusätzlich werden Desktop-Dateien zum Starten verschiedener AT-Programme geliefert, wenn die im Abschnitt zur Barrierefreiheit angegebenen Konfigurationswerte eingestellt sind.

5.3. Xsession-Skript

Es gibt auch ein Skript Xsession im Ordner <etc>/gdm/Xsession, das zwischen den Skripten PreSession und PostSession aufgerufen wird. Dieses Skript unterscheidet nicht zwischen verschiedenen Anzeigen im Gegensatz zu den anderen. Es wird zum eigentlichen Starten der Benutzersitzung verwendet. Das Skript wird mit den Rechten des Benutzers ausgeführt und führt die Sitzung aus, die in der gewählten Desktop-Sitzungsdatei des Benutzers festgelegt ist.

5.4. Daemon-Konfiguration

Der GDM-Daemon wird über die Datei <etc>/gdm/custom.conf konfiguriert. Die voreingestellten Werte sind in der GConf-Datei gdm.schemas hinterlegt. Es wird empfohlen, dass Endanwender die Datei /etc/gdm/custom.conf anpassen, weil die Datei mit den Schemata überschrieben werden könnte, wenn die installierte Version von GDM aktualisiert wird.

Beachten Sie, dass ältere Versionen von GDM zusätzliche Einstellungsoptionen unterstützen, die in neueren GDM-Versionen nicht mehr verfügbar sind.

Die Datei <etc>/gdm/custom.conf ist im Schema keyfile formatiert. Schlüsselwörter in eckigen Klammern legen Gruppenabschnitte fest, Zeichenketten vor einem Gleichheitszeichen »=« sind Schlüssel und der zugehörige Wert steht hinter dem Gleichheitszeichen. Leere Zeilen und mit einer Raute (»#«) eingeleitete Zeilen werden ignoriert.

In der Datei /etc/gdm/custom.conf werden die Gruppenabschnitte »[daemon]«, »[security]« und »[xdmcp]« erkannt. Innerhalb jeder Gruppe legen bestimmte Paare aus Schlüsselwort und Wert das Verhalten von GDM fest. Zum Beispiel muss die Datei folgende Zeilen für eine automatische Anmeldung des Benutzers »Mustermann« enthalten:

[daemon]
TimedLoginEnable=true
TimedLogin=Mustermann

Es folgt die vollständige Liste unterstützter Konfigurationsschlüssel:

5.4.1. [chooser]

Multicast
Multicast=false

Falls wahr und IPv6 aktiviert ist, so sendet der Wähler Multicast-Anfragen ins lokale Netzwerk und sammelt Antworten von den Rechnern, die der Multicast-Gruppe beigetreten sind.

MulticastAddr
MulticastAddr=ff02::1

Dies ist die Link-Local Multicast-Adresse.

5.4.2. [daemon]

TimedLoginEnable
TimedLoginEnable=false

Legt fest, ob der mit TimedLogin festgelegte Benutzer nach einer bestimmten Anzahl inaktiver Sekunden (definiert durch TimedLoginDelay) auf dem Anmeldebildschirm angemeldet werden soll. Diese Funktion ist für öffentliche Zugangsrechner oder sogar für Heimanwender nützlich. Sobald der Benutzer die Tastatur benutzt oder Menüs öffnet, wird der Zähler auf 30 Sekunden oder auf TimedLoginDelay zurück gesetzt, je nachdem, welche Zahl größer ist. Wenn der Benutzer trotz Aufforderung keinen Benutzernamen eingibt und die Eingabetaste drückt, dann geht GDM davon aus, dass der Benutzer mit automatischer Anmeldung sich sofort anmelden möchte. Bedenken Sie, dass für diesen Benutzer kein Passwort abgefragt wird. Seien Sie also vorsichtig, auch wenn bei Verwendung von PAM eine Passworteingabe bei Anmeldung erzwungen werden kann. Lesen Sie im Handbuch den Abschnitt »Sicherheit - PAM« für weitere Informationen oder für Hilfe, wenn dieses Merkmal nicht zu funktionieren scheint.

TimedLogin
TimedLogin=

Dieser Benutzer wird nach einer bestimmten Anzahl inaktiver Sekunden automatisch angemeldet.

Wenn der Wert mit einem senkrechten Strich »|« (Unix-Umleitung) endet, dann wird GDM das angegebene Programm ausführen und die Standardausgabe des Programms als Benutzernamen verwenden. Das Programm wird mit gesetzter Variable »DISPLAY« ausgeführt, so dass es möglich ist, je nach Anzeige einen anderen Benutzer zu haben. Zum Beispiel für den Fall, dass der Wert »/usr/bin/getloginuser|« ist, wird das Programm »/usr/bin/getloginuser« ausgeführt, um den Benutzer zu ermitteln.

TimedLoginDelay
TimedLoginDelay=30

Verzögerung in Sekunden, bevor der durch TimedLogin festgelegte Benutzer angemeldet wird.

AutomaticLoginEnable
AutomaticLoginEnable=false

Legt fest, ob der durch AutomaticLogin festgelegte Benutzer sofort angemeldet werden soll. Dieses Merkmal entspricht einer verzögerten Anmeldung mit einer Verzögerung von 0 Sekunden.

AutomaticLogin
AutomaticLogin=

Dieser Benutzer wird sofort angemeldet, wenn AutomaticLoginEnable wahr ist.

Wenn der Wert mit einem senkrechten Strich »|« (Unix-Umleitung) endet, dann wird GDM das angegebene Programm ausführen und die Standardausgabe des Programms als Benutzernamen verwenden. Das Programm wird mit gesetzter Variable »DISPLAY« ausgeführt, so dass es möglich ist, je nach Anzeige einen anderen Benutzer zu haben. Zum Beispiel für den Fall, dass der Wert »/usr/bin/getloginuser|« ist, wird das Programm »/usr/bin/getloginuser« ausgeführt, um den Benutzer zu ermitteln.

User
User=gdm

Der Benutzername, unter dem der Begrüßer und andere grafische Programme ausgeführt werden. Lesen Sie für weitere Informationen über den Konfigurationsschlüssel Group und im Abschnitt »Sicherheit - GDM-Benutzer und Gruppen«.

Group
Group=gdm

Die Gruppe, unter welcher der Begrüßer und andere grafische Programme ausgeführt werden. Lesen Sie für weitere Informationen über den Konfigurationsschlüssel Benutzer und im Abschnitt »Sicherheit - GDM-Benutzer und Gruppen«.

5.4.3. Optionen zur Fehlerdiagnose

[debug]
Enable
Enable=false

Um die Diagnoseausgabe zu aktivieren, setzen Sie den Schlüssel »debug/Enable« in der Datei <etc>/gdm/custom.conf auf »wahr« und starten Sie GDM neu. Dann wird die Fehlerdiagnoseausgabe in der Systemprotokolldatei gespeichert, entweder <var>/log/messages oder <var>/adm/messages, abhängig von Ihrem Betriebssystem.

5.4.4. Optionen des Begrüßers

[greeter]
IncludeAll
IncludeAll=true

Falls wahr, so werden im Benutzeralbum alle Benutzer des lokalen Rechners angezeigt. Falls falsch, so werden im Benutzeralbum nur alle jüngst angemeldeten Benutzer angezeigt.

Wenn der Schlüssel wahr ist, wird GDM fgetpwent() aufrufen, um eine Liste der lokalen Benutzer des Systems zu ermitteln. Alle Benutzer mit einer Kennung kleiner als 500 (oder 100 auf Oracle Solaris-Systemen) werden dabei nicht angezeigt. Das Benutzeralbum wird ebenfalls alle Benutzer anzeigen, die sich zuvor am System angemeldet haben (wie zum Beispiel NIS/LDAP-Benutzer). GDM ermittelt die Liste per Aufruf der ConsoleKit-Schnittstelle ck-history. Es wird auch diejenigen Benutzer mit ungültiger Shell aussortieren (alle Shells, die getusershell() zurückgeben, sind gültige. /sbin/nologin oder /bin/false werden als ungültige Shells angesehen, selbst wenn sie getusershell() zurückgeben).

Wenn auf »falsch« gesetzt, dann wird GDM nur Benutzer anzeigen, die sich zuvor am System angemeldet haben (lokal oder über NIS/LDAP), indem die ConsoleKit-Schnittstelle ck-history aufgerufen wird.

Include
Include=

Legt eine Liste von Benutzern fest, die immer im Benutzeralbum angezeigt werden sollen. Dieser Wert ist eine Liste von Benutzern, die durch Kommata getrennt sind. Per Vorgabe ist dieser Wert leer.

Exclude
Exclude=bin,root,daemon,adm,lp,sync,shutdown,halt,mail,news,uucp,operator,nobody,nobody4,noaccess,postgres,pvm,rpm,nfsnobody,pcap

Legt eine Liste von Benutzern fest, die immer von der Anzeige im Benutzeralbum ausgeschlossen werden sollen. Beachten Sie, dass der Wert in der Datei custom.conf den Vorgabewert überschreibt. Wenn Sie zusätzliche Benutzer zu dieser Liste hinzufügen wollen, müssen Sie den Wert auf den Vorgabewert setzen und zusätzliche Benutzer an die Liste anhängen.

5.4.5. Sicherheitsoptionen

[security]
DisallowTCP
DisallowTCP=true

Falls aktiviert, wird beim Starten verbundener X-Server immer ein -nolisten tcp an die Befehlszeile angehängt, was eine TCP-Verbindung verhindert. Diese Konfiguration ist sicherer, wenn Sie keine entfernten Verbindungen verwenden.

5.4.6. XDMCP-Unterstützung

[xdmcp]
DisplaysPerHost
DisplaysPerHost=1

Um Angriffe durch Füllen der Warteschlange zu verhindern, erlaubt GDM nur eine Verbindung für jeden entfernten Rechner. Wenn Sie Anzeigedienste für Rechner mit mehr als einem Bildschirm bereitstellen möchten, sollten Sie diesen Wert entsprechend erhöhen.

Beachten Sie, dass die Anzahl erlaubter angebundener Anzeigen nicht beschränkt ist. Nur entfernte Verbindungen mittels XDMCP werden durch diese Option beschränkt.

Enable
Enable=false

Legt fest, ob Unterstützung für XDMCP aktiviert wird, so dass entfernte Anzeigen/X-Terminals durch GDM verwaltet werden.

gdm horcht nach Anfragen am UDP-Port 177. Weitere Informationen finden Sie in den Port-Optionen.

Falls GDM mit Unterstützung dafür kompiliert wurde, kann der Zugriff auf entfernte Displays mit Hilfe der Bibliothek »TCP Wrappers« gesteuert werden. Der Name des Dienstes lautet gdm.

Sie sollten

gdm:.my.domain
zu Ihrer Datei <etc>/hosts.allow, in Abhängigkeit zur Konfiguration der TCP-Wrappers hinzufügen. Lesen Sie die Hilfeseite zu hosts.allow für genauere Informationen.

Bitte beachten Sie, dass XDMCP kein ausgesprochen sicheres Protokoll ist. Es könnte daher eine gute Idee sein, in Ihrer Firewall-Konfiguration den UDP-Port 177 zu blockieren, falls Sie ihn nicht wirklich unbedingt brauchen.

HonorIndirect
HonorIndirect=true

Aktiviert den Wähler durch »XDMCP INDIRECT« (d.h. ein entferntes Ausführen von gdmchooser) für X-Terminals, die keinen eigenen Wähler bereit stellen.

MaxPending
MaxPending=4

Zur Vermeidung von massiven Überlastungsangriffen besitzt GDM eine Warteschlange fester Länge von ausstehenden Verbindungen. Es können höchstens so viele Anzeigen gleichzeitig gestartet werden, wie in »MaxPending« angegeben ist.

Bitte beachten Sie, dass dieser Parameter nicht die Anzahl der verwaltbaren entfernten Displays begrenzt, sondern lediglich die Anzahl der Displays, die eine Verbindung gleichzeitig initiieren.

MaxSessions
MaxSessions=16

Bestimmt die maximale Anzahl Verbindungen zu entfernten Displays, die gleichzeitig verwaltet werden. Anders ausgedrückt, die Gesamtzahl entfernter Displays, die Ihr Rechner nutzen kann.

MaxWait
MaxWait=30

Wenn GDM zur Verwaltung einer Anzeige bereit ist , wird an diese ein »ACCEPT«-Paket mit einer eindeutigen Sitzungskennung gesendet, die bei weiterer Kommunikation verwendet wird.

GDM wird dann die Sitzungskennung in die Liste ausstehender Verbindungen einfügen und auf eine »MANAGE«-Anfrage als Antwort der Anzeige warten.

Wenn keine Antwort innerhalb »MaxWait« Sekunden empfangen wird, dann wird GDM die Anzeige als verschwunden ansehen und den Eintrag aus der Liste ausstehender Verbindungen entfernen und einen freien Platz für eine andere Anzeige schaffen.

MaxWaitIndirect
MaxWaitIndirect=30

Der Parameter »MaxWaitIndirect« bestimmt die maximale Anzahl erlaubter Sekunden zwischen der Rechnerauswahl eines Benutzers und der folgenden indirekten Anfrage an den Rechner, wo der Benutzer verbunden ist. Wenn der Zähler abläuft, werden die Informationen über den gewählten Rechner verworfen und der indirekte Platz für andere Anzeigen frei gemacht. Die Informationen können früher verworfen werden falls mehr Rechner versuchen indirekte Anfragen zu senden, als durch MaxPendingIndirect erlaubt.

PingIntervalSeconds
PingIntervalSeconds=60

Wenn der Xserver nicht in der festgelegten Anzahl Sekunden antwortet, dann wird die Verbindung unterbrochen und die Sitzung beendet. In diesem Fall wird der Daemon mit einem ALARM-Signal beendet. Beachten Sie, dass GDM 2.20 und ältere diese Einstellung mit 2 multiplizierten, d.h. es kann erforderlich sein, dass der Zeitablauf bei einer Aktualisierung von GDM 2.20 oder älteren auf eine neuere Version erhöht werden muss.

Beachten Sie, dass in der Vergangenheit GDM einen Konfigurationsschlüssel »PingInterval« hatte, der auch die Einheit Minuten hatte. Für die meisten Zwecke kann diese Einstellung kleiner als eine Minute gewählt werden. Jedoch würde in den meisten Fällen, in denen XDMCP verwendet wird (wie in Terminal-Laboren), eine Verzögerung von mehr als etwa 15 Sekunden dazu führen, dass das Terminal ausgeschaltet oder neu gestartet wird, und man die Sitzung beenden möchte.

Port
Port=177

Die UDP-Portnummer, auf der gdm nach XDMCP-Anfragen horchen soll. Ändern Sie den Wert nur dann, wenn Sie genau wissen, was Sie tun.

Willing
Willing=<etc>/gdm/Xwilling

Wenn der Rechner ein »WILLING«-Paket nach einem »QUERY« zurücksendet, so wird eine Zeichenkette gesendet, die den aktuellen Status des Server vermittelt. Die vorgegebene Nachricht ist die Systemkennung, aber es ist möglich ein Skript zu erstellen, das angepasste Nachrichten anzeigen lässt. Wenn das Skript nicht vorhanden ist oder der Schlüssel leer ist, so wird die Vorgabenachricht gesendet. Wenn das Skript existiert und eine Ausgabe zurückgibt, dann wird (nur) die erste Zeile der Ausgabe gesendet. Es wird höchstens alle 3 Sekunden ausgeführt, um eine möglich Überlastung des Rechners durch eine Flut von »QUERY«-Paketen zu verhindern.

5.5. Einfache Konfiguration des Begrüßers

Der voreingestellte GDM-Begrüßer heißt »einfacher Begrüßer« und wird mit GConf konfiguriert. Die Vorgabewerte werden in GConf in der Datei gdm-simple-greeter.schemas hinterlegt. Diese Werte können aufgehoben werden, wenn der Benutzer »gdm« einen schreibbaren persönlichen Ordner zum Speichern der GConf-Einstellungen besitzt. Die Werte können mit den Programmen gconftool-2 oder gconf-editor bearbeitet werden. Die folgenden Einstellungsoptionen werden unterstützt:

Konfigurationsschlüssel für den Begrüßer
/apps/gdm/simple-greeter/banner_message_enable
falsch (Boolesche Variable)

Legt fest, ob die Bannernachricht angezeigt wird.

/apps/gdm/simple-greeter/banner_message_text
NULL (Zeichenkette)

Legt die Textnachricht im Banner des Begrüßerfensters fest.

/apps/gdm/simple-greeter/disable_restart_buttons
falsch (Boolesche Variable)

Legt fest, ob die Knöpfe für den Neustart im Anmeldefenster angezeigt werden.

/apps/gdm/simple-greeter/disable_user_list
falsch (Boolesche Variable)

Legt fest, ob das Benutzeralbum mit bekannten Benutzern nicht im Anmeldefenster angezeigt wird.

/apps/gdm/simple-greeter/logo_icon_name
computer (Zeichenkette)

Legt den Symbolnamen des Themas für das Logo im Begrüßer fest.

/apps/gdm/simple-greeter/recent-languages
[] (Liste aus Zeichenketten)

Legt die Liste aller Sprachen fest, die als Voreinstellung im Anmeldefenster angezeigt werden. Der Vorgabewert ist »[]«. Mit dem Vorgabewert wird nur die systemweit voreingestellte Sprache angezeigt und die Option »Weitere …«, die ein Dialogfenster mit allen verfügbaren Sprachen zum Auswählen einblendet.

Benutzer sollten diese Einstellung nicht manuell ändern. GDM merkt sich die gewählten Sprachen in diesem Konfigurationsschlüssel und sie werden im Auswahlfeld zusammen mit den Sprachen aus dem Dialogfeld »Weitere …« angezeigt. Auf diese Weise können oft gewählte Sprachen leichter ausgewählt werden.

/apps/gdm/simple-greeter/recent-layouts
[] (Liste aus Zeichenketten)

Legt die voreingestellte Liste der im Panel angezeigten Tastaturbelegungen fest. Mit dem Vorgabewert wird nur die systemweit voreingestellte Tastaturbelegung angezeigt und die Option »Weitere …«, die ein Dialogfenster mit allen verfügbaren Belegungen zum Auswählen einblendet.

Benutzer sollten diese Einstellung nicht manuell ändern. GDM merkt sich die gewählten Tastaturbelegungen in diesem Konfigurationsschlüssel und sie werden im Auswahlfeld zusammen mit den Belegungen aus dem Dialogfeld »Weitere …« angezeigt. Auf diese Weise können oft gewählte Tastaturbelegungen leicht ausgewählt werden.

/apps/gdm/simple-greeter/wm_use_compiz
falsch (Boolesche Variable)

Legt fest, ob Compiz als Fenstermanager anstelle von Metacity verwendet wird.

5.6. Konfiguration der Barrierefreiheit

Dieser Abschnitt beschreibt die Konfiguration der Einstellungen der Barrierefreiheit in GDM.

5.6.1. GDM-Dialog zur Barrierefreiheit und GConf-Schlüssel

Das Begrüßer-Panel von GDM zeigt im Anmeldebildschirm ein Barrierefreiheits-Symbol. Ein Klick auf das Symbol öffnet den Dialog der GDM-Barrierefreiheit. Im Dialog gibt es eine Liste von Ankreuzfeldern zum Aktivieren und Deaktivieren verschiedener Hilfstechnologien.

Die Ankreuzfelder für die Hilfswerkzeuge Bildschirmtastatur, Bildschirmlupe und Bildschirmleser wirken sich auf drei GConf-Schlüssel aus, die im nächsten Abschnitt der Hilfeseite beschrieben werden. Durch Auswählen der Ankreuzfelder wird der entsprechende GConf-Schlüssel auf »wahr« oder »falsch« eingestellt. Wenn der GConf-Schlüssel auf wahr gesetzt ist, werden die mit diesem Schlüssel verknüpften Hilfswerkzeuge gestartet. Wenn der GConf-Schlüssel auf falsch gesetzt ist, werden alle mit diesem Schlüssel verknüpften Hilfswerkzeuge beendet. Diese Schlüssel werden nicht automatisch auf eine Voreinstellung zurückgesetzt, nachdem sich ein Benutzer angemeldet hat. Das bedeutet, dass die aktiven Hilfstechnologien der letzten GDM-Sitzung auch automatisch in folgenden Sitzungen gestartet werden.

Die anderen Ankreuzfelder im GDM-Dialog zur Barrierefreiheit haben keine zugeordneten GConf-Schlüssel, weil kein zusätzliches Programm zur Aktivierung der Merkmale gestartet werden muss. Sie entsprechen Merkmalen der Barrierefreiheit, die vom Xserver bedient werden können, der immer während einer GDM-Sitzung läuft.

5.6.2. GConf-Schlüssel der Barrierefreiheit

GDM bietet die folgenden GConf-Schlüssel zur Steuerung der Barrierefreiheit:

Konfigurationsschlüssel von GDM
/desktop/gnome/interface/accessibility
falsch (Boolesche Variable)

Legt fest, ob die Barrierefreiheits-Infrastruktur zusammen mit der GDM-Benutzeroberfläche gestartet werden soll. Dies ist für die Funktion von Barrierefreiheits-Anwendungen notwendig.

/desktop/gnome/applications/at/screen_magnifier_enabled
falsch (Boolesche Variable)

Legt fest, ob die mit diesem GConf-Schlüssel verknüpften Hilfstechnologien mit der GDM-Oberfläche gestartet werden. Die Voreinstellung ist eine Bildschirmlupe.

/desktop/gnome/applications/at/screen_keyboard_enabled
falsch (Boolesche Variable)

Legt fest, ob die mit diesem GConf-Schlüssel verknüpften Hilfstechnologien mit der GDM-Oberfläche gestartet werden. Die Voreinstellung ist eine Bildschirmtastatur.

/desktop/gnome/applications/at/screen_reader_enabled
falsch (Boolesche Variable)

Legt fest, ob die mit diesem GConf-Schlüssel verknüpften Hilfstechnologien mit der GDM-Oberfläche gestartet werden. Die Voreinstellung ist ein Bildschirmleser.

5.6.3. GConf-Schlüssel mit Werkzeugen der Barrierefreiheit verknüpfen

Bei den GConf-Schlüsseln »screen_magnifier_enabled«, »the screen_keyboard_enabled« und »screen_reader_enabled« hängt das Hilfswerkzeug, das gestartet wird, von den .desktop-Dateien im Autostart-Ordner von GDM ab, wie es im Abschnitt »Autostart-Einstellungen« dieses Handbuchs beschrieben wird. Jede .desktop-Datei im Autostart-Ordner von GDM kann mit diesen GConf-Schlüsseln verknüpft werden über den Eintrag »AutostartCondition« in der .desktop-Datei. Eine Zeile mit dem Eintrag »AutostartCondition« könnte genau so aussehen wie eine der Folgenden:

AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_magnifier_enabled
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_reader_enabled

Wenn ein Schlüssel der Barrierefreiheit auf wahr festgelegt ist, dann wird jedes Programm gestartet, dass in einer .desktop-Datei von GDM mit dem Schlüssel verknüpft ist (es sei denn, der Schlüssel ist in einer .desktop-Datei auf »Hidden« (versteckt) gesetzt). Ein einziger GConf-Schlüssel kann sogar mehrere Hilfswerkzeuge starten, wenn mehrere .desktop-Dateien mit diesem Schlüssel »AutostartCondition« im Autostart-Ordner von GDM sind.

5.6.4. Beispiel zur Bearbeitung der Einstellungen eines Werkzeuges der Barrierefreiheit

Wenn zum Beispiel GOK in Ihrer GNOME-Version als Bildschirmtastatur voreingestellt ist, dann könnte es durch ein anderes bevorzugtes Programm ersetzt werden. Um GOK durch die Bildschirmtastatur »onboard« zu ersetzen und zusätzlich das Hilfswerkzeug »mousetweaks« zur Unterstützung des verzögerten Klicks zu aktivieren, wird die folgende Konfiguration benötigt.

Erstellen Sie eine .desktop-Datei für »onboard« und eine zweite für »mousetweaks«, zum Beispiel mit den Namen »onboard.desktop« und »mousetweaks.desktop«. Diese Dateien müssen im Autostart-Ordner von GDM abgelegt werden und im wie in Abschnitt »Autostart-Einstellungen« beschriebenen Format vorliegen.

Im Folgenden ist ein Beispiel für eine Datei onboard.desktop:

[Desktop Entry]
Encoding=UTF-8
Name=Onboard Onscreen Keyboard
Comment=Use an on-screen keyboard
TryExec=onboard
Exec=onboard --size 500x180 -x 20 -y 10
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Accessibility;
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled

Im Folgenden ein Beispiel der Datei mousetweaks.desktop :

[Desktop Entry]
Encoding=UTF-8
Name=Software Mouse-Clicks
Comment=Perform clicks by dwelling with the pointer
TryExec=mousetweaks
Exec=mousetweaks --enable-dwell -m window -c -x 20 -y 240 
Terminal=false
Type=Application
StartupNotify=true
Categories=GNOME;GTK;Accessibility;
AutostartCondition=GNOME /desktop/gnome/applications/at/screen_keyboard_enabled

Beachten Sie die Zeile mit »AutostartCondition«, die beide .desktop-Dateien mit dem GConf-Schlüssel für die Bildschirmtastatur verknüpft.

Um den Start von GOK zu verhindern, muss die .desktop-Datei für die GOK-Bildschirmtastatur entfernt oder deaktiviert werden. Anderenfalls würden onboard und GOK zugleich gestartet werden. Dies kann durch Löschen der Datei »gok.desktop« aus dem Autostart-Ordner von GDM erzielt werden, oder durch Hinzufügen der Schlüsseleinstellung »Hidden=true« in der Datei »gok.desktop«.

Nach dem Durchführen diese Änderungen wird GOK nicht mehr gestartet, wenn der Benutzer die Bildschirmtastatur in der GDM-Sitzung aktiviert; jedoch werden stattdessen »onboard« und »mousetweaks« gestartet.

5.7. Allgemeine Sitzungseinstellungen

Der GDM-Begrüßer verwendet einen Teil des Framework, das Ihre Sitzung verwendet. Einige GConf-Einstellungen werden gemeinsam verwendet. Der Begrüßer verwendet die Vorgabewerte, wenn diese nicht explizit durch a) zwingende GDM-Richtlinien oder b) zwingende Systemrichtlinien überschrieben werden. GDM installiert eine eigene zwingende Richtlinie zum Einschränken des Zugriffs auf einige Sicherheitseinstellungen.

5.8. GNOME-Einstellungsdaemon

GDM aktiviert die folgenden Plugins von gnome-settings-daemon: a11y-keyboard, background, sound, xsettings.

Diese sind verantwortlich für Dinge wie das Hintergrundbild, die Schrift, die Einstellungen für das Thema, Klänge etc.

Plugins können auch mittels GConf deaktiviert werden. Wenn Sie beispielsweise das Sound-Plugin deaktivieren wollen, dann deaktivieren Sie den folgenden Schlüssel: /apps/gdm/simple-greeter/settings-manager-plugins/sound/active.

5.9. GDM-Sitzungseinstellungen

GDM-Sitzungen werden durch die Spezifikation zum FreeDesktop.org Desktop-Eintrag angegeben, welche unter der folgenden Adresse abgerufen werden kann: http://www.freedesktop.org/wiki/Specifications/desktop-entry-spec.

Laut Vorgabe wird GDM die .desktop-Dateien in den Ordner <share>/xsessions installieren. GDM durchsucht die folgenden Ordner in angegebener Reihenfolge nach .desktop-Dateien: <etc>/X11/sessions/, <dmconfdir>/Sessions, <share>/xsessions und <share/gdm/BuiltInSessions. Nach Voreinstellung ist <dmconfdir> eingestellt auf <etc>/dm/, es sei denn, GDM ist durch die Option »--with-dmconfdir« angehalten, einen anderen Ordner zu verwenden.

Eine Sitzung kann deaktiviert werden, indem Sie die Desktop-Datei bearbeiten und die folgende Zeile hinzufügen: Hidden=true .

Die Desktop-Dateien von GDM unterstützen eine GDM-spezifische Erweiterung, einen Schlüssel namens »X-GDM-BypassXsession«. Falls der Schlüssel in einer *.desktop-Datei nicht enthalten ist, wird der Wert per Vorgabe auf »falsch« gesetzt. Falls der Schlüssel in einer *.desktop-Datei enthalten ist, startet GDM das Programm, welches im »Exec«-Schlüssel der *.desktop-Datei angegeben ist, direkt nach dem Start der Benutzersitzung. Das Programm wird nicht über das <etc>/gdm/Xsession-Skript ausgeführt, was normalerweise geschieht. Durch Umgehen des <etc>/gdm/Xsession-Skripts wird vermieden, die Benutzersitzung mit den normalen System- und Benutzereinstellungen zu starten. Auf diese Weise gestartete Sitzungen können für die Fehlerdiagnose des Systems genutzt werden oder zum Test von Benutzerskripten, die möglicherweise einen Benutzer am Start einer Sitzung hindern.

5.10. Konfiguration der GDM-Benutzersitzung und Sprache

Die Standardsitzung des Benutzers und die Sprachauswahl werden in der Datei ~/.dmrc gespeichert. Wenn sich ein Benutzer erstmalig anmeldet, wird diese Datei anhand der vom Benutzer eingegebenen Werte angelegt. Der Benutzer kann diese Standardwerte jedes Mal beim Anmelden durch einfache Neueingabe ändern. GDM speichert diese Änderungen für folgende Anmeldungen.

Die Datei ~/.dmrc wird im INI-Format gespeichert. Sie beinhaltet einen mit [Desktop] bezeichneten Abschnitt, welcher zwei Schlüssel enthält: Session und Language.

Der Schlüssel Session definiert den Basisnamen der .desktop-Datei, die der Benutzer normalerweise verwenden will, aber ohne die Erweiterung ».desktop«. Der Schlüssel Language legt die voreingestellte Sprache fest, die der Benutzer verwenden möchte. Wenn irgendein Schlüssel fehlt, so wird die systemweite Vorgabe verwendet. Die Datei sieht normalerweise folgendermaßen aus:

[Desktop]
Session=gnome
Language=de_DE.UTF-8