summaryrefslogtreecommitdiff
path: root/hosts/workstation/hardware.nix
blob: 7f12b5a8ee891d0928d645b066352227e4b0cf6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# 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,
modulesPath,
...
}:

{
	imports = [ (modulesPath + "/profiles/all-hardware.nix") ];

	boot.initrd.availableKernelModules = [
		"xhci_pci"
		"ahci"
		"nvme"
		"usbcore"
		"usb_storage"
		"sd_mod"
		"rtsx_pci_sdmmc"
		"btrfs"
	];
	boot.initrd.kernelModules = [ ];
	boot.kernelModules = [
		"kvm-intel"
		"amdgpu"
		"radeon"
		"video=DP-1:1920x1080@60"
		"video=DP-2:1920x1080@60"
		"video=HDMI-A-1:1920x1080@60"
		"radeon.si_support=0"
		"radeon.cik_support=0"
		"amdgpu.si_support=1"
		"amdgpu.cik_support=1"
	];
	boot.extraModulePackages = [ ];
	boot.kernelParams = [
		"quiet"
		"loglevel=3"
	];

	fileSystems."/" = {
		device = "/dev/disk/by-uuid/0bc7dac6-ac83-4429-8f0c-7d92e46e387b";
		fsType = "btrfs";
	};

	boot.initrd.luks.devices."root".device = "/dev/disk/by-uuid/df2e1c34-093a-4678-9665-8c96ca42b1a2";

	fileSystems."/boot" = {
		device = "/dev/disk/by-uuid/72B1-F610";
		fsType = "vfat";
		options = [
			"fmask=0077"
			"dmask=0077"
		];
	};

	fileSystems."/mnt/data" = {
		device = "/dev/disk/by-uuid/303cec14-b66c-49af-8441-f2e7326ee8ad";
		fsType = "btrfs";
		options = [
			"users"
			"nofail"
		];
	};

	fileSystems."/mnt/storage" = {
		device = "//night-server/storage";
		fsType = "cifs";
		options = [
			"users"
			"nofail"
			"x-systemd.automount"
			"noauto"
			"x-systemd.idle-timeout=60"
			"x-systemd.device-timeout=5s"
			"x-systemd.mount-timeout=5s"
			"credentials=/etc/keys/storage"
			"uid=1000"
			"gid=100"
		];
	};

	swapDevices = [ ];

	# 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.enp6s0.useDHCP = lib.mkDefault true;

	nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
	hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
}