summaryrefslogtreecommitdiff
path: root/modules/launchd
diff options
context:
space:
mode:
authorDaiderd Jordan <daiderd@gmail.com>2016-12-03 22:44:36 +0100
committerDaiderd Jordan <daiderd@gmail.com>2016-12-03 22:44:36 +0100
commit9a5af2ee4a7530e36c400525098ca1990eaea27b (patch)
tree9eb3eda0737a6407fbcdb044a92144b9fcc2a1f6 /modules/launchd
parent61a91d3c9994aa1a176a499552c44b15dbb053d7 (diff)
fix system activation service
Diffstat (limited to 'modules/launchd')
-rw-r--r--modules/launchd/default.nix24
1 files changed, 22 insertions, 2 deletions
diff --git a/modules/launchd/default.nix b/modules/launchd/default.nix
index 5d1fc69..b692e74 100644
--- a/modules/launchd/default.nix
+++ b/modules/launchd/default.nix
@@ -44,13 +44,33 @@ in
launchd.agents = mkOption {
default = {};
type = types.attrsOf (types.submodule serviceOptions);
- description = "Definition of launchd agents.";
+ description = ''
+ Definition of per-user launchd agents.
+
+ When a user logs in, a per-user launchd is started.
+ It does the following:
+ 1. It loads the parameters for each launch-on-demand user agent from the property list files found in /System/Library/LaunchAgents, /Library/LaunchAgents, and the user’s individual Library/LaunchAgents directory.
+ 2. It registers the sockets and file descriptors requested by those user agents.
+ 3. It launches any user agents that requested to be running all the time.
+ 4. As requests for a particular service arrive, it launches the corresponding user agent and passes the request to it.
+ 5. When the user logs out, it sends a SIGTERM signal to all of the user agents that it started.
+ '';
};
launchd.daemons = mkOption {
default = {};
type = types.attrsOf (types.submodule serviceOptions);
- description = "Definition of launchd daemons.";
+ description = ''
+ Definition of launchd daemons.
+
+ After the system is booted and the kernel is running, launchd is run to finish the system initialization.
+ As part of that initialization, it goes through the following steps:
+ 1. It loads the parameters for each launch-on-demand system-level daemon from the property list files found in /System/Library/LaunchDaemons/ and /Library/LaunchDaemons/.
+ 2. It registers the sockets and file descriptors requested by those daemons.
+ 3. It launches any daemons that requested to be running all the time.
+ 4. As requests for a particular service arrive, it launches the corresponding daemon and passes the request to it.
+ 5. When the system shuts down, it sends a SIGTERM signal to all of the daemons that it started.
+ '';
};
};