18:15 Monday, July 07 2008

launchd

A while back, I ordered an Apple Xserve (the 1U Apple server) for some future testing. For a while now, Apple has threatened to kill off support for a bunch of Unix standards (fstab, crond, rc.local, etc). It appears that in OSX Server 10.5.2, they actually did it. cron is badly broken. It only works after I edit my crontab, and then stops working after a reboot until I "crontab -e" again.
fstab doesn't work unless I manually "mount -a". rc.local sort of works, except that anything that gets run via "su - \$USER -c" fails with an "unknown user" error.
All of this leads to apple's supposed replacement for these reliable standards, launchd. launchd is this miserable XML based tool which provides replacement init script + crond functionality. The problem here is that launch is a huge PITA to setup for anything custom, and doesn't work reliably, or produce sane, understandable errors when something fails.
I really wish I could find some sane, reasoned explanations for why Apple is systematically destroying its Unix heritage, but all I see are loads of fanboys foaming at the mouth.