74 lines
1.9 KiB
Nix
74 lines
1.9 KiB
Nix
|
{ config, lib, pkgs, modulesPath, ... }:
|
||
|
|
||
|
let generateMac = pkgs.lib.network.generate-mac-address;
|
||
|
|
||
|
in {
|
||
|
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
|
||
|
|
||
|
config = {
|
||
|
boot = {
|
||
|
initrd.availableKernelModules = [ "ahci" "xhci_pci" ];
|
||
|
kernelModules = [ "kvm-intel" ];
|
||
|
loader.grub = {
|
||
|
enable = true;
|
||
|
device =
|
||
|
"/dev/disk/by-id/ata-Samsung_SSD_870_EVO_250GB_S6PENX0T445931Y";
|
||
|
};
|
||
|
kernelPackages = pkgs.linuxPackages_latest;
|
||
|
};
|
||
|
|
||
|
system.stateVersion = "23.05";
|
||
|
|
||
|
fileSystems = {
|
||
|
"/" = {
|
||
|
device = "locum-root";
|
||
|
fsType = "tmpfs";
|
||
|
options = [ "mode=755" "size=16G" "noexec" ];
|
||
|
};
|
||
|
"/boot" = {
|
||
|
device = "/dev/disk/by-label/locum-boot";
|
||
|
fsType = "ext4";
|
||
|
options = [ "noatime" "noexec" ];
|
||
|
};
|
||
|
"/state" = {
|
||
|
device = "/dev/disk/by-label/locum-data";
|
||
|
fsType = "btrfs";
|
||
|
options = [ "noatime" "compress=zstd" "noexec" "subvol=@state" ];
|
||
|
};
|
||
|
"/nix" = {
|
||
|
device = "/dev/disk/by-label/locum-data";
|
||
|
fsType = "btrfs";
|
||
|
options = [ "noatime" "compress=zstd" "subvol=@nix" ];
|
||
|
};
|
||
|
"/home" = {
|
||
|
device = "/dev/disk/by-label/locum-data";
|
||
|
fsType = "btrfs";
|
||
|
options = [ "noatime" "compress=zstd" "subvol=@home" ];
|
||
|
};
|
||
|
"/var/log" = {
|
||
|
device = "/dev/disk/by-label/locum-data";
|
||
|
fsType = "btrfs";
|
||
|
options = [ "noatime" "compress=zstd" "noexec" "subvol=@logs" ];
|
||
|
};
|
||
|
};
|
||
|
|
||
|
swapDevices = [{ device = "/dev/disk/by-label/locum-swap"; }];
|
||
|
|
||
|
nix.settings.max-jobs = lib.mkDefault 16;
|
||
|
|
||
|
networking = {
|
||
|
useDHCP = false;
|
||
|
macvlans = {
|
||
|
extif0 = {
|
||
|
interface = "eno1";
|
||
|
mode = "bridge";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
interfaces.extif0 = {
|
||
|
macAddress = generateMac config.instance.hostname "extif0";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
}
|