Commit graph

4 commits

Author SHA1 Message Date
Wael Nasreddine
366d78c285
launchd: wait for /nix/store before starting agent (#8609) (#8661)
On Darwin, launchd may attempt to start agents before the Nix store is
mounted and available. This leads to failures when the agent's executable
or arguments reside in the Nix store.

This change wraps the agent's command in a shell script that uses
/bin/wait4path to ensure /nix/store is ready before executing the
original program. It also ensures that ProgramArguments are correctly
escaped and concatenated.

(cherry picked from commit eec72f1278)
2026-01-27 22:00:47 -08:00
lignus
3ec1cd9a07
launchd+targets/darwin: Escape XML in plists (#7356)
This patch updates all usage of toPlist such that it escapes any strings
in the final output.

The motication for this change is to avoid confusion when end-users of
home-manager's APIs are not aware that the option values they set end up
being passed un-escaped to XML files.

BREAKING CHANGE: Consumers doing manual escaping will now be doubly escaped.

Co-authored-by: Linnnus <linnnus@users.noreply.github.com>
2025-08-09 11:22:08 -05:00
midchildan
2acea86583
launchd: make Launch Agents config a freeform setting
Because there probably are options we don't know about.
2023-03-25 23:59:58 +01:00
midchildan
c7a13f76a7
launchd: initial support for LaunchAgents 2022-02-26 10:32:19 +01:00