From 452aec530a9dd737c6ea4136f0e678bf820691a7 Mon Sep 17 00:00:00 2001 From: rycee Date: Sat, 26 Feb 2022 11:36:46 +0000 Subject: [PATCH] deploy: c7a13f76a78bb5c225ca5e08e9a109347d130792 --- index.html | 4 +- options.html | 409 +++++++++++++++++++++++++++++++++++++++++++++ release-notes.html | 5 +- tools.html | 14 +- 4 files changed, 422 insertions(+), 10 deletions(-) diff --git a/index.html b/index.html index 338700a3c..c88953d53 100644 --- a/index.html +++ b/index.html @@ -1,6 +1,6 @@ -Home Manager Manual

Home Manager Manual


Preface
1. Installing Home Manager
1.1. Standalone installation
1.2. NixOS module
1.3. nix-darwin module
2. Using Home Manager
2.1. Configuration Example
2.2. Rollbacks
2.3. Keeping your ~ safe from harm
2.4. Graphical services
2.5. Updating
3. Nix Flakes
3.1. Prerequisties
3.2. Standalone setup
3.3. NixOS module
3.4. nix-darwin module
4. Writing Home Manager Modules
4.1. Option Types
5. Contributing
5.1. Getting started
5.2. Guidelines
5.2.1. Maintain backward compatibility
5.2.2. Keep forward compatibility in mind
5.2.3. Add only valuable options
5.2.4. Add relevant tests
5.2.5. Add relevant documentation
5.2.6. Add yourself as a module maintainer
5.2.7. Format your code
5.2.8. Format your commit messages
5.2.9. Format your news entries
5.2.10. Use conditional modules and news
5.2.11. Mind the license
5.3. Commits
5.4. Code Style
5.5. News
5.6. Tests
6. Frequently Asked Questions (FAQ)
6.1. Why is there a collision error when switching generation?
6.2. Why are the session variables not set?
6.3. How to set up a configuration for multiple users/machines?
6.4. Why do I get an error message about ca.desrt.dconf?
6.5. How do I install packages from Nixpkgs unstable?
6.6. How do I override the package used by a module?
A. Configuration Options
B. NixOS Module Options
C. nix-darwin Module Options
D. Tools
home-manager - — reconfigure a user environment
E. Release Notes
E.1. Release 22.05
E.1.1. Highlights
E.1.2. State Version Changes
E.2. Release 21.11
E.2.1. Highlights
E.2.2. State Version Changes
E.3. Release 21.05
E.3.1. Highlights
E.3.2. State Version Changes
E.4. Release 20.09
E.4.1. Highlights
E.4.2. State Version Changes
E.5. Release 20.03
E.5.1. Highlights
E.5.2. State Version Changes
E.6. Release 19.09
E.6.1. Highlights
E.6.2. State Version Changes
E.7. Release 19.03
E.7.1. Highlights
E.7.2. State Version Changes
E.8. Release 18.09

Preface

+Home Manager Manual

Home Manager Manual


Preface
1. Installing Home Manager
1.1. Standalone installation
1.2. NixOS module
1.3. nix-darwin module
2. Using Home Manager
2.1. Configuration Example
2.2. Rollbacks
2.3. Keeping your ~ safe from harm
2.4. Graphical services
2.5. Updating
3. Nix Flakes
3.1. Prerequisties
3.2. Standalone setup
3.3. NixOS module
3.4. nix-darwin module
4. Writing Home Manager Modules
4.1. Option Types
5. Contributing
5.1. Getting started
5.2. Guidelines
5.2.1. Maintain backward compatibility
5.2.2. Keep forward compatibility in mind
5.2.3. Add only valuable options
5.2.4. Add relevant tests
5.2.5. Add relevant documentation
5.2.6. Add yourself as a module maintainer
5.2.7. Format your code
5.2.8. Format your commit messages
5.2.9. Format your news entries
5.2.10. Use conditional modules and news
5.2.11. Mind the license
5.3. Commits
5.4. Code Style
5.5. News
5.6. Tests
6. Frequently Asked Questions (FAQ)
6.1. Why is there a collision error when switching generation?
6.2. Why are the session variables not set?
6.3. How to set up a configuration for multiple users/machines?
6.4. Why do I get an error message about ca.desrt.dconf?
6.5. How do I install packages from Nixpkgs unstable?
6.6. How do I override the package used by a module?
A. Configuration Options
B. NixOS Module Options
C. nix-darwin Module Options
D. Tools
home-manager + — reconfigure a user environment
E. Release Notes
E.1. Release 22.05
E.1.1. Highlights
E.1.2. State Version Changes
E.2. Release 21.11
E.2.1. Highlights
E.2.2. State Version Changes
E.3. Release 21.05
E.3.1. Highlights
E.3.2. State Version Changes
E.4. Release 20.09
E.4.1. Highlights
E.4.2. State Version Changes
E.5. Release 20.03
E.5.1. Highlights
E.5.2. State Version Changes
E.6. Release 19.09
E.6.1. Highlights
E.6.2. State Version Changes
E.7. Release 19.03
E.7.1. Highlights
E.7.2. State Version Changes
E.8. Release 18.09

Preface

This manual will eventually describe how to install, use, and extend Home Manager.

diff --git a/options.html b/options.html index 9686ae0a5..9224c7eb6 100644 --- a/options.html +++ b/options.html @@ -1087,6 +1087,415 @@ for details on supported values.

i18n.inputMethod.uim.toolbar

Selected UIM toolbar.

Type: one of "gtk", "gtk3", "gtk-systray", "gtk3-systray", "qt4"

Default: "gtk"

Example: "gtk-systray"

Declared by:

<home-manager/modules/i18n/input-method/uim.nix> +
launchd.enable

Whether to enable Home Manager to define per-user daemons by making use +of launchd's LaunchAgents. +

Type: boolean

Default: pkgs.stdenv.hostPlatform.isDarwin

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents

Define LaunchAgents.

Type: attribute set of submodules

Default: + { + + } +

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.enable

Whether to enable ‹name›.

Type: boolean

Default: false

Example: true

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config

Define a launchd job. See launchd.plist(5) for details. +

Type: submodule

Default: + { + + } +

Example:

{
+  ProgramArguments = [ "/usr/bin/say" "Good afternoon" ];
+  StartCalendarInterval = {
+    Hour = 12;
+    Minute = 0;
+  };
+}
+

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.AbandonProcessGroup

When a job dies, launchd kills any remaining processes with the same process group ID as the job. Set-ting Setting +ting this key to true disables that behavior. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Debug

This optional key specifies that launchd should adjust its log mask temporarily to LOG_DEBUG while +dealing with this job. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. The value of this key does NOT reflect the current state of the job on the run-ning running +ning system. If you wish to know whether a job is loaded in launchd, reading this key from a configura-tion configuration +tion file yourself is not a sufficient test. You should query launchd for the presence of the job using +the launchctl(1) list subcommand or use the ServiceManagement framework's +SMJobCopyDictionary() method. + +Note that as of Mac OS X v10.6, this key's value in a configuration file conveys a default value, which +is changed with the [-w] option of the launchctl(1) load and unload subcommands. These subcommands no +longer modify the configuration file, so the value displayed in the configuration file is not necessar-ily necessarily +ily the value that launchctl(1) will apply. See launchctl(1) for more information. + +Please also be mindful that you should only use this key if the provided on-demand and KeepAlive crite-ria criteria +ria are insufficient to describe the conditions under which your job needs to run. The cost to have a +job loaded in launchd is negligible, so there is no harm in loading a job which only runs once or very +rarely. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.EnableGlobbing

This flag causes launchd to use the glob(3) mechanism to update the program arguments before invoca-tion. invocation. +tion. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. If no outstanding transactions are in progress, then launchd is free to +send the SIGKILL signal. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.EnvironmentVariables

This optional key is used to specify additional environment variables to be set before running the +job. +

Type: null or attribute set of strings

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.ExitTimeOut

The amount of time launchd waits before sending a SIGKILL signal. The default value is 20 seconds. The +value zero is interpreted as infinity. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.GroupName

This optional key specifies the group to run the job as. This key is only applicable when launchd is +running as root. If UserName is set and GroupName is not, the the group will be set to the default +group of the user. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits

Resource limits to be imposed on the job. These adjust variables set with setrlimit(2). The following +keys apply: +

Type: null or submodule

Default: null

Example: + { + NumberOfFiles = 4096; + } +

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.CPU

The maximum amount of cpu time (in seconds) to be used by each process. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.Core

The largest size (in bytes) core file that may be created. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.FileSize

The largest size (in bytes) file that may be created. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.MemoryLock

The maximum size (in bytes) which a process may lock into memory using the mlock(2) function. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.NumberOfFiles

The maximum number of open files for this process. Setting this value in a system wide daemon +will set the sysctl(3) kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResource-Limits) (HardResourceLimits) +Limits) value in addition to the setrlimit(2) values. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.NumberOfProcesses

The maximum number of simultaneous processes for this user id. Setting this value in a system +wide daemon will set the sysctl(3) kern.maxproc (SoftResourceLimits) or kern.maxprocperuid +(HardResourceLimits) value in addition to the setrlimit(2) values. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.HardResourceLimits.ResidentSetSize

The maximum size (in bytes) to which a process's resident set size may grow. This imposes a +limit on the amount of physical memory to be given to a process; if memory is tight, the system +will prefer to take memory from processes that are exceeding their declared resident set size. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. Stack extension is performed automatically by the system. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.InitGroups

This optional key specifies whether initgroups(3) should be called before running the job. The default +is true in 10.5 and false in 10.4. This key will be ignored if the UserName key is not set. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. The default is false and therefore only demand will start +the job. The value may be set to true to unconditionally keep the job alive. Alternatively, a dictio-nary dictionary +nary of conditions may be specified to selectively control whether launchd keeps a job alive or not. If +multiple keys are provided, launchd ORs them, thus providing maximum flexibility to the job to refine +the logic and stall if necessary. If launchd finds no reason to restart the job, it falls back on +demand based invocation. Jobs that exit quickly and frequently when configured to be kept alive will +be throttled to converve system resources. +

Type: null or boolean or submodule

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Label

This required key uniquely identifies the job to launchd.

Type: string

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.LaunchOnlyOnce

This optional key specifies whether the job can only be run once and only once. In other words, if the +job cannot be safely respawned without a full machine reboot, then set this key to be true. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.LimitLoadFromHosts

This configuration file only applies to hosts NOT listed with this key. Note: One should set kern.host-name kern.hostname +name in sysctl.conf(5) for this feature to work reliably. +

Type: null or list of strings

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.LimitLoadToHosts

This configuration file only applies to the hosts listed with this key. Note: One should set kern.host-name kern.hostname +name in sysctl.conf(5) for this feature to work reliably. +

Type: null or list of strings

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.LimitLoadToSessionType

This configuration file only applies to sessions of the type specified. This key is used in concert +with the -S flag to launchctl. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.LowPriorityIO

This optional key specifies whether the kernel should consider this daemon to be low priority when +doing file system I/O. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.MachServices

This optional key is used to specify Mach services to be registered with the Mach bootstrap sub-system. +Each key in this dictionary should be the name of service to be advertised. The value of the key must +be a boolean and set to true. Alternatively, a dictionary can be used instead of a simple true value. + +Finally, for the job itself, the values will be replaced with Mach ports at the time of check-in with +launchd. +

Type: null or submodule

Default: null

Example: + { + ResetAtClose = true; + } +

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.MachServices.HideUntilCheckIn

Reserve the name in the namespace, but cause bootstrap_look_up() to fail until the job has +checked in with launchd. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.MachServices.ResetAtClose

If this boolean is false, the port is recycled, thus leaving clients to remain oblivious to the +demand nature of job. If the value is set to true, clients receive port death notifications when +the job lets go of the receive right. The port will be recreated atomically with respect to boot-strap_look_up() bootstrap_look_up() +strap_look_up() calls, so that clients can trust that after receiving a port death notification, +the new port will have already been recreated. Setting the value to true should be done with +care. Not all clients may be able to handle this behavior. The default value is false. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Nice

This optional key specifies what nice(3) value should be applied to the daemon. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.OnDemand

This key was used in Mac OS X 10.4 to control whether a job was kept alive or not. The default was +true. This key has been deprecated and replaced in Mac OS X 10.5 and later with the more powerful +KeepAlive option. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.ProcessType

This optional key describes, at a high level, the intended purpose of the job. The system will apply +resource limits based on what kind of job it is. If left unspecified, the system will apply light +resource limits to the job, throttling its CPU usage and I/O bandwidth. The following are valid values: + + Background + Background jobs are generally processes that do work that was not directly requested by the user. + The resource limits applied to Background jobs are intended to prevent them from disrupting the + user experience. + + Standard + Standard jobs are equivalent to no ProcessType being set. + + Adaptive + Adaptive jobs move between the Background and Interactive classifications based on activity over + XPC connections. See xpc_transaction_begin(3) for details. + + Interactive + Interactive jobs run with the same resource limitations as apps, that is to say, none. Interac-tive Interactive + tive jobs are critical to maintaining a responsive user experience, and this key should only be + used if an app's ability to be responsive depends on it, and cannot be made Adaptive. +

Type: null or one of "Background", "Standard", "Adaptive", "Interactive"

Default: null

Example: "Background"

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Program

This key maps to the first argument of execvp(3). If this key is missing, then the first element of +the array of strings provided to the ProgramArguments will be used instead. This key is required in +the absence of the ProgramArguments key. +

Type: null or path

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.ProgramArguments

This key maps to the second argument of execvp(3). This key is required in the absence of the Program +key. Please note: many people are confused by this key. Please read execvp(3) very carefully! +

Type: null or list of strings

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.QueueDirectories

Much like the WatchPaths option, this key will watch the paths for modifications. The difference being +that the job will only be started if the path is a directory and the directory is not empty. +

Type: null or list of strings

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.RootDirectory

This optional key is used to specify a directory to chroot(2) to before running the job. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.RunAtLoad

This optional key is used to control whether your job is launched once at the time the job is loaded. +The default is false. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. The job must check-in to get a copy of the file descriptors using APIs outlined in +launch(3). The keys of the top level Sockets dictionary can be anything. They are meant for the appli-cation application +cation developer to use to differentiate which descriptors correspond to which application level proto-cols protocols +cols (e.g. http vs. ftp vs. DNS...). At check-in time, the value of each Sockets dictionary key will +be an array of descriptors. Daemon/Agent writers should consider all descriptors of a given key to be +to be effectively equivalent, even though each file descriptor likely represents a different networking +protocol which conforms to the criteria specified in the job configuration file. + +The parameters below are used as inputs to call getaddrinfo(3). +

Type: null or attribute set of submodules

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.Bonjour

This optional key can be used to request that the service be registered with the +mDNSResponder(8). If the value is boolean, the service name is inferred from the SockService-Name. SockServiceName. +Name. +

Type: null or boolean or list of strings

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.MulticastGroup

This optional key can be used to request that the datagram socket join a multicast group. If the +value is a hostname, then getaddrinfo(3) will be used to join the correct multicast address for a +given socket family. If an explicit IPv4 or IPv6 address is given, it is required that the Sock-Family SockFamily +Family family also be set, otherwise the results are undefined. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SecureSocketWithKey

This optional key is a variant of SockPathName. Instead of binding to a known path, a securely +generated socket is created and the path is assigned to the environment variable that is inher-ited inherited +ited by all jobs spawned by launchd. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockFamily

This optional key can be used to specifically request that "IPv4" or "IPv6" socket(s) be created. +

Type: null or one of "IPv4", "IPv6"

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockNodeName

This optional key specifies the node to connect(2) or bind(2) to. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockPassive

This optional key specifies whether listen(2) or connect(2) should be called on the created file +descriptor. The default is true ("to listen"). +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockPathMode

This optional key specifies the mode of the socket. Known bug: Property lists don't support +octal, so please convert the value to decimal. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockPathName

This optional key implies SockFamily is set to "Unix". It specifies the path to connect(2) or +bind(2) to. +

Type: null or path

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockProtocol

This optional key specifies the protocol to be passed to socket(2). The only value understood by +this key at the moment is "TCP". +

Type: null or value "TCP" (singular enum)

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockServiceName

This optional key specifies the service on the node to connect(2) or bind(2) to. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Sockets.<name>.SockType

This optional key tells launchctl what type of socket to create. The default is "stream" and +other valid values for this key are "dgram" and "seqpacket" respectively. +

Type: null or one of "stream", "dgram", "seqpacket"

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits

Resource limits to be imposed on the job. These adjust variables set with setrlimit(2). The following +keys apply: +

Type: null or submodule

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.CPU

The maximum amount of cpu time (in seconds) to be used by each process. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.Core

The largest size (in bytes) core file that may be created. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.FileSize

The largest size (in bytes) file that may be created. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.MemoryLock

The maximum size (in bytes) which a process may lock into memory using the mlock(2) function. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.NumberOfFiles

The maximum number of open files for this process. Setting this value in a system wide daemon +will set the sysctl(3) kern.maxfiles (SoftResourceLimits) or kern.maxfilesperproc (HardResource-Limits) (HardResourceLimits) +Limits) value in addition to the setrlimit(2) values. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.NumberOfProcesses

The maximum number of simultaneous processes for this user id. Setting this value in a system +wide daemon will set the sysctl(3) kern.maxproc (SoftResourceLimits) or kern.maxprocperuid +(HardResourceLimits) value in addition to the setrlimit(2) values. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.SoftResourceLimits.ResidentSetSize

The maximum size (in bytes) to which a process's resident set size may grow. This imposes a +limit on the amount of physical memory to be given to a process; if memory is tight, the system +will prefer to take memory from processes that are exceeding their declared resident set size. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. Stack extension is performed automatically by the system. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StandardErrorPath

This optional key specifies what file should be used for data being sent to stderr when using stdio(3). +

Type: null or path

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StandardInPath

This optional key specifies what file should be used for data being supplied to stdin when using +stdio(3). +

Type: null or path

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StandardOutPath

This optional key specifies what file should be used for data being sent to stdout when using stdio(3). +

Type: null or path

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartCalendarInterval

This optional key causes the job to be started every calendar interval as specified. Missing arguments +are considered to be wildcard. The semantics are much like crontab(5). Unlike cron which skips job +invocations when the computer is asleep, launchd will start the job the next time the computer wakes +up. If multiple intervals transpire before the computer is woken, those events will be coalesced into +one event upon wake from sleep. +

Type: null or list of submodules

Default: null

Example: + { + Hour = 2; Minute = 30; + } +

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartCalendarInterval.*.Day

The day on which this job will be run. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartCalendarInterval.*.Hour

The hour on which this job will be run. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartCalendarInterval.*.Minute

The minute on which this job will be run. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartCalendarInterval.*.Month

The month on which this job will be run. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartCalendarInterval.*.Weekday

The weekday on which this job will be run (0 and 7 are Sunday). +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartInterval

This optional key causes the job to be started every N seconds. If the system is asleep, the job will +be started the next time the computer wakes up. If multiple intervals transpire before the computer is +woken, those events will be coalesced into one event upon wake from sleep. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.StartOnMount

This optional key causes the job to be started every time a filesystem is mounted. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.ThrottleInterval

This key lets one override the default throttling policy imposed on jobs by launchd. The value is in +seconds, and by default, jobs will not be spawned more than once every 10 seconds. The principle +behind this is that jobs should linger around just in case they are needed again in the near future. +This not only reduces the latency of responses, but it encourages developers to amortize the cost of +program invocation. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.TimeOut

The recommended idle time out (in seconds) to pass to the job. If no value is specified, a default time +out will be supplied by launchd for use by the job at check in time. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.Umask

This optional key specifies what value should be passed to umask(2) before running the job. Known bug: +Property lists don't support octal, so please convert the value to decimal. +

Type: null or signed integer

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.UserName

This optional key specifies the user to run the job as. This key is only applicable when launchd is +running as root. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.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. +

Type: null or boolean

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.WatchPaths

This optional key causes the job to be started if any one of the listed paths are modified. +

Type: null or list of paths

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.WorkingDirectory

This optional key is used to specify a directory to chdir(2) to before running the job. +

Type: null or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.inetdCompatibility

The presence of this key specifies that the daemon expects to be run as if it were launched from inetd. +

Type: null or submodule

Default: null

Example: + { + Wait = true; + } +

Declared by:

+ <home-manager/modules/launchd/default.nix> +
launchd.agents.<name>.config.inetdCompatibility.Wait

This flag corresponds to the "wait" or "nowait" option of inetd. If true, then the listening +socket is passed via the standard in/out/error file descriptors. If false, then accept(2) is +called on behalf of the job, and the result is passed via the standard in/out/error descriptors. +

Type: null or boolean or string

Default: null

Declared by:

+ <home-manager/modules/launchd/default.nix>
lib

This option allows modules to define helper functions, constants, etc.

Type: attribute set of attribute sets

Default: diff --git a/release-notes.html b/release-notes.html index 1a8834968..5c69d7d86 100644 --- a/release-notes.html +++ b/release-notes.html @@ -8,7 +8,10 @@ Note, the support is quite limited at the moment. Specifically, it only applies to parts of the system written in the Bash language, such as the home-manager command line tool and the activation script.

If you would like to contribute to the translation effort -then you can do so through the Home Manager Weblate project.

E.1.2. State Version Changes

The state version in this release includes the changes below. +then you can do so through the Home Manager Weblate project.

  • +A new module, launchd.agents was added. +Use this to enable services based on macOS LaunchAgents. +
  • E.1.2. State Version Changes

    The state version in this release includes the changes below. These changes are only active if the home.stateVersion option is set to "22.05" or later.

    • The programs.waybar.settings option now allows defining modules directly under programs.waybar.settings. Defining modules under programs.waybar.settings.modules will now be an error. diff --git a/tools.html b/tools.html index 1bbea7934..a9c907e9e 100644 --- a/tools.html +++ b/tools.html @@ -1,6 +1,6 @@ -Appendix D. Tools

      Appendix D. Tools

      home-manager - — reconfigure a user environment

      Name

      home-manager +Appendix D. Tools

      Appendix D. Tools

      home-manager + — reconfigure a user environment

      Name

      home-manager — reconfigure a user environment

      Synopsis

      home-manager { build | @@ -84,7 +84,7 @@ | --verbose } - ]

      Description

      + ]

      Description

      This command updates the user environment so that it corresponds to the configuration specified in ~/.config/nixpkgs/home.nix or ~/.config/nixpkgs/flake.nix.

      @@ -153,7 +153,7 @@ available for immediate garbage collection.

    -

    Options

    +

    Options

    The tool accepts the options

    -A attrPath @@ -265,15 +265,15 @@ --verbose

    Activates verbose output. -

    Files

    +

    Files

    $XDG_DATA_HOME/home-manager/news-read-ids

    Identifiers of news items that have been shown. Can be deleted to reset the read news indicator. -

    Bugs

    +

    Bugs

    Please report any bugs on the project issue tracker. -

    See also

    +

    See also

    home-configuration.nix(5)

    \ No newline at end of file