Add a new theme and tamper with some files

This commit is contained in:
Jimbo 2024-10-18 16:26:44 -04:00
parent 03fba91ab6
commit 2828d7a210
16 changed files with 124 additions and 104 deletions

View file

@ -0,0 +1,50 @@
{ pkgs, ... }:
let
commonKernelParams = [
# Nvidia settings
"nvidia_drm.fbdev=1"
"nouveau.config=NvGspRm=1"
# VM/GPU passthrough
"amd_iommu=on"
"iommu=pt"
"nested=1"
# Virtualization nonsense
"transparent_hugepage=never"
# Isolate devices into IOMMU groups
"pcie_acs_override=downstream,multifunction"
"pci=routeirq"
];
in {
boot = {
kernelPackages = pkgs.unstable.linuxPackages_zen;
blacklistedKernelModules = [
"pcspkr"
];
kernel.sysctl."vm.max_map_count" = 2147483642;
kernelParams = commonKernelParams ++ [
"vfio-pci.ids=10de:1f82,10de:10fa"
];
# Encryption and TPM
initrd = {
systemd.enable = true;
luks.devices = {
"crypt-ssd" = {
device = "/dev/disk/by-uuid/52110c74-19b6-40ef-9710-e6c9b157005f";
preLVM = true;
allowDiscards = true;
};
};
};
};
# Additional entry to boot from the second GPU
specialisation = {
gputwo.configuration = {
boot.kernelParams = commonKernelParams ++ [ "vfio-pci.ids=10de:2504,10de:228e" ];
};
};
}

View file

@ -2,6 +2,7 @@
{
imports = [
./hardware
./boot
# Apps and programs
../../../modules/system

View file

@ -1,70 +1,26 @@
{ config, lib, pkgs, modulesPath, ... }:
let
# Set common boot paramaters
commonKernelParams = [
# Nvidia settings
"nvidia_drm.fbdev=1"
"nouveau.config=NvGspRm=1"
# VM/GPU passthrough
"amd_iommu=on"
"iommu=pt"
"nested=1"
# Virtualization nonsense
"transparent_hugepage=never"
# Isolate devices into IOMMU groups
"pcie_acs_override=downstream,multifunction"
"pci=routeirq"
];
in {
{ config, lib, modulesPath, ... }:
{
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot = {
kernelPackages = pkgs.unstable.linuxPackages_zen;
blacklistedKernelModules = [
"pcspkr"
];
kernel.sysctl."vm.max_map_count" = 2147483642;
kernelParams = commonKernelParams ++ [
"vfio-pci.ids=10de:1f82,10de:10fa"
];
initrd = {
availableKernelModules = [
"nvme"
"xhci_pci"
"ahci"
"usbhid"
"usb_storage"
"sd_mod"
"xhci_pci"
"ahci"
"usbhid"
"usb_storage"
"sd_mod"
];
kernelModules = [
"dm-snapshot"
"dm-snapshot"
"vfio"
"vfio_pci"
"vfio_iommu_type1"
"kvm-amd"
"vfio_pci"
"vfio_iommu_type1"
"kvm-amd"
];
# Encryption and TPM
systemd.enable = true;
luks.devices = {
"crypt-ssd" = {
device = "/dev/disk/by-uuid/52110c74-19b6-40ef-9710-e6c9b157005f";
preLVM = true;
allowDiscards = true;
};
};
};
};
# Additional entry to boot from the second GPU
specialisation = {
gputwo.configuration = {
boot.kernelParams = commonKernelParams ++ [ "vfio-pci.ids=10de:2504,10de:228e" ];
};
};

View file

@ -14,7 +14,7 @@
# Misc
../../../overlays
../../../variables
../../../variables/look/colors/purple
../../../variables/look/colors/orange
# Imports
nur.nixosModules.nur

View file

@ -1,66 +1,56 @@
# Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }:
{ config, lib, modulesPath, ... }:
{
imports =
[ (modulesPath + "/installer/scan/not-detected.nix")
];
imports = [
(modulesPath + "/installer/scan/not-detected.nix")
];
boot.initrd.availableKernelModules = [ "xhci_pci" "sdhci_pci" ];
boot.initrd.kernelModules = [ "dm-snapshot" ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
boot = {
initrd = {
availableKernelModules = [ "xhci_pci" "sdhci_pci" ];
kernelModules = [ "dm-snapshot" ];
};
kernelModules = [ "kvm-intel" ];
};
fileSystems."/" =
{ device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
fsType = "btrfs";
options = [ "subvol=@" ];
};
fileSystems."/nix" =
{ device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
"/nix" = {
device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
fsType = "btrfs";
options = [ "subvol=@nix" ];
};
fileSystems."/var" =
{ device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
"/var" = {
device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
fsType = "btrfs";
options = [ "subvol=@var" ];
};
fileSystems."/.snapshots" =
{ device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
"/.snapshots" = {
device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
fsType = "btrfs";
options = [ "subvol=@snapshots" ];
};
fileSystems."/home" =
{ device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
"/home" = {
device = "/dev/disk/by-uuid/e8c9c5a8-4df0-4100-8de6-f08a1a774fad";
fsType = "btrfs";
options = [ "subvol=@home" ];
};
fileSystems."/boot" =
{ device = "/dev/disk/by-uuid/1C76-1006";
"/boot" = {
device = "/dev/disk/by-uuid/1C76-1006";
fsType = "vfat";
options = [ "fmask=0022" "dmask=0022" ];
};
};
swapDevices =
[ { device = "/dev/disk/by-uuid/54a9cc22-4a2c-4e04-a968-313c34481489"; }
];
swapDevices = [
{ device = "/dev/disk/by-uuid/54a9cc22-4a2c-4e04-a968-313c34481489"; }
];
# 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.wg0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlan0.useDHCP = lib.mkDefault true;
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}