{ config, lib, ... }: let inherit (lib) mkOption types; in { imports = [ ./hardware.nix ./i18n.nix ./os.nix ./partition.nix ./programs.nix ./software.nix ./users.nix ./windows.nix ]; options = { valhalla = { boot = { efiMountPoint = mkOption { type = types.str; description = "The mountpoint of the efi partition."; default = "/boot"; }; label = mkOption { type = types.str; description = "The label of the boot entry."; default = "OS"; }; }; fqdn = mkOption { type = types.str; description = "The FQDN of the system."; default = config.valhalla.hostname; }; hostname = mkOption { type = types.str; description = "The hostname of the system."; default = "valhalla"; }; setupUser = { name = mkOption { type = types.str; description = "The name of the user used to set up the system."; default = "heimdall"; }; id = mkOption { type = types.int; description = "The UID of the user used to set up the system."; default = 420; }; }; timeZone = mkOption { type = types.nullOr types.str; description = "The time zone of the system."; default = null; }; keyMap = mkOption { type = types.nullOr types.str; description = "The console key map of the system."; default = null; }; keyboardLayout = mkOption { type = types.nullOr types.str; description = "The X11 keyboard layout of the system."; default = null; }; hidpi = mkOption { type = types.bool; description = "A value indicating whether the screen is hidpi."; default = false; }; }; }; }