about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--flake/nixosConfigurations/default.nix11
-rw-r--r--hosts/mammun_on_vm/configuration.nix25
-rw-r--r--hosts/mammun_on_vm/hardware/cpu.nix4
-rw-r--r--hosts/mammun_on_vm/hardware/default.nix27
-rw-r--r--hosts/mammun_on_vm/hardware/gpu.nix15
-rw-r--r--hosts/mammun_on_vm/networking.nix16
6 files changed, 98 insertions, 0 deletions
diff --git a/flake/nixosConfigurations/default.nix b/flake/nixosConfigurations/default.nix
index d5ba47a8..0d49a8f4 100644
--- a/flake/nixosConfigurations/default.nix
+++ b/flake/nixosConfigurations/default.nix
@@ -72,6 +72,17 @@ in {
       ]
       ++ defaultModules;
   };
+  mammun_on_vm = inputs.nixpkgs.lib.nixosSystem {
+    inherit system;
+    specialArgs =
+      pkgs.lib.recursiveUpdate inputs
+      sysLib;
+    modules =
+      [
+        ../../hosts/mammun_on_vm/configuration.nix
+      ]
+      ++ defaultModules;
+  };
   lahmu = inputs.nixpkgs.lib.nixosSystem {
     inherit system;
     specialArgs =
diff --git a/hosts/mammun_on_vm/configuration.nix b/hosts/mammun_on_vm/configuration.nix
new file mode 100644
index 00000000..294fc815
--- /dev/null
+++ b/hosts/mammun_on_vm/configuration.nix
@@ -0,0 +1,25 @@
+# vim: ts=2
+{
+  config,
+  lib,
+  nixpkgs,
+  home-manager,
+  pkgs,
+  ...
+}: {
+  imports = [
+    ./hardware
+    ./networking.nix
+
+    ../../system
+
+    ../../services
+  ];
+  soispha = {
+    users = {
+      hashedPassword = "$y$jDT$O/42/7REOL50onRYcTV9R1$Ot3bPAh2raHmPN3yScP4wsJRtNqrMtTBzOq9oRJeRA0";
+    };
+  };
+
+  system.stateVersion = "23.05";
+}
diff --git a/hosts/mammun_on_vm/hardware/cpu.nix b/hosts/mammun_on_vm/hardware/cpu.nix
new file mode 100644
index 00000000..2d7232cd
--- /dev/null
+++ b/hosts/mammun_on_vm/hardware/cpu.nix
@@ -0,0 +1,4 @@
+{config, ...}: {
+  powerManagement.cpuFreqGovernor = "powersave";
+  hardware.cpu.amd.updateMicrocode = true; # Why not?
+}
diff --git a/hosts/mammun_on_vm/hardware/default.nix b/hosts/mammun_on_vm/hardware/default.nix
new file mode 100644
index 00000000..e9766f05
--- /dev/null
+++ b/hosts/mammun_on_vm/hardware/default.nix
@@ -0,0 +1,27 @@
+{
+  config,
+  lib,
+  pkgs,
+  modulesPath,
+  ...
+}: {
+  imports = [
+    (modulesPath + "/installer/scan/not-detected.nix")
+    ./cpu.nix
+    ./gpu.nix
+  ];
+
+  nixpkgs.hostPlatform = "x86_64-linux";
+
+  system.fileSystemLayouts = {
+    enable = true;
+    mainDisk = "/dev/disk/by-uuid/b1974623-df36-4367-bf12-c0778cd8ff33";
+    efiDisk = "/dev/disk/by-uuid/201D-E6E7";
+  };
+
+  boot = {
+    kernelModules = ["kvm-amd"];
+
+    initrd.availableKernelModules = ["xhci_pci" "ahci" "ehci_pci" "sd_mod" "sr_mod" "sdhci_pci"];
+  };
+}
diff --git a/hosts/mammun_on_vm/hardware/gpu.nix b/hosts/mammun_on_vm/hardware/gpu.nix
new file mode 100644
index 00000000..d744962c
--- /dev/null
+++ b/hosts/mammun_on_vm/hardware/gpu.nix
@@ -0,0 +1,15 @@
+# vim: ts=2
+{pkgs, ...}: {
+  boot.initrd.kernelModules = ["amdgpu"];
+  # for Southern Islands (SI ie. GCN 1) cards and for Sea Islands (CIK ie. GCN 2) cards
+  boot.kernelParams = ["radeon.si_support=0" "amdgpu.si_support=1" "radeon.cik_support=0" "amdgpu.cik_support=1"];
+
+  hardware.opengl.driSupport = true;
+  # For 32 bit applications
+  hardware.opengl.driSupport32Bit = true;
+
+  hardware.opengl.extraPackages = with pkgs; [
+    rocm-opencl-icd
+    rocm-opencl-runtime
+  ];
+}
diff --git a/hosts/mammun_on_vm/networking.nix b/hosts/mammun_on_vm/networking.nix
new file mode 100644
index 00000000..e243ebe0
--- /dev/null
+++ b/hosts/mammun_on_vm/networking.nix
@@ -0,0 +1,16 @@
+{
+  config,
+  lib,
+  ...
+}: {
+  networking = {
+    networkmanager = {
+      enable = true;
+      dns = "default";
+      wifi = {
+        powersave = true;
+      };
+    };
+    hostName = "mammun";
+  };
+}