{
  flake-lib,
  inputs,
  inputs',
  theme,
}: let
  user = flake-lib.const.user;
  secret = import ../assets/secret.nix;
  secretModule = secret.home;
in
  attrs: {
    lib,
    osConfig,
    ...
  }: {
    _module.args = {inherit inputs inputs' user theme;};

    imports = [
      attrs
      ../home-manager/home.nix
      ../home-manager/modules
      secretModule

      # Modules my modules depend on
      inputs.hyprland.homeManagerModules.default
    ];

    home = lib.mkDefault {
      username = user;
      stateVersion = "22.05";
      homeDirectory = osConfig.users.users.${user}.home;
    };
  }