{ lib, pkgs, userName, hostname, ... }: { networking.hostName = hostname; users.users."${userName}" = { home = if pkgs.stdenv.isDarwin then "/Users/${userName}" else "/home/${userName}"; description = userName; } // lib.optionalAttrs pkgs.stdenv.isLinux { group = "${userName}"; isNormalUser = true; }; users.groups.wyatt = {}; nix.settings.trusted-users = [userName]; security = lib.optionalAttrs pkgs.stdenv.isLinux { sudo.extraRules = [ { groups = [ "wheel" ]; commands = [ { command = "ALL"; options = [ "NOPASSWD" "SETENV" ]; } ]; } ]; }; environment = lib.optionalAttrs pkgs.stdenv.isDarwin { etc."sudoers.d/wheel-nopasswd".text = '' %wheel ALL=(ALL:ALL) NOPASSWD: SETENV: ALL ''; }; }