Flake for my NixOS devices

Change over black-mesa WOL

bwc9876.dev 0017d5c9 e9a92fe0

verified
+109 -71
+109 -71
systemConfigs/black-mesa.nix
··· 2 2 outputs, 3 3 inputs, 4 4 ... 5 - }: { 5 + }: 6 + { 6 7 system = "x86_64-linux"; 7 - specialArgs.inputs = inputs // inputs.spoon.inputs // {inherit (inputs) self;}; 8 + specialArgs.inputs = inputs // inputs.spoon.inputs // { inherit (inputs) self; }; 8 9 9 10 modules = [ 10 11 inputs.spoon.nixosModules.black-mesa 11 - (outputs.lib.applyRoles ["base" "latest-linux" "networking" "ssh" "graphics" "games" "fun" "dev" "normalboot" "mc-server"]) 12 + (outputs.lib.applyRoles [ 13 + "base" 14 + "latest-linux" 15 + "networking" 16 + "ssh" 17 + "graphics" 18 + "games" 19 + "fun" 20 + "dev" 21 + "normalboot" 22 + "mc-server" 23 + ]) 24 + { 25 + systemd.network.links."79-eth-wol" = { 26 + matchConfig = { 27 + Type = "ether"; 28 + Driver = "!veth"; 29 + Virtualization = "false"; 30 + }; 31 + linkConfig = { 32 + WakeOnLan = "magic"; 33 + NamePolicy = "keep kernel database onboard slot path"; 34 + AlternativeNamesPolicy = "database onboard slot path mac"; 35 + MACAddressPolicy = "persistent"; 36 + }; 37 + }; 38 + } 12 39 { 13 - imports = [inputs.bingus.nixosModules.default]; 14 - nixpkgs.overlays = [inputs.bingus.overlays.default]; 40 + imports = [ inputs.bingus.nixosModules.default ]; 41 + nixpkgs.overlays = [ inputs.bingus.overlays.default ]; 15 42 16 43 services.bingus-bot = { 17 44 enable = true; 18 - replyChannels = [1295447496948191262 1295245646542143489]; 45 + replyChannels = [ 46 + 1295447496948191262 47 + 1295245646542143489 48 + ]; 19 49 }; 20 50 } 21 - ({ 22 - modulesPath, 23 - lib, 24 - config, 25 - pkgs, 26 - ... 27 - }: { 28 - imports = [(modulesPath + "/installer/scan/not-detected.nix")]; 29 - networking.hostName = "black-mesa"; 30 - system.stateVersion = "25.05"; 51 + ( 52 + { 53 + modulesPath, 54 + lib, 55 + config, 56 + pkgs, 57 + ... 58 + }: 59 + { 60 + imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; 61 + networking.hostName = "black-mesa"; 62 + system.stateVersion = "25.05"; 31 63 32 - boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"]; 33 - boot.initrd.kernelModules = ["amdgpu"]; 34 - boot.kernelModules = ["kvm-amd"]; 35 - boot.extraModulePackages = []; 64 + boot.initrd.availableKernelModules = [ 65 + "nvme" 66 + "xhci_pci" 67 + "ahci" 68 + "usbhid" 69 + "usb_storage" 70 + "sd_mod" 71 + ]; 72 + boot.initrd.kernelModules = [ "amdgpu" ]; 73 + boot.kernelModules = [ "kvm-amd" ]; 74 + boot.extraModulePackages = [ ]; 36 75 37 - services.pulseaudio.enable = false; 76 + services.pulseaudio.enable = false; 38 77 39 - security.rtkit.enable = true; # Allows pipewire and friends to run realtime 78 + security.rtkit.enable = true; # Allows pipewire and friends to run realtime 40 79 41 - services.pipewire = { 42 - enable = true; 43 - pulse.enable = true; 44 - alsa = { 80 + services.pipewire = { 45 81 enable = true; 46 - support32Bit = true; 82 + pulse.enable = true; 83 + alsa = { 84 + enable = true; 85 + support32Bit = true; 86 + }; 47 87 }; 48 - }; 49 88 50 - programs.steam = { 51 - enable = true; 52 - remotePlay.openFirewall = true; 53 - dedicatedServer.openFirewall = true; 54 - localNetworkGameTransfers.openFirewall = true; 55 - }; 89 + programs.steam = { 90 + enable = true; 91 + remotePlay.openFirewall = true; 92 + dedicatedServer.openFirewall = true; 93 + localNetworkGameTransfers.openFirewall = true; 94 + }; 56 95 57 - programs.gamescope = { 58 - enable = true; 59 - # package = pkgs.gamescope.overrideAttrs (new: old: { 60 - # src = pkgs.fetchFromGitHub { 61 - # owner = "ValveSoftware"; 62 - # repo = "gamescope"; 63 - # rev = "186f3a3ed0ce8eb5f3a956d3916a3331ea4e3ab2"; 64 - # fetchSubmodules = true; 65 - # hash = "sha256-zAzIi3syJYtbKjydp19d1OxZvMjXb+eO+mXT/mJPEuA="; 66 - # }; 67 - # }); 68 - capSysNice = true; 69 - }; 70 - 71 - fileSystems."/" = { 72 - device = "/dev/nvme0n1p2"; 73 - fsType = "ext4"; 74 - }; 96 + programs.gamescope = { 97 + enable = true; 98 + # package = pkgs.gamescope.overrideAttrs (new: old: { 99 + # src = pkgs.fetchFromGitHub { 100 + # owner = "ValveSoftware"; 101 + # repo = "gamescope"; 102 + # rev = "186f3a3ed0ce8eb5f3a956d3916a3331ea4e3ab2"; 103 + # fetchSubmodules = true; 104 + # hash = "sha256-zAzIi3syJYtbKjydp19d1OxZvMjXb+eO+mXT/mJPEuA="; 105 + # }; 106 + # }); 107 + capSysNice = true; 108 + }; 75 109 76 - fileSystems."/boot" = { 77 - device = "/dev/nvme0n1p1"; 78 - fsType = "vfat"; 79 - }; 110 + fileSystems."/" = { 111 + device = "/dev/nvme0n1p2"; 112 + fsType = "ext4"; 113 + }; 80 114 81 - fileSystems."/mnt/storage" = { 82 - device = "/dev/sda1"; 83 - fsType = "btrfs"; 84 - }; 115 + fileSystems."/boot" = { 116 + device = "/dev/nvme0n1p1"; 117 + fsType = "vfat"; 118 + }; 85 119 86 - swapDevices = []; 120 + fileSystems."/mnt/storage" = { 121 + device = "/dev/sda1"; 122 + fsType = "btrfs"; 123 + }; 87 124 88 - hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; 125 + swapDevices = [ ]; 89 126 90 - hardware.graphics.enable = true; 91 - services.xserver.videoDrivers = ["amdgpu"]; 127 + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; 92 128 93 - networking.interfaces.enp4s0.wakeOnLan.enable = true; 129 + hardware.graphics.enable = true; 130 + services.xserver.videoDrivers = [ "amdgpu" ]; 94 131 95 - # services.nix-serve = { 96 - # enable = true; 97 - # secretKeyFile = "/etc/nix-serve-key"; 98 - # openFirewall = true; 99 - # }; 100 - }) 132 + # services.nix-serve = { 133 + # enable = true; 134 + # secretKeyFile = "/etc/nix-serve-key"; 135 + # openFirewall = true; 136 + # }; 137 + } 138 + ) 101 139 ]; 102 140 }