diff --git a/flake.nix b/flake.nix index c99af01..e7b223f 100644 --- a/flake.nix +++ b/flake.nix @@ -6,14 +6,10 @@ nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable"; }; - outputs = { - self, - nixpkgs, - nixpkgs-unstable, - ... - } @ inputs: let + outputs = { self, nixpkgs, nixpkgs-unstable, ... }@inputs: + let system = "x86_64-linux"; - + # Create unstable package set unstable = import nixpkgs-unstable { inherit system; @@ -24,15 +20,17 @@ specialArgs = { inherit inputs unstable; }; + in { # NixOS system configurations nixosConfigurations = { + # congenital-optimist - AMD Threadripper workstation congenital-optimist = nixpkgs.lib.nixosSystem { inherit system specialArgs; modules = [ ./machines/congenital-optimist/configuration.nix - ./machines/congenital-optimist/hardware-co.nix + ./machines/congenital-optimist/hardware-configuration.nix ./modules/common/nix.nix ./modules/common/base.nix ./modules/common/tty.nix @@ -77,8 +75,8 @@ }; # Custom packages for the home lab - packages.${system} = import ./packages { - pkgs = nixpkgs.legacyPackages.${system}; + packages.${system} = import ./packages { + pkgs = nixpkgs.legacyPackages.${system}; }; # Development shells for different projects @@ -149,4 +147,4 @@ # Formatter for Nix files formatter.${system} = nixpkgs.legacyPackages.${system}.alejandra; }; -} +} \ No newline at end of file diff --git a/machines/congenital-optimist/configuration.nix b/machines/congenital-optimist/configuration.nix index 3443521..68e280b 100644 --- a/machines/congenital-optimist/configuration.nix +++ b/machines/congenital-optimist/configuration.nix @@ -6,8 +6,7 @@ ... }: { imports = [ - ./hardware-co.nix - ./disk-ram-co.nix + ./hardware-configuration.nix ./network-congenital-optimist.nix # Security modules @@ -19,6 +18,9 @@ # Services ../../modules/services/nfs-client.nix + # Hardware modules + ../../modules/hardware/amd-workstation.nix + # Desktop environments ../../modules/desktop/common.nix ../../modules/desktop/gnome.nix diff --git a/machines/congenital-optimist/disk-ram-co.nix b/machines/congenital-optimist/hardware-configuration.nix similarity index 100% rename from machines/congenital-optimist/disk-ram-co.nix rename to machines/congenital-optimist/hardware-configuration.nix diff --git a/machines/congenital-optimist/hardware-co.nix b/modules/hardware/amd-workstation.nix similarity index 73% rename from machines/congenital-optimist/hardware-co.nix rename to modules/hardware/amd-workstation.nix index 3928085..6b5d5ae 100644 --- a/machines/congenital-optimist/hardware-co.nix +++ b/modules/hardware/amd-workstation.nix @@ -1,7 +1,6 @@ { config, pkgs, - lib, ... }: { # AMD GPU configuration @@ -17,8 +16,12 @@ powerOnBoot = true; }; - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + # ZRAM swap configuration + zramSwap = { + enable = true; + algorithm = "zstd"; + }; + # Audio system (PipeWire) services.pipewire = { enable = true;