# <svg viewBox="0 0 24 24" width="1em"> <path fill="currentColor" d="M19,16C19,17.72 18.37,19.3 17.34,20.5C17.75,20.89 18,21.41 18,22H6C6,21.41 6.25,20.89 6.66,20.5C5.63,19.3 5,17.72 5,16H3C3,14.75 3.57,13.64 4.46,12.91L4.47,12.89C6,11.81 7,10 7,8V7A5,5 0 0,1 12,2A5,5 0 0,1 17,7V8C17,10 18,11.81 19.53,12.89L19.54,12.91C20.43,13.64 21,14.75 21,16H19M16,16A4,4 0 0,0 12,12A4,4 0 0,0 8,16A4,4 0 0,0 12,20A4,4 0 0,0 16,16M10,9L12,10.5L14,9L12,7.5L10,9M10,5A1,1 0 0,0 9,6A1,1 0 0,0 10,7A1,1 0 0,0 11,6A1,1 0 0,0 10,5M14,5A1,1 0 0,0 13,6A1,1 0 0,0 14,7A1,1 0 0,0 15,6A1,1 0 0,0 14,5Z" /></svg> Linux

## Vorbemerkungen
Bei allen modernen Systemen sind die Neo-Layouts Neo 2, Bone und Neoqwertz
schon vorinstalliert. Zum Aktivieren reicht es, diese in den
Tastatureinstellungen auszuwählen.

Bei Problemen gibt es in der FAQ eine Liste der [bekannten Probleme unter
Linux](/FAQ/FAQ#linux-unix-bsd). Darüber hinaus gibt es mehrere Möglichkeiten,
[individuelle Hilfe für Neo](/Kontakt/community) zu erhalten.

!!! warning "Achtung"
    Wird Neo nicht systemweit aktiviert, hat man während der Anmeldung
    möglicherweise noch eine andere Tastaturbelegung. Man sollte also seinen
    Benutzernamen und sein Passwort sowohl in Qwertz (Login) als auch in Neo
    (z. B. Bildschirmschoner) eingeben können.

## Neo aktivieren: Systemweit/Generisch

Man kann das Standardtastaturlayout des Xorg-Servers mit `sudo localectl
set-x11-keymap --no-convert de pc105 neo`,
`sudo localectl set-x11-keymap --no-convert de pc105 bone` bzw.
`sudo localectl --no-convert set-x11-keymap de pc105 neo_qwertz` auf eines der
Neo-Layoute setzen.

Jedoch haben einige Desktop-Umgebungen eigene Tastatureinstellungen, die
diese Einstellung überschreiben können. Wie man bei bestimmten
Desktopumgebungen das Tastaturlayout setzt, wird im nächsten Abschnitt gezeigt.

Die systemweite Einstellung wirkt sich auf die meisten Login-Manager (etwa
sddm, lightdm, gdm) aus.

Außerdem kann man temporär das Tastaturlayouts des aktuellen Xorg-Servers z.B.
durch den Befehl `setxkbmap de neo` setzen. Bei Desktopumgebungen, die keine
eigenen Tastatureinstellungen besitzen, bietet es sich an, diesen Befehl in den
Autostart zu packen, um Neo (oder Bone oder Neoqwertz) nur für einen Benutzer
zu aktivieren (je nach Setup z.B. `~/.xsession`, `~/.xsessionrc` oder `~/.xinitrc`).

## Neo aktivieren: Desktopumgebungen

Die entsprechenden Boxen können durch Anklicken ausgeklappt werden.

??? info "Gnome (egal ob auf Ubuntu, Debian, Fedora, Arch, OpenSUSE oder …)"

    Standardmäßig versteckt Gnome einige selten genutzte Tastaturlayoute in den
    Einstellungen.  Daher ist bei Bone und Neoqwertz darauf zu achten, dass man
    zunächst im Optimierungen-Programm (`gnome-tweaks`) in der „Tastatur und
    Maus“-Sektion „Erweiterte Eingabequellen anzeigen“ aktiviert. Alternativ kann,
    falls `gnome-tweaks` nicht installiert ist, diese Einstellung mit dem Befehl
    ```
    gsettings set org.gnome.desktop.input-sources show-all-sources true
    ```
    vorgenommen werden. Bei dem klassischen Neo-Layout kann dieser Schritt übersprungen werden.
    ![screenshot](images/linux-gnome-1.png)

    Dann kann man das gewünschte Layout in den
    Gnome-Tastaturlayouteinstellungen (oben rechts in die Ecke klicken, dann
    auf „Einstellungen“ und in die „Region und Sprache“-Rubrik wechseln)
    setzen: Zunächst auf das große Plus
    klicken.![screenshot](images/linux-gnome-2.png)

    Anschließend auf "Deutsch" klicken, das gewünschte Layout auswählen und
    oben rechts mit „Hinzufügen“ bestätigen
    ![screenshot](images/linux-gnome-3.png)

    Anschließend wahlweise das normale Deutsche Layout rechts mit dem Kreuz
    entfernen oder mit dem Griff am linken Rand unter das Neo-Layout ziehen.
    Andernfalls funktioniert z.B. die vierte Ebene nicht.  Falls mehrere
    Layouts aktiviert sind, kann man zwischen diesen mit `<super>+<space>` oder der
    Schaltfläche oben rechts in dem Panel wechseln.
    ![screenshot](images/linux-gnome-4.png)

    Außerdem ist es wichtig, dass in der „Tastenkombinationen“-Rubrik bei
    „Taste für alternative Zeichen„ **nicht** „Rechte Alt-Taste“ ausgewählt
    ist, da sonst die rechte Mod4-Taste zu einer dritten Mod3-Taste
    wird.![screenshot](images/linux-gnome-5.png)

??? info "KDE Plasma (egal ob auf Ubuntu, Debian, Fedora, Arch, OpenSUSE oder …)"
    Öffne zunächst die Plasma-Eingabegeräteinstellungen, die in den Systemeinstellungen
    in der „Hardware“-Kategorie sind.![screenshot](images/linux-plasma-1.png)

    Wähle dann in auf der Tastaturseite den „Belegungen“-Reiter an.
    Achte darauf, dass in dem rechten obren Bereich keine Einstellungen aktiv sind,
    die mit dem Neo-Layout konfliktieren und klicke in der unteren Hälfte auf
    „Hinzufügen“. ![screenshot](images/linux-plasma-2.png)

    Wähle in dem Belegungs-Dropdown nun „Deutsch“ und in dem Varianten-Dropdown
    die gewünschte Variante aus. Bestätige mit „OK“. Eventuelle andere Layouts
    sollten entfernt oder unter Neo verschoben werden, um Probleme mit den
    höheren Ebenen zu vermeiden.  Anschließend mit „Anwenden“ den Dialog
    schließen und neu anmelden. ![screenshot](images/linux-plasma-3.png)

??? info "XFCE (egal ob auf Ubuntu, Debian, Fedora, Arch, OpenSUSE oder …)"
    Standardmäßig hält sich XFCE an die systemweiten Einstellungen, also
    muss man nur für XFCE weitere Einstellungen vornehmen, wenn man das
    Layout nicht global, sondern nur für einen bestimmten Benutzer
    aktivieren möchte.

    Da XFCE wie Gnome auch „exotische“ Tastaturlayouts ausblendet, gehen
    wir über die Konsole vor:

    === "Neo 2 (klassisch)"
        ```
        xfconf-query -c keyboard-layout -p "/Default/XkbDisable" -s "false"
        xfconf-query -c keyboard-layout -p "/Default/XkbLayout" -s "de"
        xfconf-query -c keyboard-layout -p "/Default/XkbVariant" -s "neo"
        ```
        Die Einstellung wird sofort aktiv.

    === "Bone"
        ```
        xfconf-query -c keyboard-layout -p "/Default/XkbDisable" -s "false"
        xfconf-query -c keyboard-layout -p "/Default/XkbLayout" -s "de"
        xfconf-query -c keyboard-layout -p "/Default/XkbVariant" -s "bone"
        ```
        Die Einstellung wird sofort aktiv.

    === "Neo/Qwertz"
        ```
        xfconf-query -c keyboard-layout -p "/Default/XkbDisable" -s "false"
        xfconf-query -c keyboard-layout -p "/Default/XkbLayout" -s "de"
        xfconf-query -c keyboard-layout -p "/Default/XkbVariant" -s "neo_qwertz"
        ```
        Die Einstellung wird sofort aktiv.


## Installation der Compose-Dateien

Die Funktionalität der Tote-Tasten-Sequenzen wird durch die Compose-Datei
gesteuert.  Dies ist bei Linux unabhängig vom Tastaturlayout.  Das bedeutet,
dass man auch mit aktiviertem Neo-Layout standardmäßig nur den eingeschränkten
Funktionsumfang der Standard-Compose-Datei zu verfügung hat.  Die
Neo-Compose-Datei ist jedoch mit
```
wget "https://neo-layout.org/download/XCompose" -O ~/.XCompose
```
schnell nachinstalliert. Zum Übernehmen der Änderungen neu anmelden.

Die Neo-Compose-Datei ist  modular aufgebaut. So kann man einfach mit Hilfe der
Quelldateien im
[Git-Repo](https://git.neo-layout.org/neo/neo-layout/src/branch/master/Compose)
einzelne Features nach belieben (de-)aktivieren.


## Installation der Konsolen-Keymap

De „alte“ Linux-Konsole benutzt nicht die gewöhnlichen Tastaturlayouts der
graphischen Benutzeroberfläche. Bei manchen Distros ist eine Keymap für
das klassische Neo-Layout dabei, für die Varianten Bone und Neoqwertz müssen jedoch
immer die [Neo-Keymaps](https://neo-layout.org/download/console.tar.xz) nachinstalliert werden.
Die Installation kann mit den Befehlen in den blauen Kästen geschehen.

Alternativ kann man die Keymaps manuell an den entsprechenden Stellen platzieren


| Distribution          | Keymap-Verzeichnis             |
| :-------------------- | :----------------------------- |
| Arch                  | `/usr/share/kbd/keymaps`       |
| Debian und Nachfahren | `/usr/share/keymaps`           |
| Fedora                | `/usr/lib/kbd/keymaps`         |
| OpenSUSE              | `/usr/share/kbd/keymaps`       |

Anschließend kann man die Keymaps mit `sudo loadkeys -u neo`,
`sudo loadkeys -u bone` bzw. `sudo loadkeys -u neoqwertz` laden.  Die
permanente Aktivierung erfolgt in der Regel über `localectl`, bei
Debian-Derivaten funktioniert dies jedoch nicht.


??? info "Arch Linux"
    === "Neo 2 (klassisch)"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/kbd/keymaps/ -xJ

        sudo loadkeys -u neo
        sudo localectl set-keymap --no-convert neo
        ```

    === "Bone"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/kbd/keymaps/ -xJ

        sudo loadkeys -u bone
        sudo localectl set-keymap --no-convert bone
        ```

    === "Neo/Qwertz"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/kbd/keymaps/ -xJ

        sudo loadkeys -u neoqwertz
        sudo localectl set-keymap --no-convert neoqwertz
        ```

??? info "Debian-Derivat (Debian, Ubuntu, Linux Mint, Pop!OS, …)"
    === "Neo 2 (klassisch)"
        Auf der Konsole `sudo dpkg-reconfigure keyboard-configuration` ausführen und in
        dem erscheinenden Dialog Neo auswählen.

    === "Bone"
        Die Installation erfolgt mit
        ```
        sudo mkdir -p /usr/share/keymaps
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/keymaps/ -xJ
        ```
        Dann muss man `KMAP=/usr/share/keymaps/neo/bone.map` in die `/etc/default/keyboard` hinzufügen und
        anschließend als root `setupcon` auf der Konsole ausgeführen. Die Einstellung
        bleibt über Neustarts hinweg aktiv.

    === "Neo/Qwertz"
        Die Installation erfolgt mit
        ```
        sudo mkdir -p /usr/share/keymaps
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/keymaps/ -xJ
        ```
        Dann muss man `KMAP=/usr/share/keymaps/neo/neoqwertz.map` in die `/etc/default/keyboard` hinzufügen und
        anschließend als root `setupcon` auf der Konsole ausgeführen. Die Einstellung
        bleibt über Neustarts hinweg aktiv.

??? info "Fedora"
    === "Neo 2 (klassisch)"
        ```
        sudo loadkeys -u de-neo
        sudo localectl set-keymap --no-convert de-neo
        ```

    === "Bone"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/lib/kbd/keymaps/ -xJ

        sudo loadkeys -u bone
        sudo localectl set-keymap --no-convert bone
        ```

    === "Neo/Qwertz"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/lib/kbd/keymaps/ -xJ

        sudo loadkeys -u neoqwertz
        sudo localectl set-keymap --no-convert neoqwertz
        ```

??? info "OpenSUSE"
    === "Neo 2 (klassisch)"
        ```
        sudo loadkeys -u de-neo
        sudo localectl set-keymap --no-convert de-neo
        ```

    === "Bone"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/kbd/keymaps/ -xJ

        sudo loadkeys -u bone
        sudo localectl set-keymap --no-convert bone
        ```

    === "Neo/Qwertz"
        ```
        wget "https://neo-layout.org/download/console.tar.xz" -O - | \
        sudo tar -C /usr/share/kbd/keymaps/ -xJ

        sudo loadkeys -u neoqwertz
        sudo localectl set-keymap --no-convert neoqwertz
        ```


!!! warning "Hinweis"
    Bei vollverschlüsselten Systemen ist darauf zu achten, dass das
    Tastaturlayout beim Starten schon vor der Passphrasenabfrage gesetzt wird.
    Bei Arch Linux z.B. muss dafür in `/etc/mkinitcpio.conf` der
    `sd-vconsole`-Hook vor dem `sd-encrypt`-Hook eingefügt werden und
    bei Debian muss man die `KEYMAP`-Einstellung in der `etc/initramfs-tools/initramfs.conf`
    aktivieren. Dann jeweils das Initramfs neu generieren (mit `mkinitcpio -p linux`
    bzw `update-initramfs -u`).

Andere Distros vermutlich ähnlich.


!!! missing "Fehlend"
    Der folgende Abschnitt verweist auf eine noch nicht portierte Seite aus dem
    früheren Wiki. Bitte bei Gelegenheit nachtragen oder erstellen.

??? info "Inhalt"
    Einige bebilderte Beispiele für die Aktivierung von Neo unter **Ubuntu,
    Fedora, openSuse, IceWM, Fluxbox, KDE, Arch Linux, Window Maker, XFCE,**
    usw. finden sich bei den
    [Neo-Aktivierungsbeispielen](Neo-unter-Linux-einrichten%2FAktivieren).


??? info "Inhalt"
    * __[Installationsskript](Neo-unter-Linux-einrichten%2FInstallscript)__
    Dieses Skript installiert nicht nur die Treiber für den grafischen Bereich
    (Xmodmap) und die Textkonsole, sondern stellt auch die nützlichen
    [Linuxskripte](../src/branch/master/linux/bin) zur Verfügung, um zwischen
    Neo und Qwertz umzuschalten bzw. um die Referenz anzuzeigen.
    * __[Fix von Mod4 in Javaprogrammen](JavaMod4Fix)__
    Repariert die nicht erkannten Mod4+x Tasten in Java (zum Beispiel das Mod4 Steuerkreuz)
