Intro:
Robert und ich zeigen dir, warum die Zukunft der Systemkonfiguration bereits heute funktioniert. NixOS ist deklarativ, reproduzierbar und spielfertig. Die Zielgruppe sind Linux-Nutzer mit Terminal-Erfahrung (Anfänger & Fortgeschrittene). Unsere Kernbotschaft: Verwalte Dein gesamtes System mit einer sicheren und wiederholbaren Konfiguration.
Robert:
Robert Lotz
erreichbar unter robert.lotz [at] erlug.de.
Azubi:
Fachinformatiker im 2. Jahr
Seit 3 Jahren Vollzeit Linux-User mit NixOS
Pfadfinder
Robert:
Robert Krugmann - aka Rufux
Emails an robert [at] erlug.de erreichen mich.
Erster Vorstand der Erlug e.V.
Projekt-Ingenieur / Software-Entwickler / Software-Architekt / Diplom-Informatiker
Chilizüchter / Motorrad-Fan / ... also find me on open sauce
Was ist NixOS?
Das Prinzip der Deklarativen Konfiguration
Imperativ vs. Declarativ: Statt Befehle wie
apt installauszuführen, beschreibe den gewünschten Endzustand Deines Systems.Die
configuration.nix: Die zentrale Konfigurationsdatei, die alles definiert: Kernel, Pakete, Dienste, Benutzer, Desktop-Umgebung.Vorteil Reproduzierbarkeit: Jede Konfiguration ist eindeutig und kann auf jedem identischen System exakt nachgebaut werden: Keine verstrickten Abhängigkeiten mehr.
Links
NixOS: Hier gibts auch live-ISOs
MyNixOS: Hilfe, Konfiguration, und noch viel mehr.
Die Magie hinter den Kulissen: Der Nix-Paketmanager
Funktionale Paketverwaltung: Pakete werden in
/nix/storemit eindeutigen Hashes abgelegt (z. B./nix/store/6l0bf6...-firefox-128.0).Keine Überschreibung: Änderungen erzeugen neue Store-Pfade. Alte Versionen bleiben erhalten.
Sichere Rollbacks: Bei einem fehlerhaften Update mit
nixos-rebuild switch --rollbacksofort zurückkehren oder die vorherige Version booten.
Praxis: Desktop-Umgebung wechseln (Plasma 6 → GNOME)
Schritt 1: Öffne die Datei
/etc/nixos/configuration.nix.Schritt 2: Ändere die relevanten Module:
# Alte Konfiguration (Plasma) # services.xserver.displayManager.sddm.enable = true; # services.xserver.desktopManager.plasma6.enable = true; # Neue Konfiguration (GNOME) services.xserver.displayManager.gdm.enable = true; services.desktopManager.gnome.enable = true;Schritt 3: Aktiv wird das mit
sudo nixos-rebuild switchund einem Reboot.
Zitat Rufux: "Ich habe mich immer wieder mal für die falsche Oberfläche entschieden. Wechseln war aber immer sehr aufwändig. Daraus entstehen Kompromisse."
Zitat Rufux: "Openssh ist ein wichtiges Mittel beim Backup. So einfach geht das mit NixOS."
Praxis: Systemdienst aktivieren (OpenSSH-Server)
Schritt 1: Füge in
configuration.nixfolgendes hinzu:services.openssh.enable = true;
#optional
services.openssh.settings = {
PermitRootLogin = "no";
PasswordAuthentication = false; # Nur Schlüsselauthentifizierung
AllowUsers = [ "meinBenutzer" ];
};Schritt 2: Und nocheinmal bauen mit
sudo nixos-rebuild switch. Der Dienst wird automatisch gestartet und beim Booten aktiviert.
Warum ist das so revolutionär?
Reproduzierbarkeit: Dein Systemzustand ist dokumentiert und übertragbar.
Sicherheit: Keine unerwünschten Seiteneffekte durch Paket-Installationen.
Git: Nutze eine Versionsverwaltung - wie z.B. git - für Deine Systemkonfiguration .
Experimentieren ohne Angst: Probiere neue Software aus, ohne Risiko.
NixOS für Computerspiele: Ist das möglich?
Die Antwort ist: Ja! Die Leistung ist identisch mit anderen Distributionen.
Herausforderung: Die Paketverwaltung ist anders, aber die Community bietet Lösungen.
Fokus: Steam, Proton, GPU-Treiber konfigurieren.
Gaming-Setup: Die entscheidenden Schritte
GPU-Treiber: Immer in
configuration.nixaktivieren.NVIDIA:
services.xserver.videoDrivers = [ "nvidia" ];AMD:
services.xserver.videoDrivers = [ "amdgpu" ];
Steam & Lutris: Einfach in
environment.systemPackageshinzufügen.Performance-Tools:
mangohud,gamescope,protonup-qtfür optimale Kompatibilität.
Fazit & Ausblick
NixOS bietet einzigartige Vorteile in Bezug auf Kontrolle und Reproduzierbarkeit.
Der Einstieg erfordert ein Umdenken, lohnt sich aber langfristig.
Für Gamer ist NixOS eine vollwertige Alternative, die sich perfekt in die deklarative Philosophie einfügt.
Nächste Schritte: Modularisiere Deine Systemkonfiguration. Probiere Flakes aus.