diff options
| author | Grisha Shipunov | 2024-12-31 17:13:04 +0100 |
|---|---|---|
| committer | Grisha Shipunov | 2024-12-31 17:13:04 +0100 |
| commit | 091b092b2eda01646a8eb7c7e6cdd7a304304928 (patch) | |
| tree | 6c83c4dde9d5729ce02e120ef92434eb16b4211d /hosts | |
| parent | 6fed8f89f75452cbd6ccd607cac16d5190e84990 (diff) | |
back to nix
Diffstat (limited to 'hosts')
| -rw-r--r-- | hosts/toaster/amd.nix | 22 | ||||
| -rw-r--r-- | hosts/toaster/default.nix | 16 | ||||
| -rw-r--r-- | hosts/toaster/hardware-configuration.nix | 70 | ||||
| -rw-r--r-- | hosts/toaster/stateful-network.nix | 2 | ||||
| -rw-r--r-- | hosts/toaster/zfs.nix | 16 |
5 files changed, 53 insertions, 73 deletions
diff --git a/hosts/toaster/amd.nix b/hosts/toaster/amd.nix index 07aa493..667fda1 100644 --- a/hosts/toaster/amd.nix +++ b/hosts/toaster/amd.nix @@ -1,16 +1,14 @@ { pkgs, config, ... }: { boot.initrd.kernelModules = [ "amdgpu" ]; - hardware.opengl = { - driSupport = true; - driSupport32Bit = true; - extraPackages = with pkgs; [ - rocm-opencl-icd - rocm-opencl-runtime - amdvlk - ]; - extraPackages32 = with pkgs; [ - driversi686Linux.amdvlk - ]; - }; + # hardware.graphics = { + # extraPackages = with pkgs; [ + # rocm-opencl-icd + # rocm-opencl-runtime + # amdvlk + # ]; + # extraPackages32 = with pkgs; [ + # driversi686Linux.amdvlk + # ]; + # }; } diff --git a/hosts/toaster/default.nix b/hosts/toaster/default.nix index 0a2d48d..c21086d 100644 --- a/hosts/toaster/default.nix +++ b/hosts/toaster/default.nix @@ -3,12 +3,12 @@ ./amd.nix ./amd-new-pstate.nix ./hardware-configuration.nix - ./irc.nix + # ./irc.nix ./stateful-network.nix - ./network.nix - ./network-vpns.nix - ./secrets.nix - ./secure-boot.nix + # ./network.nix + # ./network-vpns.nix + # ./secrets.nix + # ./secure-boot.nix ./zfs.nix ]; @@ -31,7 +31,7 @@ supportedLocales = [ "all" ]; }; - users.users.grue = { + users.users."0xa" = { extraGroups = [ "wheel" "video" @@ -41,7 +41,7 @@ "libvirtd" ]; group = "users"; - home = "/home/grue"; + home = "/home/0xa"; isNormalUser = true; uid = 1000; }; @@ -60,6 +60,6 @@ # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = "23.05"; # Did you read the comment? + system.stateVersion = "24.11"; # Did you read the comment? } diff --git a/hosts/toaster/hardware-configuration.nix b/hosts/toaster/hardware-configuration.nix index 7e3b087..f8bc0bb 100644 --- a/hosts/toaster/hardware-configuration.nix +++ b/hosts/toaster/hardware-configuration.nix @@ -9,86 +9,56 @@ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "sd_mod" ]; + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usb_storage" "usbhid" "sd_mod" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; +boot.zfs.extraPools = [ "zpool" ]; fileSystems."/" = - { - device = "toasterpool/nixos/root"; + { device = "zpool/root"; fsType = "zfs"; - options = [ "zfsutil" ]; +options = [ "zfsutil" ]; }; fileSystems."/nix" = - { - device = "toasterpool/nixos/nix"; + { device = "zpool/nix"; fsType = "zfs"; - options = [ "zfsutil" ]; - }; - - fileSystems."/var" = - { - device = "toasterpool/userdata/var"; - fsType = "zfs"; - options = [ "zfsutil" ]; - }; - - fileSystems."/var/lib" = - { - device = "toasterpool/userdata/var/lib"; - fsType = "zfs"; - options = [ "zfsutil" ]; - }; - - fileSystems."/var/log" = - { - device = "toasterpool/userdata/var/log"; - fsType = "zfs"; - options = [ "zfsutil" ]; +options = [ "zfsutil" ]; }; fileSystems."/home" = - { - device = "toasterpool/userdata/home"; + { device = "zpool/data/home"; fsType = "zfs"; - options = [ "zfsutil" ]; +options = [ "zfsutil" ]; }; - fileSystems."/home/grue" = - { - device = "toasterpool/userdata/home/grue"; + fileSystems."/var" = + { device = "zpool/data/var"; fsType = "zfs"; - options = [ "zfsutil" ]; +options = [ "zfsutil" ]; }; fileSystems."/boot" = - { - device = "/dev/disk/by-uuid/7663-6239"; + { device = "/dev/disk/by-uuid/A170-F83D"; fsType = "vfat"; - options = [ "X-mount.mkdir" ]; + options = [ "fmask=0022" "dmask=0022" ]; }; - swapDevices = [ - { - device = "/dev/disk/by-id/nvme-eui.ace42e002621ff2b2ee4ac0000000001-part2"; - randomEncryption = true; - } - ]; + swapDevices = + [ { device = "/dev/disk/by-partuuid/8a544c8b-1a49-481b-a685-253ef7478b2c"; +randomEncryption = true;} + ]; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking # (the default) this is the recommended approach. When using systemd-networkd it's # still possible to use this option, but it's recommended to use it in conjunction # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. networking.useDHCP = lib.mkDefault true; - - networking.interfaces.enp1s0f0.useDHCP = lib.mkDefault true; - #networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; - networking.interfaces.wlan0.useDHCP = lib.mkDefault true; + # networking.interfaces.enp1s0f0.useDHCP = lib.mkDefault true; + # networking.interfaces.enp5s0f4u1u1.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp2s0.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - - # services.fprintd.enable = true; } diff --git a/hosts/toaster/stateful-network.nix b/hosts/toaster/stateful-network.nix index 2bb0e04..fcf5b7a 100644 --- a/hosts/toaster/stateful-network.nix +++ b/hosts/toaster/stateful-network.nix @@ -1,5 +1,5 @@ { pkgs, ... }: { - users.users.grue.extraGroups = [ "networkmanager" ]; + users.users."0xa".extraGroups = [ "networkmanager" ]; networking = { hostName = "toaster"; diff --git a/hosts/toaster/zfs.nix b/hosts/toaster/zfs.nix index f4bdeea..b14d910 100644 --- a/hosts/toaster/zfs.nix +++ b/hosts/toaster/zfs.nix @@ -1,4 +1,4 @@ -{ pkgs, ... }: { +{ pkgs, lib, config, ... }: { services.fstrim.enable = true; services.zfs = { autoSnapshot.enable = true; @@ -10,7 +10,19 @@ }; networking.hostId = "dca22577"; boot = { - kernelPackages = pkgs.zfs.latestCompatibleLinuxPackages; + kernelPackages = let + zfsCompatibleKernelPackages = lib.filterAttrs ( + name: kernelPackages: + (builtins.match "linux_[0-9]+_[0-9]+" name) != null + && (builtins.tryEval kernelPackages).success + && (!kernelPackages.${config.boot.zfs.package.kernelModuleAttribute}.meta.broken) + ) pkgs.linuxKernel.packages; + latestKernelPackage = lib.last ( + lib.sort (a: b: (lib.versionOlder a.kernel.version b.kernel.version)) ( + builtins.attrValues zfsCompatibleKernelPackages + ) + ); +in latestKernelPackage; supportedFilesystems = [ "zfs" ]; kernelParams = [ "nohibernate" ]; plymouth.enable = false; |
