Skip to content

Conversation

@robinvenables
Copy link

@robinvenables robinvenables commented Jan 23, 2026

launchd differentiates between agents and daemons. The main difference is that an agent is run on behalf of the logged in user while a daemon runs on behalf of the root user or any user you specify with the UserName key. Agents are defined in /Library/LaunchAgents and daemons are defined in /Library/LauchDaemons.

I would expect stalwart to run at system boot time, not when a user logs in. This change moves stalwart.mail.plist to /Library/LaunchDaemons and calls launchctl with the up-to-date options and location.

# launchctl load /Library/LaunchAgents/stalwart.mail.plist
Warning: Expecting a LaunchDaemons path since the command was run as root. Got LaunchAgents instead.
`launchctl bootstrap` is a recommended alternative.

@CLAassistant
Copy link

CLAassistant commented Jan 23, 2026

CLA assistant check
All committers have signed the CLA.

@robinvenables robinvenables marked this pull request as ready for review January 23, 2026 17:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants