This repository has no description
2.5 kB
107 lines
1{ modulesPath, config, lib, pkgs, ... }:
2
3{
4
5 imports = [
6 ./config.nix
7 (modulesPath + "/installer/scan/not-detected.nix")
8 ];
9
10 boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "sd_mod" ];
11 boot.kernelModules = [ "kvm-intel" ];
12 boot.swraid.enable = true;
13
14 fileSystems."/" = {
15 device = "rpool/root/nixos";
16 fsType = "zfs";
17 };
18
19 fileSystems."/boot" = {
20 device = "/dev/disk/by-uuid/d155d6ff-8e89-4876-a9e7-d1b7ba6a4804";
21 fsType = "ext4";
22 };
23
24 fileSystems."/backups" = {
25 device = "tank/backups";
26 fsType = "zfs";
27 };
28
29 fileSystems."/srv/http" = {
30 device = "tank/srv-http";
31 fsType = "zfs";
32 };
33
34 fileSystems."/var/download" = {
35 device = "tank/download";
36 fsType = "zfs";
37 };
38
39 fileSystems."/var/lib/containers" = {
40 device = "tank/containers";
41 fsType = "zfs";
42 };
43
44 fileSystems."/home" = {
45 device = "tank/home";
46 fsType = "zfs";
47 };
48
49 fileSystems."/var/lib/nextcloud" = {
50 device = "tank/nextcloud";
51 fsType = "zfs";
52 };
53
54 fileSystems."/var/lib/libvirt" = {
55 device = "tank/libvirt";
56 fsType = "zfs";
57 };
58
59 fileSystems."/var/realwallpaper/archive" = {
60 device = "tank/wallpaper";
61 fsType = "zfs";
62 };
63
64 # silence mdmonitor.service failures
65 # https://github.com/NixOS/nixpkgs/issues/72394
66 environment.etc."mdadm.conf".text = ''
67 MAILADDR root
68 '';
69
70 nix.maxJobs = lib.mkDefault 8;
71 powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
72
73 boot.loader.grub.enable = true;
74 boot.loader.grub.version = 2;
75 boot.loader.grub.devices = [ "/dev/sda" "/dev/sdb" ];
76
77 # we don't pay for power there and this might solve a problem we observed at least once
78 # https://www.thomas-krenn.com/de/wiki/PCIe_Bus_Error_Status_00001100_beheben
79 boot.kernelParams = [ "pcie_aspm=off" "net.ifnames=0" "nomodeset" ];
80 networking.dhcpcd.enable = false;
81
82
83 networking.useNetworkd = lib.mkForce false;
84 systemd.network.enable = lib.mkForce false;
85 # bridge config
86 networking.bridges."ext-br".interfaces = [ "eth0" ];
87 networking = {
88 hostId = "2283aaae";
89 defaultGateway = "95.216.1.129";
90 defaultGateway6 = { address = "fe80::1"; interface = "ext-br"; };
91 # Use google's public DNS server
92 nameservers = [ "8.8.8.8" ];
93 interfaces.ext-br.ipv4.addresses = [
94 {
95 address = "95.216.1.150";
96 prefixLength = 26;
97 }
98 ];
99 interfaces.ext-br.ipv6.addresses = [
100 {
101 address = "2a01:4f9:2a:1e9::1";
102 prefixLength = 64;
103 }
104 ];
105 };
106
107}