| This looks nice, but I wish it would just use Launchd under the hood. Launchd is solid and full-featured: * Good process management (failure retries with backoff) * Supports watching folders * Decent command-line client for when you want to script or work fast in the shell * Supports starting daemons on login * Can start/stop based on whether certain things (network, paths, mounts, etc.) are up/down * Supports calendar-based scheduling (replaces cron) * Can redirect logging * Can enforce resource limits (RAM, CPU, I/O, number of processes etc.) + nice level I run all my daemons (Homebrew apps as well as personal development stuff) under Launchd, and I would love a convenient menu-bar GUI like this. |
No, it's a train wreck of bad design, lack of backwards compatibility and sharp edges:
* Tracks PIDs only, so make sure that your process doesn't double fork (as many unix daemons do by default) or it'll lose track of them.
* No real documentation from Apple (man page is useless). The best resource is http://launchd.info.
* No feedback to commands: launchctl doesn't give any useful output about whether a command worked or not.
* Even something as simple as disabling a daemon may require manually editing one of the many `overrides.plist` XML files somewhere on the system.. though check your OS version because this changed between 10.9 and 10.10 without notice.
* ...I could go on.
Due to the chronic lack of documentation, many operations are totally trial and error. In fact, it is so bad that there's a market for a GUI tool (LaunchControl) which, to its credit, does manage to make launchd less painful than a trip to the dentist.
The only feature it adds that sysv didn't have is socket activation, and it doesn't do anything that xinetd didn't.