nixos-config/machines/nazuna/hardware-configuration.nix

60 lines
1.5 KiB
Nix

# SPDX-FileCopyrightText: 2023-2024 Simon Bruder <simon@sbruder.de>
#
# SPDX-License-Identifier: AGPL-3.0-or-later
{ lib, modulesPath, ... }:
{
imports = [
(modulesPath + "/profiles/qemu-guest.nix")
];
sbruder.machine.isVm = true;
boot = {
kernelParams = [ "ip=86.106.183.111/26::86.106.183.65::nazuna" ];
initrd = {
availableKernelModules = [ "ata_piix" "uhci_hcd" "virtio_pci" "virtio_scsi" "sd_mod" "sr_mod" ];
kernelModules = [ "dm-snapshot" ];
network.enable = true; # remote unlocking
luks.devices."root".device = "/dev/disk/by-uuid/b20be409-adb6-47fc-ba9b-c07e61503070";
};
loader.grub.device = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_drive-scsi0";
};
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/05b0918e-3c24-45bf-950e-4af9d89d3be2";
fsType = "btrfs";
options = [ "compress=zstd" ];
};
"/boot" = {
device = "/dev/disk/by-uuid/7e93d8ba-516b-424e-a8e5-149c1654212a";
fsType = "ext2";
};
};
swapDevices = [
{
device = "/dev/disk/by-partuuid/08140a4b-38d7-4af3-b302-ccc952b085eb";
randomEncryption.enable = true;
}
];
networking = {
useDHCP = false;
usePredictableInterfaceNames = false;
};
systemd.network = {
enable = true;
networks = {
eth0 = {
name = "eth0";
domains = [ "sbruder.de" ];
address = [ "86.106.183.111/26" "2a0d:f302:123:8d61::1/48" ];
gateway = [ "86.106.183.65" "2a0d:f302:123::1" ];
};
};
};
}