macOS traces its roots back to various and sundry flavors of Unix, not just NeXT’s NeXTStep OS that came to Apple when Steve Jobs returned to the company in mid-1997.
That means macOS brings to Mac users plenty of Unix utilities that have been around awhile. Apple hasn’t been standing still since 1997. Indeed, the company has modified the Mac’s operating system time and again through the years, and not just the color coated parts. One function that affects many Mac users is called launchd, a built-in service-management framework which starts, stops, and even manages various processes in macOS. Here’s how to gain some personal control over this flexible and very powerful beast without touching the infamous and intimidating Terminal.app.
The Mac and other Unix-like operating systems have a variety of utilities which launchd replace, including init, rc, inetd, xinetd, crowd, watchdogd and others. Basically, launchd is a nifty, flexible, useful utility and process controller that developers use, but you can use, too– with the right utility. I use LaunchControl for the Mac.
What you get with LaunchControl is a graphic user interface to launchd so you can create, delete, manage, and even debug specific user services on your Mac. Open LaunchControl and it displays all the launchd services, status, invalid services, and more.
Not only does LaunchControl give you access to launchd services, you can edit them, too– there’s a built-in editor. The GUI lets you enable or disable specific services with a click; plus, load, unload, or start ad-hoc.
It comes with dozens of documented keys and options in a palette panel, complete with annotations. There’s also an Expert Mode to access unofficial launchd features, and the Preferences are anything but intimidating.
Think of LaunchControl as a point and click interface to a wonderfully powerful launch tool previously hidden and accessible only to programmers and those willing to delve into the darkness of macOS Sierra with the infamous Terminal.app.
launchd is a decidedly geeky utility, not for the faint of heart; one which requires a little knowledge of Unix services. However, LaunchControl removes the geekiness, and makes both learning and usage much easier. For example, it can be setup with just a few clicks to launch apps on your Mac according to a schedule that you set. The developer has been very responsive to inquiries and issues, too.
It’s not for everyone but it’s also try-before-you-buy so the risk is just a matter of how much geek you want to be.