Commit dcd05f33d78c

Vincent Demeester <vincent@sbr.pm>
2025-05-26 00:13:15
systems: preparing shikoku…
A lot to port or migrate elsewhere, but let's start slow. Signed-off-by: Vincent Demeester <vincent@sbr.pm>
1 parent 391a15b
Changed files (2)
systems/shikoku/boot.nix
@@ -0,0 +1,49 @@
+{
+  config,
+  lib,
+  ...
+}:
+let
+  gpuIDs = [
+    "10de:1b80" # Graphics
+    "10de:10f0" # Audio
+  ];
+in
+{
+  boot = {
+    supportedFilesystems = [ "zfs" ];
+    initrd.availableKernelModules = [
+      "xhci_pci"
+      "ahci"
+      "nvme"
+      "usb_storage"
+      "usbhid"
+      "sd_mod"
+      "sr_mod"
+    ];
+    initrd.kernelModules = [
+      "vfio_pci"
+      "vfio"
+      "vfio_iommu_type1"
+
+      "nvidia"
+      "nvidia_modeset"
+      "nvidia_uvm"
+      "nvidia_drm"
+    ];
+    kernelModules = [
+      "kvm-intel"
+      "nvidia"
+    ];
+    extraModulePackages = [
+      config.boot.kernelPackages.nvidiaPackages.stable
+      config.boot.kernelPackages.nvidia_x11
+    ];
+    kernelParams = [
+      "intel_iommu=on"
+      "kvm_intel.nested=1"
+      ("vfio-pci.ids=" + lib.concatStringsSep "," gpuIDs)
+    ];
+    boot.initrd.kernelModules = [ "nvidia" ];
+  };
+}
systems/shikoku/hardware.nix
@@ -0,0 +1,27 @@
+{
+  config,
+  ...
+}:
+{
+  networking = {
+    hostId = builtins.substring 0 8 (builtins.hashString "md5" config.networking.hostName);
+    # Bridge setup
+    bridges.br1.interfaces = [ "enp0s31f6" ];
+    useDHCP = false;
+    interfaces.br1 = {
+      useDHCP = true;
+    };
+    # FIXME probably change this
+    firewall.enable = false; # we are in safe territory :D
+  };
+  hardware.nvidia = {
+    modesetting.enable = true;
+    open = false;
+    nvidiaSettings = true;
+    package = config.boot.kernelPackages.nvidiaPackages.stable;
+  };
+  hardware.graphics = {
+    enable = true;
+  };
+  nixpkgs.config.allowUnfree = true;
+}