Zum Inhalt springenZur Seitennavigation springen: vorherige Seite [Zugriffstaste p]/nächste Seite [Zugriffstaste n]
documentation.suse.com / SUSE Linux Enterprise Desktop-Dokumentation / Verwaltungshandbuch / System / Über die grafische Benutzeroberfläche
Gilt für SUSE Linux Enterprise Desktop 15 SP5

25 Über die grafische Benutzeroberfläche

SUSE Linux Enterprise Desktop umfasst den X.org-Server, Wayland und den GNOME-Desktop. In diesem Kapitel wird die Konfiguration der grafischen Benutzeroberfläche für alle Benutzer beschrieben.

25.1 X Window System

Der X.org-Server ist die allgemeine Norm für die Implementierung des X11-Protokolls. X ist netzwerkbasiert und ermöglicht es, auf einem Host gestartete Anwendungen auf einem anderen, über eine beliebige Art von Netzwerk (LAN oder Internet) verbundenen Host anzuzeigen.

Das X Window System muss in den meisten Fällen nicht konfiguriert werden. Die Hardware wird beim Starten von X dynamisch erkannt. Die Nutzung von xorg.conf ist daher überholt. Wenn Sie die Funktionsweise von X dennoch mit benutzerdefinierten Optionen ändern möchten, können Sie die Konfigurationsdateien unter /etc/X11/xorg.conf.d/ entsprechend bearbeiten.

In SUSE Linux Enterprise Desktop 15 SP5 ist Wayland als Alternative zum X.org-Server enthalten. Dies kann während der Installation ausgewählt werden.

Installieren Sie das xorg-docs-Paket, um detailliertere Informationen zu X11 zu erhalten. Auf der man-Seite man 5 xorg.conf finden Sie weitere Informationen zum Format der manuellen Konfiguration (falls erforderlich). Weitere Informationen zur X11-Entwicklung finden Sie auf der Startseite des Projekts unter http://www.x.org.

Die Treiber befinden sich in xf86-video-*-Paketen, beispielsweise xf86-video-ati. Viele der Treiber, die mit diesen Paketen geliefert werden, sind ausführlich in der zugehörigen man-Seite beschrieben. Wenn Sie beispielsweise den ati-Treiber verwenden, erhalten Sie weitere Informationen auf der man-Seite man 4 ati.

Informationen über Treiber von Drittanbietern finden Sie unter /usr/share/doc/packages/<package_name>. Beispielsweise ist die Dokumentation von x11-video-nvidiaG03 nach der Installation des Pakets in /usr/share/doc/packages/x11-video-nvidiaG04 verfügbar.

Installieren Sie das Paket xrdp auf einem Server und greifen Sie mithilfe einer RDP-Client-Software über das Remote-Desktop-Protokoll auf den Server zu.

25.2 Installation und Konfiguration von Schriften

Schriften in Linux lassen sich in zwei Gruppen gliedern:

Outline- oder Vektorschriften

Enthält eine mathematische Beschreibung als Informationen zum Zeichnen der Form einer Glyphe. Die Glyphen können dabei auf eine beliebige Größe skaliert werden, ohne dass die Qualität darunter leidet. Bevor Sie eine solche Schrift (oder Glyphe) verwenden können, müssen die mathematischen Beschreibungen in ein Raster überführt werden. Dieser Vorgang wird als Schriftrasterung bezeichnet. Beim Schrift-Hinting (in der Schrift eingebettet) wird das Rendering-Ergebnis für eine bestimmte Größe optimiert. Die Rasterung und das Hinting erfolgen mit der FreeType-Bibliothek.

Unter Linux werden häufig die Formate PostScript Typ 1 und Typ 2, TrueType und OpenType verwendet.

Bitmap- oder Rasterschriften

Besteht aus einer Pixelmatrix, die auf eine bestimmte Schriftgröße abgestimmt ist. Bitmap-Schriften lassen sich äußerst schnell und einfach rendern. Im Gegensatz zu Vektorschriften können Bitmap-Schriften jedoch nicht ohne Qualitätseinbußen skaliert werden. Diese Schriften werden daher meist in unterschiedlichen Größen bereitgestellt. Selbst heute noch werden Bitmap-Schriften in der Linux-Konsole und teils auch auf Terminals verwendet.

Unter Linux sind das Portable Compiled Format (PCF) und das Glyph Bitmap Distribution Format (BDF) die häufigsten Formate.

Das Erscheinungsbild dieser Schriften wird durch zwei wichtige Faktoren beeinflusst:

  • Auswählen einer geeigneten Schriftfamilie

  • Rendern der Schrift mit einem Algorithmus, der optisch ansprechende Ergebnisse bewirkt.

Der letzte Punkt ist nur für Vektorschriften relevant. Die beiden obigen Punkte sind stark subjektiv; dennoch müssen einige Standardvorgaben festgelegt werden.

Linux-Schriftrenderingsysteme bestehen aus mehreren Bibliotheken mit unterschiedlichen Beziehungen. Die grundlegende Schriftrenderingbibilothek FreeType konvertiert die Schriftglyphen von unterstützten Formaten in optimierte Bitmap-Glyphen. Der Renderingvorgang wird durch einen Algorithmus und die zugehörigen Parameter gesteuert (unter Umständen patentrechtlich geschützt).

Alle Programme und Bibliotheken, die mit FreeType arbeiten, sollten auf die Fontconfig-Bibliothek zurückgreifen. In dieser Bibliothek werden die Schriftkonfigurationen von Benutzern und vom System gesammelt. Wenn ein Benutzer die Fontconfig-Einstellung ergänzt, entstehen durch diese Änderung Fontconfig-fähige Anwendungen.

Ein eingehenderes OpenType-Shaping für Skripte wie Arabic, Han oder Phags-Pa und andere höhere Textverarbeitung erfolgt mit Harfbuzz oder Pango.

25.2.1 Anzeigen der installierten Schriften

Mit dem Kommando rpm oder fc-list erhalten Sie einen Überblick über die Schriften, die auf dem System installiert sind. Beide Kommandos liefern eine aussagekräftige Antwort, geben dabei jedoch (je nach System- und Benutzerkonfiguration) ggf. unterschiedliche Listen zurück:

rpm

rpm zeigt die auf dem System installierten Software-Pakete an, in denen sich Schriften befinden:

> rpm -qa '*fonts*'

Alle Schriftpakete sollten mit diesem Ausdruck aufgefunden werden. Unter Umständen gibt das Kommando jedoch einige falsch positive Einträge zurück, beispielsweise fonts-config (dies ist weder eine Schrift noch sind hier Schriften enthalten).

fc-list

Mit fc-list erhalten Sie einen Überblick darüber, welche Schriftfamilien verfügbar sind und ob diese auf dem System oder in Ihrem Benutzerverzeichnis installiert sind:

> fc-list ':' family
Anmerkung
Anmerkung: Kommando fc-list

Das Kommando fc-list ist eine Erweiterung zur Fontconfig-Bibliothek. Aus Fontconfig – oder genauer gesagt, aus dem Cache – lassen sich zahlreiche interessante Informationen ermitteln. Weitere Einzelheiten finden Sie unter man 1 fc-list.

25.2.2 Anzeigen von Schriften

Mit dem Kommando ftview (Paket ft2demos) sowie unter http://fontinfo.opensuse.org/ sehen Sie, wie eine installierte Schriftfamilie dargestellt wird. Soll beispielsweise die Schrift FreeMono in 14 Punkt angezeigt werden, verwenden Sie ftview wie folgt:

> ftview 14 /usr/share/fonts/truetype/FreeMono.ttf

Unter http://fontinfo.opensuse.org/ erfahren Sie, welche Schriftschnitte (normal, fett, kursiv usw.) und welche Sprachen unterstützt werden.

25.2.3 Abfragen von Schriften

Mit dem Kommando fc-match fragen Sie ab, welche Schrift für ein angegebenes Muster verwendet wird.

Wenn das Muster beispielsweise eine bereits installierte Schrift enthält, gibt fc-match den Dateinamen, die Schriftfamilie und den Schriftschnitt zurück:

> fc-match 'Liberation Serif'
LiberationSerif-Regular.ttf: "Liberation Serif" "Regular"

Ist die gewünschte Schrift nicht auf dem System vorhanden, greifen die Ähnlichkeitsregeln von Fontconfig und es werden verfügbare Schriften mit der größtmöglichen Ähnlichkeit gesucht. Ihre Anforderung wird also ersetzt:

> fc-match 'Foo Family'
DejaVuSans.ttf: "DejaVu Sans" "Book"

Fontconfig unterstützt Aliasse: Ein Name wird durch den Namen einer anderen Schriftfamilie ersetzt. Ein typisches Beispiel sind generische Namen wie sans-serif, serif und monospace. Diese Alias-Namen können durch echte Familiennamen und sogar durch eine Präferenzliste mit Familiennamen ersetzt werden:

> for font in serif sans mono; do fc-match "$font" ; done
DejaVuSerif.ttf: "DejaVu Serif" "Book"
DejaVuSans.ttf: "DejaVu Sans" "Book"
DejaVuSansMono.ttf: "DejaVu Sans Mono" "Book"

Das Ergebnis auf Ihrem System kann abweichen, abhängig davon, welche Schriften derzeit installiert sind.

Anmerkung
Anmerkung: Ähnlichkeitsregeln in Fontconfig

Fontconfig gibt immer eine reale Schriftfamilie (sofern mindestens eine Familie installiert ist) für die angegebene Anforderung zurück, die so ähnlich ist wie möglich. Die Ähnlichkeit ist abhängig von den internen Metriken von Fontconfig sowie von den Fontconfig-Einstellungen des Benutzers oder Administrators.

25.2.4 Installieren von Schriften

Zum Installieren einer neuen Schrift stehen die folgenden wichtigsten Verfahren zur Auswahl:

  1. Installieren Sie die Schriftdateien (z. B. *.ttf oder *.otf) manuell in ein bekanntes Schriftverzeichnis. Wenn die Schriften systemweit verfügbar sein sollen, verwenden Sie das Standardverzeichnis /usr/share/fonts. Für die Installation in Ihrem Benutzerverzeichnis verwenden Sie ~/.config/fonts.

    Falls Sie nicht die standardmäßigen Verzeichnisse verwenden möchten, können Sie in Fontconfig ein anderes Verzeichnis auswählen. Hierzu geben Sie das Element <dir> an. Weitere Informationen finden Sie in Abschnitt 25.2.5.2, „Kurzer Einblick in Fontconfig-XML“.

  2. Installieren Sie die Schriften mit zypper. Zahlreiche Schriften sind bereits als Paket verfügbar, beispielsweise in der SUSE-Distribution oder im Repository M17N:fonts. Fügen Sie das Repository mit dem nachfolgenden Kommando in die Liste ein. So fügen Sie beispielsweise ein Repository für SUSE Linux Enterprise Desktop 15 SP5 hinzu:

    > sudo zypper ar
         https://download.opensuse.org/repositories/M17N:/fonts/SLE_15/

    FONT_FAMILY_NAME ermitteln Sie mit dem folgenden Kommando:

    > zypper se 'FONT_FAMILY_NAME*fonts'

25.2.5 Konfigurieren der Darstellung von Schriften

Je nach Renderingmedium und Schriftgröße entstehen womöglich keine zufriedenstellenden Ergebnisse. Ein durchschnittlicher Monitor hat beispielsweise eine Auflösung von 100dpi. Bei dieser Auflösung sind die Pixel zu groß und die Glyphen wirken plump und unförmig.

Für niedrigere Auflösungen stehen mehrere Algorithmen bereit, z. B. Anti-Aliasing (Graustufenglättung), Hinting (Anpassen an das Raster) oder Subpixel-Rendering (Verdreifachen der Auflösung in eine Richtung). Diese Algorithmen können dabei von Schriftformat zu Schriftformat unterschiedlich sein.

Mit Fontconfig können Sie den Rendering-Algorithmus für einzelne Schriften oder auch für eine Gruppe von Schriften gleichzeitig auswählen.

25.2.5.1 Konfigurieren von Schriften mit sysconfig

SUSE Linux Enterprise Desktop umfasst eine sysconfig-Schicht oberhalb von Fontconfig. Dies ist ein guter Ausgangspunkt, um mit der Schriftkonfiguration zu experimentieren. Zum Ändern der Standardeinstellungen bearbeiten Sie die Konfigurationsdatei /etc/sysconfig/fonts-config. (Alternativ verwenden Sie das YaST-Modul sysconfig.) Führen nach dem Bearbeiten der Datei fonts-config aus:

> sudo /usr/sbin/fonts-config

Starten Sie die Anwendung neu, damit der Effekt sichtbar wird. Beachten Sie Folgendes:

  • Einige Anwendungen müssen nicht neu gestartet werden. Firefox liest die Fontconfig-Konfiguration beispielsweise in regelmäßigen Abständen aus. Auf soeben erstellten oder neu geladenen Registerkarten werden die Schriftkonfigurationen erst später sichtbar.

  • Nach jedem Installieren oder Entfernen eines Pakets wird automatisch das Skript fonts-config aufgerufen. (Ist dies nicht der Fall, so ist das Schriften-Software-Paket fehlerhaft.)

  • Jede sysconfig-Variable kann vorübergehend mit der Kommandozeilenoption fonts-config überschrieben werden. Ausführliche Informationen finden Sie unter fonts-config --help.

Es können verschiedene sysconfig-Variablen geändert werden. Weitere Informationen finden Sie auf der man-Seite man 1 fonts-config oder auf der Hilfeseite des YaST-Moduls sysconfig. Beispiele für Variablen:

Verwendung der Rendering-Algorithmen

Ziehen Sie Folgende in Betracht: FORCE_HINTSTYLE, FORCE_AUTOHINT, FORCE_BW, FORCE_BW_MONOSPACE, USE_EMBEDDED_BITMAPS und EMBEDDED_BITMAP_LANGAGES.

Präferenzliste generischer Aliasse

Verwenden Sie PREFER_SANS_FAMILIES, PREFER_SERIF_FAMILIES, PREFER_MONO_FAMILIES und SEARCH_METRIC_COMPATIBLE.

In der nachfolgenden Liste finden Sie einige Konfigurationsbeispiele, sortiert von den am leichtesten lesbaren Schriften (stärkerer Kontrast) zu den ansprechendsten Schriften (stärker geglättet).

Bitmap-Schriften

Mit den Variablen PREFER_*_FAMILIES können Sie Bitmap-Schriften den Vorzug geben. Beachten Sie das Beispiel im Hilfeabschnitt zu diesen Variablen. Bitmap-Schriften werden schwarzweiß dargestellt und nicht geglättet und sie stehen nur in bestimmten Größen zur Verfügung. Nutzen Sie ggf.

SEARCH_METRIC_COMPATIBLE="no"

zum Deaktivieren der Ersetzungen der Familienname auf Basis der Metrikkompatibilität.

Skalierbare, schwarzweiß dargestellte Schriften

Skalierbare Schriften, die ohne Antialiasing gerendert werden, können ähnliche Ergebnisse liefern wie Bitmap-Schriften, wobei die Schriften weiterhin skalierbar bleiben. Verwenden Sie Schriften mit gutem Hinting, beispielsweise die Liberation-Schriftfamilien. Bislang sind leider nur wenige Schriften mit gutem Hinting erhältlich. Mit der folgenden Variablen erzwingen Sie diese Methode:

FORCE_BW="yes"
Nichtproportionale schwarzweiß dargestellte Schriften

Nichtproportionale Schriften werden nur ohne Antialiasing gerendert; ansonsten verwenden Sie die Standardeinstellungen:

FORCE_BW_MONOSPACE="yes"
Standardeinstellungen

Alle Schriften werden mit Antialiasing gerendert. Schriften mit gutem Hinting werden mit dem Byte-Code-Interpreter) gerendert, die übrigen Schriften mit Autohinter (hintstyle=hintslight). Behalten Sie die Standardeinstellungen für alle relevanten sysconfig-Variablen bei.

CFF-Schriften

Die Schriften werden im CFF-Format verwendet. Im Hinblick auf die aktuellen Verbesserungen in FreeType2 sind diese Schriften im Allgemeinen leichter lesbar als die standardmäßigen TrueType-Schriften. Probieren Sie sie aus, indem Sie das Beispiel PREFER_*_FAMILIES verwenden. Auf Wunsch können Sie sie wie folgt dunkler und fetter darstellen:

SEARCH_METRIC_COMPATIBLE="no"

Standardmäßig werden sie mit hintstyle=hintslight gerendert. Eine weitere Möglichkeit:

SEARCH_METRIC_COMPATIBLE="no"
Nur Autohinter

Auch für Schriften mit gutem Hinter wird Autohinter aus FreeType2 verwendet. Dies kann zu fetteren, manchmal unscharfen Buchstaben mit niedrigerem Kontrast führen. Mit der folgenden Variablen aktivieren Sie dies:

FORCE_AUTOHINTER="yes"

Mit FORCE_HINTSTYLE steuern Sie den Hinting-Grad.

25.2.5.2 Kurzer Einblick in Fontconfig-XML

Bei Fontconfig wird das Konfigurationsformat eXtensible Markup Language (XML) genutzt. Diese wenigen Beispiele sollen keine erschöpfende Referenz darstellen, sondern lediglich einen kurzen Überblick bieten. Weitere Informationen und Anregungen finden Sie in man 5 fonts-conf oder /etc/fonts/conf.d/.

Die zentrale Fontconfig-Konfigurationsdatei ist /etc/fonts/fonts.conf und umfasst unter anderem das gesamte Verzeichnis /etc/fonts/conf.d/. Änderungen an Fontconfig können an zwei Stellen vorgenommen werden:

Fontconfig-Konfigurationsdateien
  1. Systemweite Änderungen.  Bearbeiten Sie die Datei /etc/fonts/local.conf. (Standardmäßig enthält diese Datei ein leeres fontconfig-Element.)

  2. Benutzerspezifische Änderungen.  Bearbeiten Sie die Datei ~/.config/fontconfig/fonts.conf. Speichern Sie die Fontconfig-Konfigurationsdateien in das Verzeichnis ~/.config/fontconfig/conf.d/.

Benutzerspezifische Änderungen überschreiben die systemweiten Einstellungen.

Anmerkung
Anmerkung: Veraltete Benutzerkonfigurationsdatei

Die Datei ~/.fonts.conf ist als veraltet gekennzeichnet und darf nicht mehr verwendet werden. Verwenden Sie stattdessen ~/.config/fontconfig/fonts.conf.

Jede Konfigurationsdatei muss ein fontconfig-Element enthalten. Die minimale Datei sieht daher wie folgt aus:

<?xml version="1.0"?>
   <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
   <fontconfig>
   <!-- Insert your changes here -->
   </fontconfig>

Falls die Standardverzeichnisse nicht ausreichen, fügen Sie das dir-Element mit dem gewünschten Verzeichnis ein:

<dir>/usr/share/fonts2</dir>

Fontconfig sucht rekursiv nach den Schriften.

Mit dem folgenden Fontconfig-Snippet können Sie die Algorithmen für das Schriftrendering auswählen (siehe Beispiel 25.1, „Festlegen von Rendering-Algorithmen“):

Beispiel 25.1: Festlegen von Rendering-Algorithmen
<match target="font">
 <test name="family">
  <string>FAMILY_NAME</string>
 </test>
 <edit name="antialias" mode="assign">
  <bool>true</bool>
 </edit>
 <edit name="hinting" mode="assign">
  <bool>true</bool>
 </edit>
 <edit name="autohint" mode="assign">
  <bool>false</bool>
 </edit>
 <edit name="hintstyle" mode="assign">
  <const>hintfull</const>
 </edit>
</match>

Sie können verschiedene Eigenschaften der Schriften zunächst ausprobieren. Mit dem <test>-Element können Sie beispielsweise die Schriftfamilie (siehe Beispiel), das Größenintervall, den Zeichenabstand, das Schriftformat und andere Eigenschaften testen. Wenn Sie <test> vollständig löschen, werden alle <edit>-Elemente auf sämtliche Schriften angewendet (globale Änderung).

Beispiel 25.2: Aliasse und Ersetzungen von Familiennamen
Regel 1
<alias>
 <family>Alegreya SC</family>
 <default>
  <family>serif</family>
 </default>
</alias>
Regel 2
<alias>
 <family>serif</family>
 <prefer>
  <family>Droid Serif</family>
 </prefer>
</alias>
Regel 3
<alias>
 <family>serif</family>
 <accept>
  <family>STIXGeneral</family>
 </accept>
</alias>

Mit den Regeln in Beispiel 25.2, „Aliasse und Ersetzungen von Familiennamen“ wird eine priorisierte Familienliste (PFL) erzeugt. Je nach Element werden verschiedene Aktionen ausgeführt:

<default> Von Regel 1

Mit dieser Regel wird ein serif-Familienname an das Ende der PFL angehängt.

<prefer> Von Regel 2

Mit dieser Regel wird Droid Serif direkt vor dem ersten Auftreten von serif in der PFL eingefügt, wenn Alegreya SC in der PFL vorliegt.

<accept> Von Regel 3

Mit dieser Regel wird ein STIXGeneral-Familienname direkt nach dem ersten Auftreten des serif-Familiennamens in die PFL eingefügt.

Wenn alle Snippets in der Reihenfolge Regel 1 - Regel 2 - Regel 3 ausgeführt werden und der Benutzer Alegreya SC anfordert, wird die PFL wie in Tabelle 25.1, „Erzeugen einer PFL aus Fontconfig-Regeln“ dargestellt erzeugt.

Tabelle 25.1: Erzeugen einer PFL aus Fontconfig-Regeln

Reihenfolge

Aktuelle PFL

Anforderung

Alegreya SC

Regel 1

Alegreya SC, serif

Regel 2

Alegreya SC, Droid Serif, serif

Regel 3

Alegreya SC, Droid Serif, serif, STIXGeneral

In den Fontconfig-Metriken hat der Familienname höchste Priorität vor anderen Mustern wie Stil, Größe usw. Fontconfig prüft, welche Familie derzeit auf dem System installiert ist. Wenn Alegreya SC installiert ist, gibt Fontconfig diese Schrift zurück. Ansonsten wird Droid Serif angefordert usw

Gehen Sie vorsichtig vor. Wenn die Reihenfolge der Fontconfig-Snippets geändert wird, gibt Fontconfig unter Umständen andere Ergebnisse zurück (siehe Tabelle 25.2, „Ergebnisse beim Erzeugen der PFL aus Fontconfig-Regeln mit anderer Reihenfolge“).

Tabelle 25.2: Ergebnisse beim Erzeugen der PFL aus Fontconfig-Regeln mit anderer Reihenfolge

Reihenfolge

Aktuelle PFL

Hinweis

Anforderung

Alegreya SC

Dieselbe Anforderung wie oben.

Regel 2

Alegreya SC

serif nicht in PFL, kein Ersatz

Regel 3

Alegreya SC

serif nicht in PFL, kein Ersatz

Regel 1

Alegreya SC, serif

Alegreya SC in PFL vorhanden, Ersatz vorgenommen

Anmerkung
Anmerkung: Implikation

Betrachten Sie das Alias <default> als Klassifizierung oder Einbeziehung dieser Gruppe (sofern nicht installiert). Wie das Beispiel zeigt, muss <default> stets vor den Aliassen <prefer> und <accept> dieser Gruppe stehen.

Die Klassifizierung <default> ist nicht auf die generischen Aliasse serif, sans-serif und monospace beschränkt. Ein komplexeres Beispiel finden Sie in /usr/share/fontconfig/conf.avail/30-metric-aliases.conf.

Mit dem nachfolgenden Fontconfig-Snippet in Beispiel 25.3, „Aliasse und Ersetzungen von Familiennamen“ wird eine serif-Gruppe erstellt. Jede Familie in dieser Gruppe kann andere Familien ersetzen, wenn eine vorangehende Schrift nicht installiert ist.

Beispiel 25.3: Aliasse und Ersetzungen von Familiennamen
<alias>
 <family>Alegreya SC</family>
 <default>
  <family>serif</family>
 </default>
</alias>
<alias>
 <family>Droid Serif</family>
 <default>
  <family>serif</family>
 </default>
</alias>
<alias>
 <family>STIXGeneral</family>
 <default>
  <family>serif</family>
 </default>
</alias>
<alias>
 <family>serif</family>
 <accept>
  <family>Droid Serif</family>
  <family>STIXGeneral</family>
  <family>Alegreya SC</family>
 </accept>
</alias>

Die Priorität ergibt sich aus der Reihenfolge im Alias <accept>. Ebenso können stärkere <prefer>-Aliasse verwendet werden.

Beispiel 25.2, „Aliasse und Ersetzungen von Familiennamen“ wird durch Beispiel 25.4, „Aliasse und Ersetzungen von Familiennamen“ ergänzt.

Beispiel 25.4: Aliasse und Ersetzungen von Familiennamen
Regel 4
<alias>
 <family>serif</family>
 <accept>
  <family>Liberation Serif</family>
 </accept>
</alias>
Regel 5
<alias>
 <family>serif</family>
 <prefer>
  <family>DejaVu Serif</family>
 </prefer>
</alias>

Die erweiterte Konfiguration aus Beispiel 25.4, „Aliasse und Ersetzungen von Familiennamen“ würde die folgende PFL-Entwicklung bewirken:

Tabelle 25.3: Ergebnisse beim Erzeugen einer PFL aus Fontconfig-Regeln

Reihenfolge

Aktuelle PFL

Anforderung

Alegreya SC

Regel 1

Alegreya SC, serif

Regel 2

Alegreya SC, Droid Serif, serif

Regel 3

Alegreya SC, Droid Serif, serif, STIXGeneral

Regel 4

Alegreya SC, Droid Serif, serif, Liberation Serif, STIXGeneral

Regel 5

Alegreya SC, Droid Serif, DejaVu Serif, serif, Liberation Serif, STIXGeneral

Anmerkung
Anmerkung: Auswirkungen.
  • Wenn mehrere <accept>-Deklarationen für denselben generischen Namen vorhanden sind, hat die zuletzt geparste Deklaration Vorrang. Beim Erstellen einer systemweiten Konfiguration sollten Sie <accept> nach Möglichkeit nicht nach dem Benutzer (/etc/fonts/conf.d/*-user.conf) angeben.

  • Wenn mehrere <prefer-Deklarationen für denselben generischen Namen vorhanden sind, hat die zuletzt geparste Deklaration Vorrang. In der systemweiten Konfiguration sollten Sie nach Möglichkeit nicht <prefer> vor dem Benutzer angeben.

  • Jede <prefer>-Deklaration überschreibt die <accept>-Deklarationen für denselben generischen Namen. Wenn der Administrator dem Benutzer die Möglichkeit geben möchte, <accept> zu verwenden (nicht nur <prefer>), sollte der Administrator nicht <prefer> in der systemweiten Konfiguration angeben. Die meisten Benutzer beschränken sich jedoch lediglich auf <prefer>, sodass dies keine negativen Auswirkungen haben sollte. <prefer> kommt auch in systemweiten Konfigurationen zum Einsatz.

25.3 GNOME-Konfiguration für Administratoren

25.3.1 Das dconf-System

Die Konfiguration des GNOME-Desktops wird mit dconf verwaltet. Dabei handelt es sich um eine hierarchisch strukturierte Datenbank oder eine Registrierung, über die Benutzer persönliche Einstellungen bearbeiten können. Administratoren können darüber standardmäßige oder obligatorische Werte für alle Benutzer festlegen. dconf ersetzt das gconf-System von GNOME 2.

Mit dconf-editor werden die dconf-Optionen in einer grafischen Benutzeroberfläche angezeigt. Mit dconf können Sie über die Kommandozeile auf die Konfigurationsoptionen zugreifen und diese Optionen bearbeiten.

Das GNOME-Tool Tweaks bietet eine unkomplizierte Benutzeroberfläche mit zusätzlichen Konfigurationsoptionen, die über die normale GNOME-Konfiguration hinausgehen. Das Werkzeug lässt sich wahlweise über das GNOME-Anwendungsmenü oder auch über die Befehlszeile mit dem Kommando gnome-tweak-tool starten.

25.3.2 Systemweite Konfiguration

Globale dconf-Konfigurationsparameter können im Verzeichnis /etc/dconf/db/ festgelegt werden. Hierzu gehört beispielsweise die Konfiguration für GDM oder das Sperren bestimmter Konfigurationsoptionen für die Benutzer.

So erstellen Sie eine systemweite Konfiguration (Beispiel):

  1. Erstellen Sie unter /etc/dconf/db/ ein neues Verzeichnis, das auf .d endet. Dieses Verzeichnis kann beliebig viele Textdateien mit Konfigurationsoptionen enthalten. Für dieses Beispiel erstellen Sie die Datei /etc/dconf/db/network.d/00-proxy mit dem folgenden Inhalt:

    # This is a comment
    [system/proxy/http]
    host='10.0.0.1'
    enabled=true
  2. Parsen Sie die neuen Konfigurationsdirektiven in das dconf-Datenbankformat:

    > sudo dconf update
  3. Tragen Sie die neue network-Konfigurationsdatenbank in das Standard-Benutzerprofil ein. Erstellen Sie hierzu die Datei /etc/dconf/profiles/user. Fügen Sie dann den folgenden Inhalt ein:

    system-db:network

    Die Datei /etc/dconf/profiles/user ist ein GNOME-Standard. Andere Profile können in der Umgebungsvariablen DCONF_PROFILE definiert werden.

  4. Optional: Wenn die Proxy-Konfiguration für die Benutzer gesperrt werden soll, erstellen Sie die Datei /etc/dconf/db/network/locks/proxy. Fügen Sie dann eine Zeile mit den Schlüsseln, die nicht geändert werden dürfen, in diese Datei ein:

    /system/proxy/http/host
    /system/proxy/http/enabled

Mit dem grafischen dconf-editor können Sie ein Profil mit einem einzelnen Benutzer erstellen und dann mit dconf dump / eine Liste aller Konfigurationsoptionen abrufen. Die Konfigurationsoptionen können dann in einem globalen Profil gespeichert werden.

Eine ausführliche Beschreibung der globalen Konfiguration finden Sie unter https://wiki.gnome.org/Projects/dconf/SystemAdministrators

25.3.3 Verwalten von Kachelfenstern auf Wayland

Wenn Sie den GNOME-Desktop auf Wayland verwenden und Ihre Fenster nebeneinander anordnen möchten, wird die GNOME-Erweiterung gTile empfohlen. Mit „gTile“ können Sie Fenster auf der Grundlage eines konfigurierbaren Rasterschemas neu anordnen. Sie können beispielsweise sechs Terminals starten und sie in 3 Reihen und 2 Spalten anordnen, sodass der gesamte Desktopbereich genutzt wird.

25.3.3.1 Installieren von „gTile“

Wichtig
Wichtig

Zur Verwendung der GNOME-Erweiterung „gTile“ müssen Sie den GNOME-Desktop ausführen und das Paket chrome-gnome-shell (für SLED 15 SP4 und älter) oder das Paket gnome-browser-connector (für SLED 15 SP5 und neuer) installiert haben.

  1. Geben Sie im Browser https://extensions.gnome.org/extension/28/gtile/ ein, um die Webseite der Erweiterung „gTile“ aufzurufen. Wenn Sie eine Warnung über eine fehlende Browser-Erweiterung sehen, klicken Sie auf den Link und befolgen Sie die Anweisungen im Webbrowser, um die GNOME-Shell-Erweiterung zu installieren und zu aktivieren.

    Warnung über eine fehlende GNOME-Shell-Erweiterung
    Abbildung 25.1: Warnung über eine fehlende GNOME-Shell-Erweiterung
  2. Nachdem die GNOME-Shell-Erweiterung in Ihrem Webbrowser installiert ist, sehen Sie oben rechts auf der gTile-Webseite die Schaltfläche OFF (AUS). Zum Aktivieren der Erweiterung „gTile“ klicken Sie auf diese Schaltfläche, damit sich der Status in ON (EIN) ändert.

    Aktivierte GNOME-Erweiterung „gTile“
    Abbildung 25.2: Aktivierte GNOME-Erweiterung „gTile“
  3. Ein gTile-Symbol wird im GNOME-Abschnitt auf der rechten Seite der GNOME-Kontrollleiste angezeigt. Damit können Sie gTile-Fensterlayouts aktivieren.

    gTile-Kontrollleistensymbol
    Abbildung 25.3: gTile-Kontrollleistensymbol

25.3.3.2 Arbeiten mit der Erweiterung „gTile“

Vorgehen 25.1: Anordnen der Fenster
  1. Zum Öffnen von gTile für das aktuell fokussierte Fenster drücken Sie MetaEingabetaste.

  2. Zum Festlegen der Spaltenanzahl für die Anordnung der Fenster drücken Sie eine Zahlentaste.

  3. Um die Fenster automatisch entsprechend der Einstellung Automatische Kachelgrößen im Hauptfenster anzuordnen, drücken Sie die Taste M. Wenn Sie das erste Mal die Taste M drücken, nimmt das aktuelle Fenster standardmäßig die Hälfte des Bildschirms ein, während alle anderen Fenster in einer Spalte auf der anderen Hälfte des Bildschirms angeordnet werden. Sie können die Taste M mehrmals drücken, um zwischen verschiedenen Varianten zu wechseln. Dies ist hilfreich, um ein großes Hauptfenster und mehrere kleinere sekundäre Fenster beizubehalten.

  4. Um das aktuelle Fenster innerhalb der vordefinierten Kachelanordnung des Bildschirms zu verschieben, verwenden Sie die Pfeiltasten.

    Um die Anzahl der Kacheln, die das Fenster belegt, zu erhöhen oder zu verringern, verwenden Sie Umschalttaste und eine der Pfeiltasten.

  5. Um ein Fenster an den Rändern der benachbarten Fenster und des Desktops einrasten zu lassen, drücken Sie StrgAltS.

  6. Um das gTile-Fenster zu schließen, drücken Sie Esc.

Vorgehen 25.2: Erweiterte Konfiguration
  1. Um die gTile-Einstellungen zu öffnen, führen Sie folgendes Kommando aus: gnome-extensions-app.

  2. Wählen Sie „gTile“ aus und klicken Sie auf Einstellungen.

  3. Definieren Sie eine Voreinstellung und eine Tastenkombination, um einfach zwischen häufig verwendeten Fensterlayouts zu wechseln.

    Details zur Konfiguration der Erweiterung „gTile“ finden Sie unter https://github.com/gTile/gTile.

25.3.4 Weitere Informationen

Weitere Informationen finden Sie im http://help.gnome.org/admin/.

25.4 Umschalten zwischen Intel- und NVIDIA Optimus-GPUs mit SUSE Prime

SUSE Prime ist ein Werkzeug zum Umschalten zwischen Intel-On-Board-Grafikprozessoren (GPUs) und NVIDIA-GPUs mit der Optimus-Technologie von NVIDIA für „umschaltbare Grafik“. Optimus bietet einen Mechanismus für das einfache Umschalten zwischen einer On-Board-Intel-GPU und einer separaten NVIDIA-GPU. Damit kann ein Laptop wahlweise im Energiesparmodus oder mit maximaler Leistung genutzt werden: Die Intel-GPU spart Strom, die NVIDIA-GPU erweckt 3D-Anwendungen zum Leben.

SUSE Prime ist in der SUSE Linux Enterprise Workstation-Erweiterung für SUSE Linux Enterprise 15 SP5 enthalten.

SUSE Prime ist nur auf Systemen mit X11 nutzbar, nicht auf Systemen mit Wayland. Wenn auf Ihrem System Wayland ausgeführt wird, müssen Sie dieses deaktivieren und ein Fallback auf X11 vornehmen, um SUSE Prime zu nutzen (siehe Abschnitt 25.4.1, „Voraussetzungen“).

25.4.1 Voraussetzungen

Sie benötigen einen konfigurierten und funktionierenden NVIDIA Optimus-Grafikprozessor, der die in SUSE Linux Enterprise 15 SP5 enthaltenen NVIDIA-Treiber verwendet (weitere Informationen finden Sie in Abschnitt 25.4.3, „Installieren von NVIDIA-Treibern“), sowie einen integrierten Intel-Grafikprozessor. Bumblebee, das ältere Umschaltprogramm für NVIDIA Optimus, darf nicht installiert werden.

Es dürfen keine Datei /etc/X11/xorg.conf und keine Konfigurationsdateien mit aktiven Abschnitten „ServerLayout“, „Device“ oder „Screen“ im Verzeichnis /etc/X11/xorg.conf.d vorhanden sein.

SUSE Prime ist nur unter X11 nutzbar. Prüfen Sie mit dem Kommando loginctl, ob Ihr System X11 oder Wayland verwendet:

> loginctl
   SESSION        UID USER             SEAT             TTY             
         2       1000 tux             seat0               
> loginctl show-session 2|grep Type
Type=x11

Wenn Ihr System Wayland verwendet, deaktivieren Sie Wayland. Bearbeiten Sie hierzu die Datei /etc/gdm/custom.conf und entfernen Sie den Kommentar WaylandEnable=false. Starten Sie dann neu.

25.4.2 Installieren und Verwenden von SUSE Prime

Ihre NVIDIA-Grafikkarte sollte bereits installiert und funktionsfähig sein. Andernfalls finden Sie weitere Informationen hierzu unter Abschnitt 25.4.3, „Installieren von NVIDIA-Treibern“.

Installieren Sie das Paket suse-prime:

> sudo zypper install suse-prime

Zum Umschalten Ihrer GPU führen Sie einen der folgenden Kommandos aus; melden Sie sich dann ab und wieder an:

> sudo prime-select intel
> sudo prime-select intel2
> sudo prime-select nvidia

Verwenden Sie den intel-Treiber, wenn dies der Modesetting-Treiber ist. intel2 ist für Systeme gedacht, die den xf86-video-intel-Treiber verwenden. Diese Informationen erhalten Sie durch Installieren und Ausführen von inxi:

> inxi -G
Graphics: Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
          Display Server: x11(X.org 1.20.1 ) drivers: modesetting (unloaded: fbdev, vesa)
          Resolution: 1920x1080@60.00hz
          OpenGL: renderer: Mesa DRI Intel Haswell Desktop version: 4.5 Mesa 18.2.8

Welche GPU ist derzeit aktiv?

> sudo /usr/sbin/prime-select get-current
Driver configured: intel

25.4.3 Installieren von NVIDIA-Treibern

Wenn Sie Ihre NVIDIA-Karte identifizieren müssen, damit Sie den zu verwendenden Treiber ermitteln können, führen Sie folgendes Kommando aus:

> /sbin/lspci | grep VGA

Installieren Sie die Treiber anhand dieser Schritte mit Zypper.

Listen Sie die verfügbaren Treiberpakete auf:

> sudo zypper se nvidia

Installieren Sie dann die Treiber für Ihre NVIDIA-Grafikkarte:

> sudo zypper se packagename