blob: dc76f88cf50c5abc47822f7d26d8e3c48bd34b87 (
plain) (
blame)
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
{ config, pkgs, lib, ... }:
{
vuizvui.user.devhell.profiles.base.enable = true;
boot = {
loader = {
grub = {
enable = true;
version = 2;
copyKernels = true;
devices = [ "/dev/sda" "/dev/sdb" ];
};
};
zfs = {
enableUnstable = true;
requestEncryptionCredentials = true;
};
initrd = {
availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ];
kernelModules = [ "fuse" "amdgpu" ];
postDeviceCommands = ''
echo none > /sys/block/sda/queue/scheduler
echo none > /sys/block/sdb/queue/scheduler
'';
};
kernelParams = [ "pcie_aspm=off" ];
kernelModules = [ "kvm-amd" ];
extraModulePackages = [ ];
blacklistedKernelModules = [ ];
kernelPackages = lib.mkForce
config.boot.zfs.package.latestCompatibleLinuxPackages;
};
hardware = {
cpu.amd.updateMicrocode = true;
opengl = {
enable = true;
driSupport = true;
extraPackages = with pkgs; [
libvdpau-va-gl
vaapiVdpau
amdvlk
];
};
};
fileSystems."/" = {
device = "zpool/root/nixos";
fsType = "zfs";
};
fileSystems."/home" = {
device = "zpool/home";
fsType = "zfs";
};
fileSystems."/boot" = {
device = "/dev/disk/by-label/boot";
fsType = "ext4";
};
zramSwap.enable = true;
# FIXME Check if this is still necessary in the future
systemd.services.systemd-networkd-wait-online.enable = lib.mkForce false;
networking = {
hostName = "gunnr";
hostId = "29e6affc";
wireless.enable = false;
useNetworkd = true;
interfaces.enp4s0.useDHCP = true;
};
nix = {
settings.max-jobs = lib.mkDefault 16;
};
i18n = {
defaultLocale = "en_US.UTF-8";
};
console = {
font = "Lat2-Terminus16";
keyMap = "dvorak";
};
#### Machine-specific service configuration ####
vuizvui.user.devhell.profiles.services.enable = true;
services = {
printing = {
enable = true;
drivers = [ pkgs.foo2zjs pkgs.hplip ];
};
syncthing = {
enable = true;
};
};
services.zfs.autoScrub.enable = true;
services.timesyncd = {
servers = [ "ntp.canterbury.ac.uk" ];
};
#### Machine-specific packages configuration ####
vuizvui.user.devhell.profiles.packages.enable = true;
nixpkgs.config.mpv.vaapiSupport = true;
nixpkgs.config.mpv.bs2bSupport = true;
environment.systemPackages = with pkgs; [
glxinfo
libva
libvdpau-va-gl
vaapiVdpau
vdpauinfo
xbindkeys
];
}
|