
Lan Tians NixOS-Konfiguration
Dieses Repository enthält die Konfigurationsdateien für alle meine NixOS-Systeme.
LT), die eine breite Palette von Funktionen und Konstanten zur Verwaltung der Konfiguration bereitstellt.Meine Hosts werden in drei Typen kategorisiert:
client: Ein Host, der NixOS ausführt. Normalerweise ein Desktop/Laptop mit einer Desktop-Umgebung.minimal: Ein minimaler NixOS-Host, der für spezielle Zwecke verwendet wird.server: Ein Host, der NixOS ohne GUI ausführt. Normalerweise eine VM, die bei einem Cloud-Anbieter läuft.dns: Mein benutzerdefinierter Nix-zu-DNSControl-Code, der eine DNSControl config.js-Datei generiert, die DNS-Einträge für meine Domänen steuert.
common: Gemeinsame Einträge, die domänenübergreifend geteilt werden.core: Kernkomponente, die einen Nix-Attributsatz in das DNSControl config.js-Format konvertiert.domains: Nix-Definitionen, die einzelne (Gruppen von) Zonen steuern.helpers: Definitionen für Abkürzungen, die von Code in diesem Repository verwendet werden.
home: Meine Home-Manager-Konfigurationen.
common-apps: Apps, die von allen Knoten verwendet werden.client-apps: Apps, die von client-Knoten verwendet werden.hosts: Hostspezifische NixOS-Systemdefinitionen. Jedes Unterverzeichnis bezieht sich auf einen Host. Die Liste der Hosts wird automatisch in flake.nix ermittelt. Konfigurationen hier steuern normalerweise Netzwerkparameter und hostspezifische Optimierungen.
nixos: Allgemeine NixOS-Systemdefinitionen.
Wird von allen Knoten verwendet
common-apps: Apps, die von allen Knoten verwendet werden.minimal-apps: Apps, die von allen Knoten verwendet werden.minimal-components: Systemoptionen, die von allen Knoten verwendet werden.
minimal-modules: Eigenständige NixOS-Module, die theoretisch in nixpkgs aufgenommen werden können. Sie arbeiten unabhängig und sind standardmäßig deaktiviert. Sie fügen nur Optionen hinzu, ohne Dienste zu aktivieren, es sei denn, sie werden explizit konfiguriert. Werden auf alle Host-Typen angewendet.Wird von Client-Knoten verwendet
client-apps: Apps, die spezifisch für Client-Knoten sind.client-components: Komponenten, die spezifisch für Client-Knoten sind.Wird von Server-Knoten verwendet
server-apps: Apps, die von Server-Knoten verwendet werden.server-components: Komponenten, die von Server-Knoten verwendet werden.Wird von Proxmox-VE-Knoten verwendet
pve-components: Komponenten, die spezifisch für Proxmox-VE-Knoten sind.Ergänzungsdateien
hardware: Allgemeine Hardware-Konfigurationsschnipsel, einschließlich LVM und QEMU-VMs.optional-apps: Apps, die von einigen Knoten verwendet werden. Manuelles Importieren in hostspezifischen Definitionen erforderlich.optional-cron-jobs: Cron-Jobs, die von einigen Knoten verwendet werden. Manuelles Importieren in hostspezifischen Definitionen erforderlich.