[launchd-dev] Yosemite not starting a system launch agent

Damien Sorresso dsorresso at apple.com
Thu Jun 25 08:58:49 PDT 2015


On 25 Jun, 2015, at 05:20, Axel Luttgens <axel.luttgens at skynet.be> wrote:
>> Le 23 juin 2015 à 03:31, James Bucanek a écrit :
>> 
>> Greetings,
>> 
>> Here's my problem in a nutshell:
>> 
>> I have a simple scheduler daemon that runs in the background for logged in users. The problem is that it won’t start when installed in Yosemite (seems to start in all previous versions of OS X that use launchd).
> 
> Hello James,
> 
> If you allow, some questions for better understanding your context.
> 
> 
>> Here’s what my program does:
> 
> Which program? Some kind of installer?
> 
> 
>> 1) I install the com.qrecall.sheduler.plist in /Library/LaunchAgents/ (with the correct ownership and access privileges).
> 
> So, do you install the plist yourself, beforehand, or is this done by aforementioned "program"?
> 
> Could you show us that plist?
> 
> 
>> 2) launchctl load -S Background /Library/LaunchAgents/com.qrecall.scheduler.plist
>> (successful)
> 
> I guess this is done by the "program".
> Is it run by a logged in user (in the GUI) and running as that user?
> 
> 
>> 3) launchctl start com.qrecall.scheduler
>> (exits with status 1)
>> 
>> And the scheduler process is NOT started. All attempts to get it started through launchctl have failed.
>> 
>> However, I know that it’s installed because if you simply restart the system the scheduler deamon starts running like a champ.
> 
> For any user that logs in?
> Or for a specific user only?
> 
> More generally, could you describe what exactly you want to achieve, the workflow you are considering? We could then proceed with some trials at home. ;-)
> 
> 
>> Now ... I know what you're going to say: "Dude! You should be using the new launchctl commands introduced in 10.10!"
>> 
>> Tried that. I can't seem to get anywhere with it. Basically, I don't know what I'm doing. I've read the man page for the new launchctl about 20 times and I'm still not sure how I should be using it.
>> 
>> […]
> 
> Yes, it’s a pity.
> Terribly outdated documentation on developer’s site, no source code anymore…
> A bit as if users on other unix platforms would suddenly have to guess how the init mechanism is working.

The launchctl(1) and launchd.plist(5) man pages were substantially updated in Yosemite to cover new functionality, address a bunch of clarity errors, and remove stuff that was no longer relevant. launchctl(1) itself also has fairly extensive help for each subcommand.

If documentation in either the man pages or launchctl(1)'s help output is unclear/incorrect, please file a bug.
-damien



More information about the launchd-dev mailing list