{ config, pkgs, hyper, inputs, ... }: 
let 
  grub-theme-ascii-diana = (pkgs.fetchFromGitea {
    domain = "git.${hyper.domain}";
    owner = "nx2";
    repo = "grub-theme-ascii-diana";
    rev = "0.5.0";
    hash = "sha256-e+55NYsSsWY6GPbYUtdVEB9krueuCAWT3Ce/Ghops1g=";
   });
in 
{
  imports = if hyper.host == "NxNORTH" then [
    inputs.lanzaboote.nixosModules.lanzaboote
  ] else [];
 config = if hyper.host == "NxNORTH" then {
    # I have to boot with secureboot becasue of the chinese spyware called Vanguard
      
    environment.systemPackages = with pkgs; [ sbctl ];
    boot = {
      lanzaboote = {
        enable = true;
        pkiBundle = "/var/lib/sbctl";
      };
      loader.systemd-boot = {
        enable = false; # let lanzaboote install systemd-boot
        consoleMode = "max";
        configurationLimit = 10;
      };
      kernelPackages = pkgs.linuxPackages_zen;
      extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
      kernelModules = [ "v4l2loopback" ];
      extraModprobeConfig = ''options v4l2loopback devices=1 video_nr=1 card_label="OBS Cam" exclusive_caps=1'';
    };
    security.polkit.enable = true;
  } else if hyper.host == "NxXPS" then {
    boot = {
      loader = {
        efi.canTouchEfiVariables = true;
        grub = {
          enable = true;
          configurationLimit = 30;
          device = "nodev";
          # useOSProber = true;
          efiSupport = true;
          theme = grub-theme-ascii-diana;
          font = "${grub-theme-ascii-diana}/unicode.pf2";
          fontSize = 50;
          extraEntries = ''
            menuentry 'Windows 11' --class windows --class os $menuentry_id_option 'osprober-efi-0A97-7A2D' {
              insmod part_gpt
              insmod fat
              search --no-floppy --fs-uuid --set=root 0A97-7A2D
              chainloader /EFI/Microsoft/Boot/bootmgfw.efi
            }
          '';
        };
      };
      kernelPackages = pkgs.linuxPackages_latest;
      extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ];
      kernelModules = [ "v4l2loopback" ];
      extraModprobeConfig = ''options v4l2loopback devices=1 video_nr=1 card_label="OBS VCam" exclusive_caps=1'';
    };
  } else { # NxACE
    boot = {
      loader = {
        efi.canTouchEfiVariables = true;
        grub = {
          enable = true;
          device = "nodev";
          efiSupport = true;
        };
      };
      kernelPackages = pkgs.linuxPackages_6_12;
    };
  };
}
