1
0
Fork 0
mirror of https://github.com/LnL7/nix-darwin.git synced 2024-12-14 11:57:34 +00:00
nix-darwin/modules/services
Tyler Miller 861af0fc94
fix(launchd): improve StartCalendarInterval
Stricter launchd -> StartCalendarInterval type:

- Verify that the integers passed to `Minute`, `Hour`, etc. are within
  range.

- When provided, the value for StartCalendarInterval must be a non-empty
  list of calendar intervals and must not contain duplicates entries
  (throw an error otherwise).

- For increased flexibility and backwards-compatibility, allow an
  attrset to be passed as well (which will be type-checked and is
  functionally equivalent to passing a singleton list). Allowing an
  attrset or list is precisely in-line with what `launchd.plist(5)`
  accepts for StartCalendarInterval.

Migrate `nix.gc.interval` and `nix.optimise.interval` over to use this
new type, and update their defaults to run weekly instead of daily.

Create `modules/launchd/types.nix` file for easier/modular use of
launchd types needed in multiple files.

Documentation:

- Update and improve wording/documentation of launchd's
  `StartCalendarInterval`.

- Improve wording/documentation of `nix.gc.interval` and
  `nix.optimise.interval` ("time interval" can be misleading as it's
  actually a "calendar interval"; e.g. `{ Hour = 3; Minute = 15;}`
  runs daily, not every 3.25 hours).
2024-06-09 11:20:15 -07:00
..
activate-system treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
github-runner treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
hercules-ci-agent hercules-ci-agent: fix crash calling security 2024-05-21 23:16:46 +10:00
karabiner-elements treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
khd treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
kwm treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
mail treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
monitoring treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
nextdns treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
nix-gc fix(launchd): improve StartCalendarInterval 2024-06-09 11:20:15 -07:00
nix-optimise fix(launchd): improve StartCalendarInterval 2024-06-09 11:20:15 -07:00
ofborg treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
postgresql treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
privoxy treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
redis treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
sketchybar treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
skhd treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
spacebar treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
synergy treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
yabai treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
autossh.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
buildkite-agents.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
cachix-agent.nix cachix-agent: fix crash calling security 2024-05-16 18:04:33 +04:00
chunkwm.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
dnsmasq.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
emacs.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
eternal-terminal.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
gitlab-runner.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
ipfs.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
lorri.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
mopidy.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
netbird.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
nix-daemon.nix nix-daemon: increase SoftResourceLimits.NumberOfFiles 2024-04-24 16:03:49 +10:00
spotifyd.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
synapse-bt.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
tailscale.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
trezord.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00
wg-quick.nix treewide: remove lib.mdDoc 2024-04-19 04:05:50 +02:00