2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00
2026-01-02 20:43:09 +01:00

Caution

⚠️ Wichtige Hinweise zur Bootfähigkeit

zwingend manuell anpassen

  • Hardware-Konfiguration.nix: Die Datei hardware-configuration.nix muss für jedes Gerät individuell generiert werden. (Generierte vom System nehmen)
  • Hibernation.nix: Die Werte für boot.resumeDevice (UUID) und resume_offset in der modules/hibernation.nix sind physikalisch an die aktuelle Festplatte gebunden. (erstmal auskommentieren in configuration.nix dann anpassen)
  • nvidia.nix: Muss angepasst je nach GPU
  • boot.nix: nutzt drm nvidia treiber muss ausgetauscht werden initdr anpassen ob amd oder nvidia!
  • Virtualisierung.nix: Die USB-IDs für die Kinesis-Tastatur und Keychron-Maus in der modules/virtualization.nix funktionieren nur mit diesen spezifischen Geräten. (erstmal egal)

███╗ ██╗██╗██╗ ██╗ ██████╗ ███████╗

████╗ ██║██║╚██╗██╔╝██╔═══██╗██╔════╝

██╔██╗ ██║██║ ╚███╔╝ ██║ ██║███████╗

██║╚██╗██║██║ ██╔██╗ ██║ ██║╚════██║

██║ ╚████║██║██╔╝ ██╗╚██████╔╝███████║

╚═╝ ╚═══╝╚═╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝

❄️ Nils' Modular NixOS Config

Desktop View Terminal View Desktop View Terminal View


TODO

  • Waybar reload Tray spawn beheben

  • swaync dynamisch reloading

Struktur

Die Konfiguration ist in logische Module unterteilt, um die Wartung und Übertragbarkeit zu erleichtern:

configuration.nix: Zentraler Einstiegspunkt für das System.

modules/: Systemweite Konfigurationen (Boot, NVIDIA, Virtualisierung, Hibernation).

home/: Benutzerspezifische Konfigurationen via Home-Manager (Hyprland, Waybar, App-Configs).

icons-wallpapers/: Icons, Wallpapers und System-Assets.

templates/: Vorlagen für die dynamische Farberzeugung mit Matugen.


Installation & Setup

1. Repository klonen

git clone https://github.com/DEIN_USERNAME/nixos-config.git ~/nixos
cd ~/nixos

NixOS erwartet seine Konfiguration standardmäßig unter /etc/nixos. Wir verlinken unser lokales Verzeichnis dorthin:

sudo ln -s /home/nils/nixos /etc/nixos

3. Konfiguration anwenden

Verwende für normale Änderungen switch. Wenn du jedoch Kernel-Parameter (wie für Hibernate) oder den Bootloader änderst, ist der boot-Befehl sicherer:

# Empfohlen nach Änderungen an der hibernation.nix oder boot.nix:
sudo nixos-rebuild boot --flake .#nixos


Updates & Wartung

Um die externen Programme und das Basissystem (nixpkgs) auf den neuesten Stand zu bringen, müssen die Flake-Inputs aktualisiert werden:

  1. Inputs aktualisieren:
nix flake update

Dieser Befehl prüft alle Quellen in der flake.nix auf Aktualisierungen und schreibt die neuen Versionen in die flake.lock.

  1. Änderung registrieren:
git add flake.lock

  1. System aktualisieren:
sudo nixos-rebuild switch --flake .#nixos


Workflow

Wenn du Änderungen vornimmst, folge immer diesem Ablauf:

  1. Dateien bearbeiten (in /home/nils/nixos).
  2. Änderungen registrieren: git add . (Ohne diesen Schritt findet NixOS neue Dateien oder Änderungen in Flakes nicht!).
  3. Anwenden:
  • sudo nixos-rebuild switch --flake .#nixos (für sofortige Änderungen).
  • sudo nixos-rebuild boot --flake .#nixos (schreibt den Boot-Eintrag für den nächsten Neustart).

Was wurde ergänzt?

  • Pfad-Klarheit: Es wird explizit auf /home/nils/nixos hingewiesen.
  • Git-Pflicht: Der Hinweis auf git init und die Notwendigkeit von git add für Flakes ist jetzt prominenter.
  • Boot-Befehl: Die Unterscheidung zwischen switch und boot wurde hinzugefügt, da du für das Hibernation-Setup zwingend den boot-Parameter benötigst, um die Kernel-Parameter (resume_offset) im Bootloader zu registrieren.

Soll ich noch einen Abschnitt hinzufügen, wie man überprüft, ob der Symlink korrekt gesetzt wurde?

3. Hardware-Konfiguration

Die hardware-configuration.nix ist spezifisch für jedes Gerät. Sie wird automatisch generiert und sollte im Hauptverzeichnis bleiben.

  • Die Datei wird beim ersten Setup automatisch eingebunden.

  • Wichtig: Falls du das System auf neuer Hardware aufsetzt, generiere sie mit nixos-generate-config neu.

4. Konfiguration anwenden

sudo nixos-rebuild switch --flake .#nixos

Description
No description provided
Readme 296 MiB
Languages
Nix 96.5%
CSS 2.1%
Shell 1.4%