site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:cc:message-id:from:to :in-reply-to:content-type:mime-version:subject:date:references :x-mailer; bh=l5H4sLYPp1vIG8A2gXYwUMB2/clu8NcegXg5CUBTEZA=; b=vm55giF362u2M3zpsZRyQHC1c4RdXTHMfHCJ5T417Kzur4rmuvPCzNSgFngiDJYQTm SAELIfn72dj6MxzRj4SeQxOS1CXQeeWGK+aAsxTYBgNZggGg/xhhEKLUGxp0EHpOQwyA thzT7+MMCC1AJyypH/Mq4Nhf7XD6t/oTFBFRs= Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=cc:message-id:from:to:in-reply-to:content-type:mime-version:subject :date:references:x-mailer; b=tl1hMV0krVOyi8c2HyXTQ+U5eGPi+jAH3goo6KGFMxN15wWp80QHbCixIx9ltSI3Hj yZFOFoWJuSQ3DHinMLGgQ5+RSpkxlPU2EtI0fCD5cTAZLLXKEFHDZ7UXRyij46rxVA4X NLRkuqJeKiKPhSipZmfVPbmfTetTdZFYrs+kc= On Oct 20, 2008, at 16:34 , Karan, Cem (Civ, ARL/CISD) wrote: _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... This email sent to site_archiver@lists.apple.com Truthfully, I'd rather petition Apple to make it a part of launchd. The moment we have dependencies, then we have to worry about cycles (deadlock), deciding what to do if a process that we're dependent on goes down, etc. And, now that I'm thinking about it, there is another cheesy method to handle the problem. Write a script that launchd launches that runs your first program. When that program returns, the script submits the other programs to launchd via 'launchctl submit'. Since we haven't put anything into /Library/LaunchDaemons or the other launchd places, we get the same effect as using /var/run, so everything is always launched in the correct order each time we reboot. That's kinda what I did... I ended up writing a daemon which was connected to launchd, starts up and does all the initialization stuff. It then actually manages some of the other processes and they all communicate over a unix socket. smime.p7s