{
  lib,
  pkgs,
  userName,
  hostname,
  ...
} @ args: {
  networking.hostName = hostname;

  # Don't forget to set a password with ‘passwd’!
  users.users."${userName}" = lib.mkMerge [
    {
      home =
        if pkgs.stdenv.isDarwin
        then "/Users/${userName}"
        else "/home/${userName}";
      description = userName;
    }

    (lib.mkIf (pkgs.stdenv.isLinux) {
      group = "${userName}";
      isNormalUser = true;
    })
  ];

  security.sudo.wheelNeedsPassword = false;

  users.groups.wyatt = {};

  nix.settings.trusted-users = [userName];
}