2023-11-22 15:33:16 -05:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
modulesPath,
|
|
|
|
pkgs,
|
|
|
|
...
|
2024-03-12 19:44:05 -04:00
|
|
|
}: {
|
2024-03-08 16:59:41 -05:00
|
|
|
nixpkgs.hostPlatform = "x86_64-linux";
|
2023-11-22 15:33:16 -05:00
|
|
|
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
2023-10-17 18:45:08 -04:00
|
|
|
|
|
|
|
boot = {
|
2024-03-12 19:44:05 -04:00
|
|
|
kernelPackages = pkgs.linuxPackages_zen;
|
2024-02-17 14:52:43 -05:00
|
|
|
|
|
|
|
kernelParams = ["amd_pstate=active"];
|
2023-11-22 15:33:16 -05:00
|
|
|
kernelModules = ["kvm-amd"];
|
2024-02-17 14:52:43 -05:00
|
|
|
|
|
|
|
# Zenpower for ryzen cpu monitoring
|
2024-08-31 19:16:06 -04:00
|
|
|
extraModulePackages = builtins.attrValues {
|
|
|
|
inherit
|
|
|
|
(config.boot.kernelPackages)
|
|
|
|
v4l2loopback
|
|
|
|
zenpower
|
|
|
|
;
|
|
|
|
};
|
2024-02-17 14:52:43 -05:00
|
|
|
blacklistedKernelModules = ["k10temp"];
|
2023-10-15 23:12:19 -04:00
|
|
|
|
2023-11-22 15:33:16 -05:00
|
|
|
supportedFilesystems = ["ntfs"];
|
2023-10-17 21:17:10 -04:00
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
consoleLogLevel = 0;
|
2023-10-17 17:53:10 -04:00
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
initrd = {
|
|
|
|
verbose = false;
|
|
|
|
systemd.enable = true;
|
2023-11-22 15:33:16 -05:00
|
|
|
availableKernelModules = ["nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod"];
|
2023-10-17 18:45:08 -04:00
|
|
|
};
|
2023-10-17 17:53:10 -04:00
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
loader = {
|
|
|
|
efi.canTouchEfiVariables = true;
|
|
|
|
timeout = 2;
|
2024-02-17 14:52:43 -05:00
|
|
|
|
|
|
|
systemd-boot = {
|
|
|
|
enable = true;
|
|
|
|
consoleMode = "max";
|
|
|
|
configurationLimit = 30;
|
|
|
|
};
|
2023-10-17 18:45:08 -04:00
|
|
|
};
|
|
|
|
};
|
2023-10-15 23:12:19 -04:00
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
fileSystems = {
|
2023-11-22 15:33:16 -05:00
|
|
|
"/" = {
|
2024-08-25 12:17:29 -04:00
|
|
|
device = "/dev/disk/by-label/NIXROOT";
|
2023-10-15 23:12:19 -04:00
|
|
|
fsType = "btrfs";
|
|
|
|
};
|
|
|
|
|
2024-08-25 02:00:32 -04:00
|
|
|
# sudo btrfs subvolume create /@swap
|
|
|
|
"/swap" = {
|
|
|
|
device = "/dev/disk/by-label/NIXROOT";
|
|
|
|
fsType = "btrfs";
|
2024-08-25 12:17:29 -04:00
|
|
|
# Idk why this is the subvol
|
|
|
|
options = ["subvol=@/@swap"];
|
2024-08-25 02:00:32 -04:00
|
|
|
};
|
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
"/boot" = {
|
2024-08-25 12:17:29 -04:00
|
|
|
device = "/dev/disk/by-label/NIXBOOT";
|
2023-10-15 23:12:19 -04:00
|
|
|
fsType = "vfat";
|
|
|
|
};
|
2023-10-17 21:17:10 -04:00
|
|
|
|
|
|
|
"/run/media/matt/Games" = {
|
|
|
|
device = "/dev/disk/by-uuid/da62f4ee-d4a6-4fdd-ab12-9c5e131c6f30";
|
|
|
|
fsType = "ext4";
|
|
|
|
};
|
2023-10-17 18:45:08 -04:00
|
|
|
};
|
2023-10-15 23:12:19 -04:00
|
|
|
|
2024-08-18 23:14:30 -04:00
|
|
|
swapDevices = [
|
|
|
|
{
|
2024-08-25 02:00:32 -04:00
|
|
|
device = "/swap/swapfile";
|
2024-08-18 23:14:30 -04:00
|
|
|
size = 16 * 1024;
|
|
|
|
}
|
|
|
|
];
|
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
zramSwap.enable = true;
|
2024-08-18 23:14:30 -04:00
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
hardware = {
|
2024-08-18 23:14:30 -04:00
|
|
|
cpu.amd.updateMicrocode = config.hardware.enableRedistributableFirmware;
|
2023-10-17 18:45:08 -04:00
|
|
|
uinput.enable = true;
|
|
|
|
};
|
2023-10-15 23:12:19 -04:00
|
|
|
|
2023-10-17 18:45:08 -04:00
|
|
|
virtualisation = {
|
|
|
|
libvirtd.enable = true;
|
2024-01-21 20:08:27 -05:00
|
|
|
spiceUSBRedirection.enable = true;
|
2023-10-17 18:45:08 -04:00
|
|
|
};
|
2024-08-31 19:16:06 -04:00
|
|
|
environment.systemPackages = builtins.attrValues {
|
|
|
|
inherit
|
|
|
|
(pkgs)
|
|
|
|
qemu
|
|
|
|
virtiofsd
|
2024-11-18 00:34:01 -05:00
|
|
|
virt-v2v
|
2024-08-31 19:16:06 -04:00
|
|
|
;
|
|
|
|
};
|
2024-03-03 16:13:56 -05:00
|
|
|
|
|
|
|
nvidia = {
|
|
|
|
enable = true;
|
|
|
|
enableNvidiaSettings = true;
|
|
|
|
enableWayland = true;
|
|
|
|
enableCUDA = true;
|
|
|
|
};
|
2023-10-15 23:12:19 -04:00
|
|
|
}
|