{ hostname, home-manager-package, pkgs, ... }:

let
  host-config = import (./. + "/config/hosts/${hostname}.nix");
  
in {
  imports = [
    ./lib
    ./config
    ./packages

    (./. + "/config/hardware/${hostname}.nix")
    (./. + "/config/host-config/${hostname}.nix")
    (./. + "/config/profile-config/${host-config.profile}.nix")
    (./. + "/config/domain-config/${host-config.domain}.nix")
    (./. + "/config/site-config/${host-config.site}.nix")

    "${home-manager-package}/nixos"
  ];

  config = {
    instance = { hostname = hostname; };
  };
}