main
 1{ lib, ... }:
 2{
 3  console.keyMap = lib.mkForce "us";
 4
 5  # disko handles GRUB device configuration
 6  boot.loader.grub.enable = lib.mkForce true;
 7  boot.loader.systemd-boot.enable = lib.mkForce false;
 8  boot.initrd.systemd.enable = lib.mkForce false;
 9
10  # Scaleway virtual instance (QEMU/KVM guest)
11  boot.initrd.availableKernelModules = [
12    "virtio_net"
13    "virtio_pci"
14    "virtio_mmio"
15    "virtio_blk"
16    "virtio_scsi"
17    "9p"
18    "9pnet_virtio"
19  ];
20  boot.initrd.kernelModules = [
21    "virtio_balloon"
22    "virtio_console"
23    "virtio_rng"
24  ];
25
26  # Make the Scaleway web serial console usable
27  boot.kernelParams = [ "console=ttyS0" ];
28
29  # VPS optimization: No physical hardware, no firmware needed
30  hardware.enableRedistributableFirmware = lib.mkForce false;
31  hardware.enableAllFirmware = lib.mkForce false;
32
33  # VPS optimization: No firmware update service needed
34  services.fwupd.enable = lib.mkForce false;
35}