{
  pkgs,
  prefs,
  inputs,
  ...
}:

{
  imports = [ ./modules.nix ];

  home = {
    inherit (prefs.users.hulk) username homeDirectory;

    stateVersion = "24.11";
    packages = import ./packages.nix { inherit pkgs inputs; };
  };

  nixpkgs.config = {
    permittedInsecurePackages = prefs.pkgs.hulk.insecure;
    allowUnfreePredicate = pkg: builtins.elem (pkgs.lib.getName pkg) prefs.pkgs.hulk.unfree;
  };

  programs.home-manager.enable = true;
}
