about summary refs log tree commit diff stats
path: root/hosts/tiamat/hardware.nix
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--hosts/tiamat/hardware.nix65
1 files changed, 65 insertions, 0 deletions
diff --git a/hosts/tiamat/hardware.nix b/hosts/tiamat/hardware.nix
new file mode 100644
index 00000000..d8e62af0
--- /dev/null
+++ b/hosts/tiamat/hardware.nix
@@ -0,0 +1,65 @@
+{
+  modulesPath,
+  pkgs,
+  ...
+}: {
+  imports = [
+    (modulesPath + "/installer/scan/not-detected.nix") # TODO: is this necessary?
+  ];
+
+  hardware = {
+    #   opengl.extraPackages = with pkgs; [
+    #     rocm-opencl-icd # open-cl
+    #     amdvlk # or directly through mesa
+    #     amd-media-driver # libva
+    #   ];
+    #
+    #   # Force radv, TODO: is this logical?
+    #   environment.variables.AMD_VULKAN_ICD = "RADV";
+
+    opengl = {
+      enable = true;
+      extraPackages = with pkgs; [
+        vaapiVdpau
+        libvdpau-va-gl
+
+        amdvlk # or directly through mesa
+      ];
+    };
+
+    cpu.amd.updateMicrocode = true; # Why not?
+    bluetooth = {
+      enable = true;
+      powerOnBoot = true;
+    };
+  };
+
+  soispha = {
+    hardware = {
+      enable = true;
+      moonlander = {
+        enableFlashing = true;
+      };
+    };
+    disks = {
+      enable = true;
+      disk = "/dev/disk/by-id/nvme-CT1000P5SSD8_21032C857568";
+      ssd = true;
+      swap = {
+        uuid = "057b5041-6fee-4739-84a9-ade8f0f51519";
+        resumeOffset = "533760";
+      };
+    };
+  };
+
+  boot = {
+    kernelModules = ["kvm-amd"];
+
+    kernelParams = [
+      # Avoid loosing the Bluetooth controller to a sleep, from which it never wakes again
+      "btusb.enable_autosuspend=n"
+    ];
+
+    initrd.availableKernelModules = ["nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod"];
+  };
+}