{
  inputs,
  outputs,
  pkgs,
  config,
  vars,
  ...
}: let
  ifTheyExist = groups: builtins.filter (group: builtins.hasAttr group config.users.groups) groups;
in {
  users.users.${vars.user} = {
    isNormalUser = true;
    shell = pkgs.fish;
    extraGroups =
      [
        "wheel"
        "video"
        "audio"
        "camera"
      ]
      ++ ifTheyExist [
        "minecraft"
        "network"
        "networkmanager"
        "wireshark"
        "i2c"
        "mysql"
        "docker"
        "podman"
        "git"
        "libvirtd"
        "deluge"
        "lp"
        "scanner"
        "kvm"
        "libvirtd"
        "tty"
        "dialout"
      ];

    packages = [pkgs.home-manager];
  };

  home-manager.users.${vars.user} = import ../../../home/${config.networking.hostName}.nix;
}