Switch from BIOS and GRUB to UEFI and systemd-boot for Proxmox VMs

This commit is contained in:
June 2023-09-14 20:06:06 +02:00
parent 5bfa655d3e
commit c427ff934a
3 changed files with 17 additions and 8 deletions

View file

@ -2,6 +2,7 @@
# - https://github.com/NixOS/nixpkgs/blob/069de7d3deafab651fd627c8f6d7e4c7b33087a2/nixos/modules/virtualisation/proxmox-image.nix#L6 # - https://github.com/NixOS/nixpkgs/blob/069de7d3deafab651fd627c8f6d7e4c7b33087a2/nixos/modules/virtualisation/proxmox-image.nix#L6
# - https://git.grzb.de/yuri/nix-infra/-/blob/aa38daeea59f2ca12b7e591de6f8b61565780c48/configuration/nixos-generators/default.nix#L13 # - https://git.grzb.de/yuri/nix-infra/-/blob/aa38daeea59f2ca12b7e591de6f8b61565780c48/configuration/nixos-generators/default.nix#L13
# - https://git.grzb.de/yuri/nix-infra/-/blob/aa38daeea59f2ca12b7e591de6f8b61565780c48/flake.nix#L39 # - https://git.grzb.de/yuri/nix-infra/-/blob/aa38daeea59f2ca12b7e591de6f8b61565780c48/flake.nix#L39
# - https://pve.proxmox.com/wiki/Manual:_qm.conf
{ config, pkgs, ... }: { config, pkgs, ... }:
@ -12,11 +13,12 @@
cores = 2; cores = 2;
memory = 512; memory = 512;
virtio0 = "rpool-data:vm-9999-disk-0,discard=on"; virtio0 = "rpool-data:vm-9999-disk-0,discard=on";
bios = "seabios"; bios = "ovmf";
net0 = "virtio=00:00:00:00:00:00,bridge=vmbr0,firewall=1,tag=999"; net0 = "virtio=00:00:00:00:00:00,bridge=vmbr0,firewall=1,tag=999";
}; };
qemuExtraConf = { qemuExtraConf = {
cpu = "cputype=host,flags=+aes"; cpu = "cputype=host,flags=+aes";
machine = "q35";
template = 1; template = 1;
}; };
}; };

View file

@ -2,8 +2,9 @@
# Sources for this configuration: # Sources for this configuration:
# - a generated NixOS 23.05 configuration # - a generated NixOS 23.05 configuration
# - https://github.com/NixOS/nixpkgs/blob/069de7d3deafab651fd627c8f6d7e4c7b33087a2/nixos/modules/virtualisation/proxmox-image.nix#L241 # - https://github.com/NixOS/nixpkgs/blob/069de7d3deafab651fd627c8f6d7e4c7b33087a2/nixos/modules/virtualisation/proxmox-image.nix#L241
# - https://nixos.org/manual/nixos/stable/#sec-installation-manual-installing
{ config, pkgs, ... }: { config, pkgs, lib, ... }:
{ {
boot = { boot = {
@ -12,19 +13,20 @@
# Not specified here: # Not specified here:
# - boot.kernelModules # - boot.kernelModules
# - boot.extraModulePackages # - boot.extraModulePackages
# Please specify as needed. # Please specify as needed elsewhere.
# Grow the root partition on boot. # Grow the root partition on boot.
growPartition = true; growPartition = true;
kernelParams = [ "console=ttyS0" ]; kernelParams = [ "console=ttyS0" ];
loader.grub = { loader.systemd-boot = {
enable = true; enable = true;
# TODO: Can we use "/dev/disk/by-label/nixos" here? editor = false;
device = "/dev/vda";
}; };
loader.timeout = 0; loader.efi.efiSysMountPoint = "/boot";
loader.timeout = lib.mkForce 2;
}; };
} }

View file

@ -12,6 +12,11 @@
fsType = "ext4"; fsType = "ext4";
}; };
fileSystems."/boot" = {
device = "/dev/disk/by-label/ESP";
fsType = "vfat";
};
# Not specified here: # Not specified here:
# - swapDevices # - swapDevices
# If needed, manually specify it elsewhere. # If needed, manually specify it elsewhere.