nix-config-legacy/hosts/muscari/default.nix
mikl 430252a4c7 muscari: switch bootloader from systemd-boot (UEFI) to GRUB (BIOS)
VM 81.26.189.192 boots in Legacy BIOS mode (PREREQUISITES.md
check 5+11 returned BIOS / NO_EFI), so UEFI/systemd-boot is not
available. Switched to GRUB on /dev/vda.

Changes:
- boot.loader.grub.enable = true, device = "/dev/vda"
- boot.loader.systemd-boot.enable = lib.mkForce false
- boot.loader.efi.canTouchEfiVariables = lib.mkForce false
- Comments updated to reflect BIOS / GRUB choice

disk-config.nix NOT touched: the 512M ESP at /boot is unused in
BIOS mode (GRUB installs to MBR), but harmless. If we later switch
to UEFI, the ESP will be ready.

Verification:
- nix flake show: nixosConfigurations.muscari
- boot.loader.grub.enable = true
- boot.loader.systemd-boot.enable = false
- fileSystems: /boot (vfat ESP) + / (ext4 root) from disko

Session: verify plan
2026-06-26 03:05:01 +03:00

41 lines
No EOL
1.5 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# muscari — k3s single-node cluster на YC (Debian 12 → NixOS 25.11 через nixos-install в tmux)
# https://git.iscg.dev/mikl/nix-config
{ config, pkgs, lib, ... }:
{
imports = [
./disk-config.nix
../../modules/users/mikl.nix
../../modules/services/k3s.nix
];
networking = {
hostName = "muscari";
useDHCP = true;
firewall.allowedTCPPorts = [
22 # SSH
80 # HTTP (Ingress через Traefik)
443 # HTTPS (Ingress через Traefik)
# 6443 не открываем — kubectl через SSH-туннель
];
};
# Bootloader — GRUB (BIOS, VM в legacy boot mode)
# VM 81.26.189.192 загружается в Legacy BIOS (check 5+11 в PREREQUISITES.md),
# поэтому UEFI/systemd-boot недоступен. ESP раздел в disk-config.nix
# не используется (GRUB ставится в MBR /dev/vda), но и не мешает.
boot.loader.grub = {
enable = true;
device = "/dev/vda";
useOSProber = false;
};
boot.loader.systemd-boot.enable = lib.mkForce false;
boot.loader.efi.canTouchEfiVariables = lib.mkForce false;
# fileSystems — определяется через disko (см. disk-config.nix)
# Не задаём явно fileSystems."/" чтобы не конфликтовать с disko
# После nixos-install первая установка 25.11,
# потом не трогаем (NixOS convention)
system.stateVersion = "25.11";
}