On Sep 17, 2022, at 04:58, René J.V. Bertin wrote:
> 
> Ryan Schmidt wrote on 20220916::21:30:28 re: "Re: Disabled key in launchd 
> plists"
> 
>> My reading of the documentation is that the system will start any launchd 
>> plists at system startup time that are in the standard LaunchDaemons 
>> directories and that are not disabled.
> 
> That's possible, but it could be that it's done via launchctl. Academic 
> difference, probably.
> 
>> As I said, we don't want things the user installed with MacPorts to start 
>> unexpectedly at system startup time.
> 
> That would depend a bit on what kind of service, no, and to what extent the 
> unexpected load isn't that because documented? BTW, launch *agents* would 
> only be started when a user logs in. That, in a sense, is a trickier 
> situation. A MacPorts user is an admin, in principle, so in a situation to 
> decide on installing ports that contain a system daemon (which could perform 
> a crucial but strictly MacPorts-specific function). Deciding whether or not 
> other users on that system should run the same agents as him/her is another 
> thing.
> 
> I'm not familiar with `port load`; I presume (hope...) that it's unambiguous 
> as to the difference between agents and daemons, that the former have to be 
> started as the user, the latter "sudo" etc.
> 
>> I don't know if you can specify a directory to launchctl to have it load all 
>> plists in a directory.
> 
> I only noticed that yesterday too, first from looking through the sources and 
> then confirmed it in the manpage. It makes sense.
> 
>> If the plist is not in a standard LaunchDaemons directory, I assume that 
>> would load the plist immediately, but not at future system startups. Since 
>> that would be an undesirable situation I haven't ever tested it.
> 
> Why is that undesirable? As far as I see, the whole system is designed this 
> way. It works for agents (at least the ones symlinked in 
> /Library/LaunchAgents get started again after logging in, AFAIHS) but it 
> would make even more sense for daemons. You start (load) them once and they 
> keep running to perform the background service you (sometimes) want. You just 
> have to be aware of it.
> It's true that Apple could have foreseen a way to load either type 
> temporarily.
> 
> Or I could be wrong, the documentation isn't exactly without ambiguities (it 
> says "Note that per-user configuration files (LaunchAgents) must be owned by 
> the user loading them." which is clearly not true if they did not forget to 
> specify that this applies only to the ones in ~/Library/LaunchAgents).
> 
> I could reboot my system to test a few of these assumptions but somehow that 
> annoys me :)

I don't think I have anything further I want to add to this conversation. I've 
explained to the best of my knowledge how launchd/launchctl work and what 
MacPorts does with its launchd support and why. I'm sure you can perform any 
further investigations that interest you on your own.

Reply via email to