| homebrew.user | The user that owns the Homebrew installation
|
| users.users | Configuration for users.
|
| launchd.user.agents | Definition of per-user launchd agents
|
| users.users.<name>.name | The name of the user account
|
| users.users.<name>.uid | The user's UID.
|
| users.users.<name>.gid | The user's primary group.
|
| users.users.<name>.home | The user's home directory
|
| users.users.<name>.shell | The user's shell
|
| users.users.<name>.isHidden | Whether to make the user account hidden.
|
| users.users.<name>.createHome | Create the home directory when creating the user.
|
| services.github-runners.<name>.user | User under which to run the service
|
| users.users.<name>.packages | The set of packages that should be made availabe to the user
|
| launchd.user.agents.<name>.path | Packages added to the service's PATH
environment variable
|
| launchd.user.agents.<name>.script | Shell commands executed as the service's main process.
|
| users.knownUsers | List of users owned and managed by nix-darwin
|
| services.autossh.sessions.*.user | Name of the user the AutoSSH session should run as
|
| launchd.agents | Definition of per-user launchd agents
|
| users.groups | Configuration for groups.
|
| launchd.user.agents.<name>.command | Command executed as the service's main process.
|
| launchd.user.agents.<name>.serviceConfig.UserName | This optional key specifies the user to run the job as
|
| users.users.<name>.description | A short description of the user account, typically the
user's full name
|
| launchd.user.envVariables | A set of environment variables to be set on all future
processes launched by launchd in the caller's context
|
| launchd.user.agents.<name>.serviceConfig | Each attribute in this set specifies an option for a key in the plist.
https://developer.apple.com/legacy/library/documentation/Darwin/Reference/ManPages/man5/launchd.plist.5.html
|
| users.users.<name>.ignoreShellProgramCheck | By default, nix-darwin will check that programs
|
| launchd.user.agents.<name>.serviceConfig.GroupName | This optional key specifies the group to run the job as
|
| users.groups.<name>.gid | The group's GID.
|
| launchd.user.agents.<name>.serviceConfig.Nice | This optional key specifies what nice(3) value should be applied to the daemon.
|
| launchd.user.agents.<name>.serviceConfig.Label | This required key uniquely identifies the job to launchd.
|
| launchd.user.agents.<name>.serviceConfig.Debug | This optional key specifies that launchd should adjust its log mask temporarily to LOG_DEBUG while
dealing with this job.
|
| launchd.user.agents.<name>.serviceConfig.RunAtLoad | This optional key is used to control whether your job is launched once at the time the job is loaded
|
| launchd.user.agents.<name>.serviceConfig.TimeOut | The recommended idle time out (in seconds) to pass to the job
|
| launchd.user.agents.<name>.serviceConfig.Umask | This optional key specifies what value should be passed to umask(2) before running the job
|
| launchd.user.agents.<name>.serviceConfig.ExitTimeOut | The amount of time launchd waits before sending a SIGKILL signal
|
| launchd.user.agents.<name>.serviceConfig.WatchPaths | This optional key causes the job to be started if any one of the listed paths are modified.
|
| launchd.user.agents.<name>.environment | Environment variables passed to the service's processes.
|
| launchd.user.agents.<name>.serviceConfig.ProcessType | This optional key describes, at a high level, the intended purpose of the job
|
| launchd.user.agents.<name>.serviceConfig.StartOnMount | This optional key causes the job to be started every time a filesystem is mounted.
|
| users.groups.<name>.name | The group's name
|
| launchd.user.agents.<name>.serviceConfig.OnDemand | This key was used in Mac OS X 10.4 to control whether a job was kept alive or not
|
| launchd.user.agents.<name>.serviceConfig.InitGroups | This optional key specifies whether initgroups(3) should be called before running the job
|
| launchd.user.agents.<name>.serviceConfig.ServiceIPC | This optional key specifies whether the job participates in advanced
communication with launchd
|
| launchd.user.agents.<name>.serviceConfig.LimitLoadToHosts | This configuration file only applies to the hosts listed with this key
|
| launchd.user.agents.<name>.serviceConfig.Program | This key maps to the first argument of execvp(3)
|
| users.knownGroups | List of groups owned and managed by nix-darwin
|
| launchd.user.agents.<name>.serviceConfig.LaunchOnlyOnce | This optional key specifies whether the job can only be run once and only once
|
| launchd.user.agents.<name>.serviceConfig.LimitLoadFromHosts | This configuration file only applies to hosts NOT listed with this key
|
| launchd.user.agents.<name>.serviceConfig.LowPriorityIO | This optional key specifies whether the kernel should consider this daemon to be low priority when
doing file system I/O.
|
| launchd.user.agents.<name>.serviceConfig.StandardInPath | This optional key specifies what file should be used for data being supplied to stdin when using
stdio(3).
|
| environment.userLaunchAgents | Set of files that have to be linked in ~/Library/LaunchAgents.
|
| launchd.user.agents.<name>.serviceConfig.StandardOutPath | This optional key specifies what file should be used for data being sent to stdout when using stdio(3).
|
| launchd.user.agents.<name>.serviceConfig.WaitForDebugger | This optional key specifies that launchd should instruct the kernel to have the job wait for a debugger
to attach before any code in the job is executed.
|
| launchd.user.agents.<name>.serviceConfig.SessionCreate | This key specifies that the job should be spawned into a new security
audit session rather than the default session for the context is belongs
to
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockNodeName | This optional key specifies the node to connect(2) or bind(2) to.
|
| launchd.user.agents.<name>.serviceConfig.RootDirectory | This optional key is used to specify a directory to chroot(2) to before running the job.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockType | This optional key tells launchctl what type of socket to create
|
| launchd.user.agents.<name>.serviceConfig.EnableGlobbing | This flag causes launchd to use the glob(3) mechanism to update the program arguments before invocation.
|
| launchd.user.agents.<name>.serviceConfig.StandardErrorPath | This optional key specifies what file should be used for data being sent to stderr when using stdio(3).
|
| launchd.user.agents.<name>.serviceConfig.LimitLoadToSessionType | This configuration file only applies to sessions of the type specified
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockPathName | This optional key implies SockFamily is set to "Unix"
|
| users.groups.<name>.members | The group's members.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockPathMode | This optional key specifies the mode of the socket
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockFamily | This optional key can be used to specifically request that "IPv4" or "IPv6" socket(s) be created.
|
| environment.userLaunchAgents.<name>.text | Text of the file.
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits | Resource limits to be imposed on the job
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits | Resource limits to be imposed on the job
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.CPU | The maximum amount of cpu time (in seconds) to be used by each process.
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.CPU | The maximum amount of cpu time (in seconds) to be used by each process.
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.Core | The largest size (in bytes) core file that may be created.
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.Core | The largest size (in bytes) core file that may be created.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.Bonjour | This optional key can be used to request that the service be registered with the
mDNSResponder(8)
|
| launchd.user.agents.<name>.serviceConfig.StartInterval | This optional key causes the job to be started every N seconds
|
| launchd.user.agents.<name>.serviceConfig.AbandonProcessGroup | When a job dies, launchd kills any remaining processes with the same process group ID as the job
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.FileSize | The largest size (in bytes) file that may be created.
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.FileSize | The largest size (in bytes) file that may be created.
|
| services.github-runners | Multiple GitHub Runners
|
| launchd.user.agents.<name>.serviceConfig.WorkingDirectory | This optional key is used to specify a directory to chdir(2) to before running the job.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockServiceName | This optional key specifies the service on the node to connect(2) or bind(2) to.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockPassive | This optional key specifies whether listen(2) or connect(2) should be called on the created file
descriptor
|
| launchd.user.agents.<name>.serviceConfig.MachServices | This optional key is used to specify Mach services to be registered with the Mach bootstrap sub-system
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.Data | The maximum size (in bytes) of the data segment for a process; this defines how far a program may
extend its break with the sbrk(2) system call.
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.Data | The maximum size (in bytes) of the data segment for a process; this defines how far a program may
extend its break with the sbrk(2) system call.
|
| environment.userLaunchAgents.<name>.source | Path of the source file.
|
| launchd.user.agents.<name>.serviceConfig.LaunchEvents | Specifies higher-level event types to be used as launch-on-demand event
sources
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SockProtocol | This optional key specifies the protocol to be passed to socket(2)
|
| environment.userLaunchAgents.<name>.target | Name of symlink
|
| launchd.user.agents.<name>.serviceConfig.KeepAlive | This optional key is used to control whether your job is to be kept continuously running or to let
demand and conditions control the invocation
|
| homebrew.taps | List of Homebrew formula repositories to tap
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.Stack | The maximum size (in bytes) of the stack segment for a process; this defines how far a program's
stack segment may be extended
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.Stack | The maximum size (in bytes) of the stack segment for a process; this defines how far a program's
stack segment may be extended
|
| environment.userLaunchAgents.<name>.enable | Whether this file should be generated
|
| launchd.user.agents.<name>.serviceConfig.ProgramArguments | This key maps to the second argument of execvp(3)
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.MemoryLock | The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.MemoryLock | The maximum size (in bytes) which a process may lock into memory using the mlock(2) function.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.SecureSocketWithKey | This optional key is a variant of SockPathName
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.NumberOfProcesses | The maximum number of simultaneous processes for this user id
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.NumberOfProcesses | The maximum number of simultaneous processes for this user id
|
| launchd.user.agents.<name>.serviceConfig.QueueDirectories | Much like the WatchPaths option, this key will watch the paths for modifications
|
| users.users.<name>.openssh.authorizedKeys.keys | A list of verbatim OpenSSH public keys that should be added to the
user's authorized keys
|
| launchd.user.agents.<name>.serviceConfig.Sockets | This optional key is used to specify launch on demand sockets that can be used to let launchd know when
to run the job
|
| users.users.<name>.openssh.authorizedKeys.keyFiles | A list of files each containing one OpenSSH public key that should be
added to the user's authorized keys
|
| launchd.user.agents.<name>.serviceConfig.ThrottleInterval | This key lets one override the default throttling policy imposed on jobs by launchd
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.NumberOfFiles | The maximum number of open files for this process
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.NumberOfFiles | The maximum number of open files for this process
|
| launchd.user.agents.<name>.serviceConfig.LowPriorityBackgroundIO | This optional key specifies whether the kernel should consider this daemon to be low priority when
doing file system I/O when the process is throttled with the Darwin-background classification.
|
| launchd.user.agents.<name>.serviceConfig.inetdCompatibility | The presence of this key specifies that the daemon expects to be run as if it were launched from inetd.
|
| launchd.user.agents.<name>.serviceConfig.Sockets.<name>.MulticastGroup | This optional key can be used to request that the datagram socket join a multicast group
|
| launchd.user.agents.<name>.serviceConfig.EnvironmentVariables | This optional key is used to specify additional environment variables to be set before running the
job.
|
| system.primaryUser | The user used for options that previously applied to the user
running darwin-rebuild
|
| launchd.user.agents.<name>.serviceConfig.EnableTransactions | This flag instructs launchd that the job promises to use vproc_transaction_begin(3) and
vproc_transaction_end(3) to track outstanding transactions that need to be reconciled before the
process can safely terminate
|
| launchd.user.agents.<name>.serviceConfig.SoftResourceLimits.ResidentSetSize | The maximum size (in bytes) to which a process's resident set size may grow
|
| launchd.user.agents.<name>.serviceConfig.HardResourceLimits.ResidentSetSize | The maximum size (in bytes) to which a process's resident set size may grow
|
| launchd.user.agents.<name>.serviceConfig.Disabled | This optional key is used as a hint to launchctl(1) that it should not submit this job to launchd when
loading a job or jobs
|
| launchd.user.agents.<name>.serviceConfig.StartCalendarInterval | This optional key causes the job to be started every calendar interval as specified
|
| launchd.user.agents.<name>.serviceConfig.inetdCompatibility.Wait | This flag corresponds to the "wait" or "nowait" option of inetd
|
| nix.settings.trusted-users | A list of names of users that have additional rights when
connecting to the Nix daemon, such as the ability to specify
additional binary caches, or to import unsigned NARs
|
| nix.settings.allowed-users | A list of names of users (separated by whitespace) that are
allowed to connect to the Nix daemon
|
| users.groups.<name>.description | The group's description.
|
| services.github-runners.<name>.group | Group under which to run the service
|
| nix.nrBuildUsers | Number of nixbld user accounts created to
perform secure concurrent builds
|
| homebrew.taps.*.name | When clone_target is unspecified, this is the name of a formula
repository to tap from GitHub using HTTPS
|
| launchd.agents.<name>.serviceConfig.ProcessType | This optional key describes, at a high level, the intended purpose of the job
|
| programs.gnupg.agent.enable | Enables GnuPG agent for every user session.
|
| launchd.daemons.<name>.serviceConfig.ProcessType | This optional key describes, at a high level, the intended purpose of the job
|
| nix.buildMachines.*.sshUser | The username to log in as on the remote host
|
| nix.channel.enable | Whether the nix-channel command and state files are made available on the machine
|
| nix.buildMachines.*.sshKey | The path to the SSH private key with which to authenticate on
the build machine
|
| programs.zsh.enableGlobalCompInit | Enable execution of compinit call for all interactive zsh shells
|
| launchd.agents.<name>.serviceConfig.UserName | This optional key specifies the user to run the job as
|
| environment.shells | A list of permissible login shells for user accounts
|
| launchd.daemons.<name>.serviceConfig.UserName | This optional key specifies the user to run the job as
|
| networking.computerName | The user-friendly name for the system, set in System Preferences > Sharing > Computer Name
|
| services.gitlab-runner.sessionServer | The session server allows the user to interact with jobs
that the Runner is responsible for
|
| nixpkgs.pkgs | If set, the pkgs argument to all nix-darwin modules is the value of
this option, extended with nixpkgs.overlays, if
that is also set
|
| services.postgresql.ensureUsers.*.name | Name of the user to ensure.
|
| launchd.agents.<name>.serviceConfig.GroupName | This optional key specifies the group to run the job as
|
| launchd.daemons.<name>.serviceConfig.GroupName | This optional key specifies the group to run the job as
|
| system.defaults.CustomUserPreferences | Sets custom user preferences
|
| system.defaults.loginwindow.autoLoginUser | Apple menu > System Preferences > Users and Groups > Login Options
Auto login the supplied user on boot
|
| system.defaults.screensaver.askForPassword | If true, the user is prompted for a password when the screen saver is unlocked or stopped
|
| services.postgresql.ensureUsers | Ensures that the specified users exist and have at least the ensured permissions
|
| services.hercules-ci-agent.settings.labels | A key-value map of user data
|
| system.defaults.ActivityMonitor.ShowCategory | Change which processes to show.
- 100: All Processes
- 101: All Processes, Hierarchally
- 102: My Processes
- 103: System Processes
- 104: Other User Processes
- 105: Active Processes
- 106: Inactive Processes
- 107: Windowed Processes
Default is 100.
|
| system.defaults.loginwindow.DisableConsoleAccess | Disables the ability for a user to access the console by typing “>console”
for a username at the login window
|
| security.pam.services.sudo_local.reattach | Whether to enable reattaching a program to the user's bootstrap session
|
| system.defaults.loginwindow.PowerOffDisabledWhileLoggedIn | Apple menu > System Preferences > Users and Groups > Login Options
If set to true, the Power Off menu item will be disabled when the user is logged in
|
| launchd.agents.<name>.serviceConfig.SoftResourceLimits.NumberOfProcesses | The maximum number of simultaneous processes for this user id
|
| launchd.agents.<name>.serviceConfig.HardResourceLimits.NumberOfProcesses | The maximum number of simultaneous processes for this user id
|
| launchd.daemons.<name>.serviceConfig.SoftResourceLimits.NumberOfProcesses | The maximum number of simultaneous processes for this user id
|
| launchd.daemons.<name>.serviceConfig.HardResourceLimits.NumberOfProcesses | The maximum number of simultaneous processes for this user id
|
| services.postgresql.ensureUsers.*.ensurePermissions | Permissions to ensure for the user, specified as an attribute set
|
| services.postgresql.identMap | Defines the mapping from system users to database users
|
| launchd.agents.<name>.serviceConfig.InitGroups | This optional key specifies whether initgroups(3) should be called before running the job
|
| system.checks.verifyBuildUsers | Whether to run the Nix build users validation checks.
|
| launchd.daemons.<name>.serviceConfig.InitGroups | This optional key specifies whether initgroups(3) should be called before running the job
|
| services.postgresql.authentication | Defines how users authenticate themselves to the server
|
| system.defaults.loginwindow.GuestEnabled | Apple menu > System Preferences > Users and Groups > Login Options
Allow users to login to the machine as guests using the Guest account
|
| system.defaults.loginwindow.ShutDownDisabledWhileLoggedIn | Apple menu > System Preferences > Users and Groups > Login Options
Disables the "Shutdown" option when users are logged in
|
| system.defaults.loginwindow.RestartDisabledWhileLoggedIn | Apple menu > System Preferences > Users and Groups > Login Options
Disables the “Restart” option when users are logged in
|
| system.defaults.loginwindow.SHOWFULLNAME | Apple menu > System Preferences > Users and Groups > Login Options
Displays login window as a name and password field instead of a list of users
|
| environment.shellAliases | An attribute set that maps aliases (the top level attribute names in
this option) to command strings or directly to build outputs
|
| environment.systemPackages | The set of packages that appear in
/run/current-system/sw
|
| nix.settings.trusted-substituters | List of binary cache URLs that non-root users can use (in
addition to those specified using
nix.settings.substituters) by passing
--option binary-caches to Nix commands.
|
| environment.defaultPackages | Set of default packages that aren't strictly necessary
for a running system, entries can be removed for a more
minimal NixOS installation
|
| system.defaults.loginwindow.SleepDisabled | Apple menu > System Preferences > Users and Groups > Login Options
Hides the Sleep button on the login screen
|
| system.defaults.loginwindow.ShutDownDisabled | Apple menu > System Preferences > Users and Groups > Login Options
Hides the Shut Down button on the login screen
|
| system.defaults.loginwindow.RestartDisabled | Apple menu > System Preferences > Users and Groups > Login Options
Hides the Restart button on the login screen
|