Per-user process supervision trees on macOS, managed by daemontools from pkgsrc.
Because it works on many other platforms: rc.d-boot from pkgsrc plus daemontools-run from pkgsrc.
On macOS with FileVault 2, services failed to start with e.g. opening configfile /Users/schmonz/Sites/schmonz.local/conf/lighttpd failed: Operation not permitted.
- The root
svscanis unable to start the usersvscanuntil the user has logged in. - The user
svscanprobably was itself started with insufficient filesystem privileges.
On a system without FileVault enabled, things work as I wanted.
- Stop trying to use
daemontools-runon macOS when FileVault is enabled. - Configure
launchdto runsvscanwhen I log in. - Make sure
/opt/pkg/bin/mksh(the shell that these scripts will run under) has Full Disk Access.
- If my user isn't logged in, its services don't run.
- On macOS with FileVault, there might not be anything I can do to make
daemontools-runwork as I'd want.