nixos/systems/gwyn/default.nix

104 lines
2.1 KiB
Nix
Raw Normal View History

2024-01-01 13:14:24 +01:00
{ hostname }:
2024-02-02 13:45:05 +01:00
{
inputs,
lib,
pkgs,
...
}:
{
2022-02-28 22:34:34 +01:00
imports = [
2023-05-29 16:21:23 +02:00
inputs.nixos-hardware.nixosModules.dell-precision-5530
inputs.nixos-hardware.nixosModules.common-gpu-intel
2022-02-28 22:34:34 +01:00
];
boot.initrd.availableKernelModules = [
2021-11-29 18:38:28 +01:00
"aesni_intel"
"ahci"
"cryptd"
2021-11-29 18:44:15 +01:00
"nvme"
"rtsx_pci_sdmmc"
2021-11-29 18:38:28 +01:00
"sd_mod"
2021-11-29 18:44:15 +01:00
"sr_mod"
"usbhid"
2021-11-29 18:38:28 +01:00
"usb_storage"
"xhci_pci"
];
2021-11-22 15:12:19 +01:00
boot.initrd.kernelModules = [ "dm-snapshot" ];
2024-02-02 13:45:05 +01:00
boot.kernelModules = [
"kvm-intel"
"sg"
];
2021-11-16 20:57:04 +01:00
boot.extraModulePackages = [ ];
boot.kernelParams = [
"ip=dhcp" # required for ssh at initrd
];
2023-12-11 13:45:53 +01:00
2024-01-09 18:56:16 +01:00
boot.initrd.luks.devices."cryptlvm" = {
allowDiscards = true;
device = "/dev/nvme0n1p2";
};
2021-11-16 20:57:04 +01:00
2022-06-27 14:57:05 +02:00
# Required to build aarch64 packages
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
2024-02-02 13:45:05 +01:00
boot.supportedFilesystems = [
"apfs"
"exfat"
"ext4"
"nfs"
"nfs4"
"ntfs"
"cifs"
"f2fs"
];
2022-06-27 14:57:05 +02:00
2022-01-03 20:29:08 +01:00
fileSystems."/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
};
fileSystems."/boot" = {
device = "/dev/disk/by-label/BOOT";
fsType = "vfat";
};
2022-01-10 20:58:26 +01:00
2022-09-06 23:03:29 +02:00
networking.hostName = hostname;
2022-01-10 20:58:26 +01:00
2024-03-07 21:01:47 +01:00
zramSwap = {
enable = true;
};
2024-02-02 13:45:05 +01:00
swapDevices = [ { device = "/dev/disk/by-label/swap"; } ];
2023-05-27 17:38:54 +02:00
2023-05-27 18:16:19 +02:00
hardware = {
2023-05-29 09:17:12 +02:00
az-bluetooth.enable = true;
az-dvd.enable = true;
az-nvidia.enable = true;
2023-12-11 13:02:47 +01:00
opengl.enable = true;
2023-05-27 18:16:19 +02:00
};
2023-05-31 21:33:31 +02:00
profiles.az-desktop.enable = true;
2023-05-27 17:38:54 +02:00
programs = {
2024-02-25 09:31:49 +01:00
az-adb.enable = true;
2023-08-19 22:15:47 +02:00
az-distrobox.enable = true;
2023-05-29 09:17:12 +02:00
az-lockscreen.enable = true;
az-makemkv.enable = true;
az-restic-management.enable = true;
2023-05-27 17:38:54 +02:00
};
2022-01-10 20:58:26 +01:00
2023-05-29 15:20:49 +02:00
services = {
2023-05-31 22:01:26 +02:00
az-logs-share.enable = true;
az-restic-client-desktop.enable = true;
2023-05-31 22:13:56 +02:00
az-tlp.enable = true;
2023-05-29 15:20:49 +02:00
az-x86.enable = true;
2024-01-09 18:56:16 +01:00
fstrim.enable = true; # Enable TRIM for SD cards
2023-06-19 21:08:12 +02:00
hardware.bolt.enable = true; # Enable Thunderbolt control
2023-09-04 16:48:42 +02:00
logind.lidSwitchExternalPower = "ignore";
# Disable the integrated webcam
udev.extraRules = ''
ACTION=="add", ATTR{idVendor}=="0c45", ATTR{idProduct}=="671d", RUN="${pkgs.bash}/bin/sh -c 'echo 1 >/sys/\$devpath/remove'"
'';
2023-05-29 15:20:49 +02:00
};
2023-05-27 17:54:43 +02:00
2022-01-10 20:58:26 +01:00
virtualisation.virtualbox.host.enable = true;
2021-11-16 20:57:04 +01:00
}