Tuesday, October 6, 2026

Screenshot of a ChatGPT response comparing cron, launchd, and LaunchControl on macOS

With every release of macOS, I’m growing more and more weary of the enormous number of workarounds to get anything useful done. Apple products are not for hackers. This much is clear, and it nearly always has been. They make amazing hardware and, on some level, I do love their attention to design. But increasingly, they’re making it harder to interact with the Unix layer underneath the GUI veneer. For example, I was trying to create a process whereby my Mac Studio would generate snapshots of my Obsidian vault to a Git repository every morning as part of a layered backup scheme. It should be a straightforward process to implement with launchd, but the increasingly complex macOS permission system makes it nearly impossible to allow arbitrary scripts of my creation to run unfettered on my machine. Seemingly, cron is now not much better, if ChatGPT is to be believed.

I’m just waiting for my old M1 MacBook Pro to die so I can move to a Framework laptop to run some Linux flavour. It’s a shame that this is necessary. I understand Apple’s position. All of this is going to get worse as agents do more autonomously. I also understand that Apple is marketing to normies and not to power users. But it is a little sad nonetheless. Certainly part of this is just that I don’t understand their evolving security model. But I know that if I want to create a service like this on Debian, systemd never fails me, and I can get a service like this spun up in minutes instead of the hour and a half I spent messing with this on macOS 27.0.1.

In the end, I did manage to get a macOS LaunchAgent running. Writing the launchd plist myself didn’t work because of some sort of environment or security issue. But LaunchControl came to the rescue. Their bundled fdautil script can execute my snapshotter script with the correct permissions and environment. Happy ending. But a happier one would be for Apple to give us a switch between normie mode and hacker mode. That I could live with.