]> Git — Sourcephile - julm/julm-nix.git/blob - hosts/aubergine/hardware.nix
nix: use builtins.path to avoid changes when inputs.self changes
[julm/julm-nix.git] / hosts / aubergine / hardware.nix
1 { pkgs, lib, hostName, ... }:
2 {
3 imports = [
4 ../../nixos/profiles/hardware/apu6b4.nix
5 ../../nixos/profiles/hardware/ME909u-521.nix
6 ../../nixos/profiles/serial.nix
7 ../../nixos/profiles/zfs.nix
8 ../../nixos/profiles/zramSwap.nix
9 ];
10
11 # Setting the machine-id avoids to reencrypt all credentials
12 # when reinstalling NixOS on a new drive.
13 # Manually generated with : uuidgen | tr -d -
14 environment.etc.machine-id.source = ./machine-id.clear;
15
16 # The 32-bit host id of the host, formatted as 8 hexadecimal characters.
17 # You should try to make this id unique among your hosts.
18 # Manually generated with : uuidgen | head -c8
19 networking.hostId = "408a404a";
20
21 /*
22 boot.loader.efi = {
23 canTouchEfiVariables = true;
24 efiSysMountPoint = "/boot/efi";
25 };
26 */
27 boot.loader.grub = {
28 enable = true;
29 devices = [
30 #"/dev/disk/by-id/mmc-SU08G_0xb0320f0f"
31 #"/dev/disk/by-id/usb-Generic-_Multi-Card_20071114173400000-0:0"
32 "/dev/disk/by-id/ata-YMTC_JGS_2201060101833"
33 ];
34 configurationLimit = 9;
35
36 #zfsSupport = true;
37 #efiSupport = true;
38 #enableCryptodisk = true;
39 };
40
41 boot.supportedFilesystems = [ /*"ntfs"*/ "vfat" ];
42 boot.extraModulePackages = [
43 #config.boot.kernelPackages.exfat-nofuse
44 ];
45 boot.zfs.requestEncryptionCredentials = [ hostName ];
46
47 hardware.enableRedistributableFirmware = true;
48
49 powerManagement.powertop.enable = true;
50
51 #services.fprintd.enable = true;
52
53 fileSystems."/" =
54 {
55 device = "${hostName}/root";
56 fsType = "zfs";
57 };
58 fileSystems."/boot" =
59 {
60 device = "/dev/disk/by-partlabel/${hostName}_ssd_boot";
61 fsType = "ext4";
62 };
63 fileSystems."/boot/efi" =
64 {
65 device = "/dev/disk/by-partlabel/${hostName}_ssd_efi";
66 fsType = "vfat";
67 };
68 fileSystems."/nix" =
69 {
70 device = "${hostName}/nix";
71 fsType = "zfs";
72 };
73 fileSystems."/var" =
74 {
75 device = "${hostName}/var";
76 fsType = "zfs";
77 };
78 fileSystems."/home" =
79 {
80 device = "${hostName}/home";
81 fsType = "zfs";
82 };
83 swapDevices =
84 [
85 {
86 device = "/dev/disk/by-partlabel/${hostName}_ssd_swap";
87 randomEncryption = {
88 enable = true;
89 cipher = "aes-xts-plain64";
90 source = "/dev/urandom";
91 };
92 }
93 ];
94
95 hardware.pulseaudio.enable = lib.mkDefault true;
96 #hardware.pulseaudio.tcp.enable = lib.mkDefault true;
97
98 }