{ pkgs, stateVersion, hostname, ... }:
{
  imports = [ # Include the results of the hardware scan.
    ../hosts/${hostname}/hardware-configuration.nix
    ../hosts/${hostname}/nixos-config.nix
    ../modules/nixos
    ./includes/hardware/bootloader.nix
    ./includes/system/locales.nix
    ./includes/system/flakes.nix
    ./includes/system/user.nix
    ./includes/system/udisks2.nix
    ./includes/system/lvm.nix
    ./includes/system/doas.nix
    ./includes/system/neovim.nix
    ./includes/system/overlay.nix
  ];

  nixpkgs.config.allowUnfree = true;

boot.kernelPackages = pkgs.linuxPackages_latest;
  networking.hostName = hostname;

  console = {
    earlySetup = true;
    font = "${pkgs.terminus_font}/share/consolefonts/ter-132n.psf.gz";
    packages = with pkgs; [terminus_font];
    # keyMap = "us";
    useXkbConfig = true; # use xkbOptions in tty.
  };

  environment.systemPackages = with pkgs; [
    git
    zsh
  ];

  system.stateVersion = stateVersion;
}
