Erste Schritte - MorgenWM

Erste Schritte

English Version

Schritt 1: Abhängigkeiten installieren

Setup baut MorgenWM selbst und installiert keine Laufzeit-Tools. Installiere nur, was du wirklich brauchst:

  • Base (Minimal-Preset): keine Extras außer den Kern-Abhängigkeiten unten.
  • Full-Preset (Panel + Hintergrund + Launcher + Idle-Lock + Auth + Bildschirmtemperatur + Screenshot + Terminal + Browser + Emoji): zusätzlich wbg, vibepanel, fuzzel, swayidle, waylock, mate-polkit, wlsunset, grim, slurp, wl-clipboard, wtype, xdg-user-dirs, foot, firefox, glow (Markdown-Browser für den Doks-Menüeintrag), zellij (Terminal-Multiplexer), fish (Shell aus dem Dotfiles-Preset), git (Setup klont das Dotfiles-Repo und bemoji), emptty (optionaler CLI-Display-Manager) und eine Emoji-Schriftart wie noto-fonts-emoji installieren. Setup klont außerdem bemoji (den Emoji-Picker) nach ~/.local/bin und lädt seine Emoji-Datenbank herunter.

Kern-Abhängigkeiten (für jedes Preset nötig):

DistributionBefehl
Arch Linuxsudo pacman -S river nim wlr-randr libxkbcommon pkgconf
FedoraSiehe Hinweis unten
Void LinuxSiehe Hinweis unten
Alpine LinuxSiehe Hinweis unten

Benötigte Pakete allgemein:

  • Nim >= 2.0.0
  • River >= 0.4
  • git
  • libxkbcommon (wird beim Bauen gelinkt für Live-Tastaturlayout-Wechsel)
  • pkg-config (wird beim Bauen verwendet, um libxkbcommon zu verifizieren)
  • wlr-randr (optional, nur für benutzerdefinierte Bildschirmmodi)

Fedora

Nim ist nicht in den Standard-Repositorys von Fedora verfügbar. Aktiviere zuerst das Terra-Repository und installiere dann die Abhängigkeiten:

sudo dnf install terra-release
sudo dnf install nim river wayland-devel libxkbcommon-devel pkgconfig wlr-randr

Alpine Linux

doas apk add nim river wayland-dev libxkbcommon-dev pkgconf wlr-randr

Void Linux

Siehe die eigene Void-Linux-Installationsanleitung für eine komplette Anleitung. Kurzfassung: MorgenWM ist in der Void Community Repository (oco) mit vorgebauten Binaries verfügbar, inklusive kompatiblem river:

# Repository hinzufügen
echo 'repository=https://repo.osowoso.org/x86_64' | sudo tee /etc/xbps.d/00-VUR.conf

# Aktualisieren und installieren
sudo xbps-install -Su morgenwm

Full-Preset-Extras (nur nötig, wenn du das full-Preset wählst):

DistributionInstallation
Arch Linuxyay -S vibepanel-bin wbg (AUR) + sudo pacman -S fuzzel swayidle waylock mate-polkit wlsunset grim slurp wl-clipboard wtype xdg-user-dirs foot firefox glow zellij fish git noto-fonts-emoji
FedoraTerra oder COPR aktivieren, dann sudo dnf install vibepanel wbg fuzzel swayidle waylock mate-polkit wlsunset grim slurp wl-clipboard wtype xdg-user-dirs foot firefox glow zellij fish git google-noto-emoji-fonts
Void Linuxsudo xbps-install vibepanel wbg fuzzel swayidle waylock mate-polkit wlsunset grim slurp wl-clipboard wtype xdg-user-dirs foot firefox glow zellij fish-shell git emptty noto-fonts-emoji
Alpine Linuxdoas apk add wbg fuzzel swayidle waylock mate-polkit wlsunset grim slurp wl-clipboard wtype xdg-user-dirs foot firefox glow zellij fish git font-noto-emoji (plus vibepanel aus dem Quellcode kompiliert)

Fedora

Installiere vibepanel über das Terra-Repository oder COPR:

# Terra
sudo dnf install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release
sudo dnf install vibepanel

# oder COPR
sudo dnf copr enable prankstr/vibepanel
sudo dnf install vibepanel

Setup installiert diese nicht automatisch. Installiere sie mit deinem Paketmanager und wähle dann beim Setup das full-Preset.

Config-Hinweise für das Full-Preset:

  • wlsunset braucht deinen Standort für die Bildschirmtemperatur. Die Config enthält einen Berlin-Platzhalter (wlsunset -l 52.52 -L 13.41). Ersetze ihn in ~/.config/morgenwm/config.toml durch die Breiten- und Längengrade deiner Stadt, sonst ist der Farbton falsch.
  • waylock hat eine optionale Config unter ~/.config/waylock/config.toml (Lock-Farben, Schrift). Ohne sie wird ein schlichter schwarzer Lock verwendet.
  • vibepanel läuft mit sinnvollen Standardwerten, wenn es noch keine vibepanel-Config gibt.
  • Alles andere (wbg, mate-polkit, swayidle, grim, slurp) läuft direkt ohne Config-Datei.
  • Emoji-Picker (`Mod + e`): Setup klont bemoji nach ~/.local/bin und führt bemoji -D all aus, um die Emoji-Datenbank herunterzuladen. Um die Emoji-Glyphen in fuzzel (und überall sonst) tatsächlich zu sehen, muss eine Emoji-Schriftart installiert sein, z.B. noto-fonts-emoji (Arch), google-noto-emoji-fonts (Fedora), font-noto-emoji (Alpine) oder noto-fonts-emoji (Void). Ohne sie zeigt fuzzel leere Kästchen statt der Emojis. bemoji braucht außerdem wtype (zum Tippen des gewählten Emoji) und wl-clipboard (zum Kopieren).

Hintergrundbilder:

Setup kopiert die mitgelieferten Hintergrundbilder nach ~/.config/morgenwm/wallpapers und fragt, wie sie verwendet werden sollen:

  • fixed: ein Bild behalten, kein Auto-Wechsel
  • random: beim Start ein zufälliges Bild wählen
  • slideshow: alle 10 Minuten das Bild wechseln

Die Wahl wird in ~/.config/morgenwm/wallpaper.mode gespeichert. Das wallpaper-Helferprogramm (installiert nach ~/.local/bin/wallpaper) führt es beim Login aus, und Mod+n wechselt jederzeit zum nächsten Bild, in jedem Modus.

Du kannst es auch manuell steuern:

wallpaper next               # nächstes Bild
wallpaper random             # zufälliges Bild
wallpaper fixed /pfad/zum/bild # bestimmtes Bild setzen
wallpaper slideshow 120      # Slideshow alle 2 Minuten

Schritt 2: Bauen & Installieren

Aus dem Paketmanager

Wenn deine Distribution MorgenWM anbietet (z.B. das Void-Community-Repository), installiere das Paket und starte den integrierten Setup-Assistenten:

morgenwm setup

Er schreibt eine Preset-Konfiguration, installiert Dokumentation und Templates und registriert optional den Desktop-Session-Eintrag, damit dein Display-Manager MorgenWM anzeigt. Der Assistent liest seine Beispiel-Assets aus /usr/share/morgenwm (Systempaket) oder ~/.local/share/morgenwm (Benutzerinstallation); das full-Preset lädt zusätzlich Hintergrundbilder, Hilfsskripte und Themes aus dem Dotfiles-Repo.

Aus dem Quellcode (empfohlen)

Klone das Repo und starte das Setup-Skript. Es baut MorgenWM und durchläuft denselben Setup-Ablauf wie der Assistent oben:

git clone https://codeberg.org/LinuxNation/MorgenWM.git
cd MorgenWM
chmod +x setup.sh
./setup.sh

Das Setup-Skript führt folgende Schritte aus:

  1. Baut die Binärdateien (die Bindings sind eingecheckt, kein zusätzliches Werkzeug nötig)
  2. Erstellt optional eine Konfigurationsdatei unter ~/.config/morgenwm/config.toml. Es fragt nach einem Preset (full oder minimal); beim Preset full fragt es zusätzlich nach dem Wallpaper-Modus und lädt die Desktop-Assets aus dem Dotfiles-Repo (Hintergrundbilder, Hilfsskripte, GTK-/Cursor-Themes, App-Konfigurationen, bemoji).
  3. Installiert Dokumentation nach ~/.local/share/morgenwm/docs und Beispiel-Layout-Templates nach ~/.config/morgenwm/templates
  4. Kopiert optional Binärdateien nach ~/.local/bin
  5. Installiert optional einen Desktop-Session-Eintrag nach /usr/share/wayland-sessions/, damit dein Display-Manager (GDM, SDDM, LightDM) MorgenWM als Session auflistet

Dies ist ein einmaliger Schritt. Zum Aktualisieren siehe Aktualisieren.

Erster Start

Wenn die Binärdateien nach ~/.local/bin installiert wurden:

launch_morgenwm

Oder direkt aus dem Projektverzeichnis:

./bin/launch_morgenwm

launch_morgenwm liest deine Konfiguration, setzt das Tastaturlayout und startet dann River mit MorgenWM als Init-Programm. Du siehst River starten und MorgenWM verwaltet deine Fenster.

Wenn du den Desktop-Session-Eintrag installiert hast (Schritt 6 des Setups), kannst du dich stattdessen abmelden und MorgenWM aus der Session-Liste deines Display-Managers wählen. Der Session-Eintrag führt launch_morgenwm aus.

Binärdateien

BinärdateiZweck
morgenwmDer Fenster-Manager selbst (River-Init-Programm; auch: --version, validate, setup)
launch_morgenwmStarter: liest Konfiguration, setzt XKB-Layout, startet River
morgenwm_msgCLI-Client für den IPC-Socket
morgenwm_setupEigenständiger Setup-Assistent (identisch zu morgenwm setup)

Konfiguration

Beim ersten Start verwendet MorgenWM die eingebauten Standardwerte. Um Anpassungen vorzunehmen, erstelle eine Konfigurationsdatei:

mkdir -p ~/.config/morgenwm
cp example/config-minimal.toml ~/.config/morgenwm/config.toml   # minimale WM
# oder, für einen Desktop, der sofort funktioniert, den Setup-Assistenten
# nutzen (er lädt das Full-Preset aus dem Dotfiles-Repo):
morgenwm setup

Alle verfügbaren Optionen findest du in der Konfigurationsreferenz.

Um zu prüfen, ob deine Konfigurationsdatei korrekt geparst wird:

morgenwm validate

Aktualisieren

cd MorgenWM
git pull
nimble release

Wenn du nach ~/.local/bin installiert hast, kopiere die neuen Binärdateien:

cp bin/morgenwm bin/launch_morgenwm bin/morgenwm_msg bin/morgenwm_keys bin/morgenwm_setup ~/.local/bin/