startupitem issue with unmounted volume (non-default prefix)

Craig Treleaven ctreleaven at macports.org
Sat Jul 25 04:56:58 PDT 2015


> On Jul 24, 2015, at 10:48 PM, Joshua Root <jmr at macports.org> wrote:
> 
> On 2015-7-25 09:59 , Ryan Schmidt wrote:
>> 
>>> On Jul 21, 2015, at 9:04 PM, Daniel J. Luke wrote:
>>>> On Jul 21, 2015, at 7:27 PM, Ryan Schmidt wrote:
>>>>> ok, so we should probably be copying the plist (instead of symlinking it - which is a lesson we should have already learned from back in the ‘images’ days) - and we likely also want something like the above.
>>>> 
>>>> I don't remember: any reason why we need a copy/symlink there? Why can't we just put the plist there (and only there)?
>>> 
>>> I believe it was a desire to have everything in $prefix (and maybe to facilitate when people have more than one install in different prefixes?)
>> 
>> But if you have multiple installs, you already have to set "startupitem_install no" and "startupitem_type none" in macports.conf on all but one of them. There would be no significant difference if we were to change MacPorts to install the plist file to its final destination directly, rather than to put a symlink there.
> 
> What we should do is:
> * Never put anything in /Library/LaunchDaemons at destroot time
> * If $startupitem_install is true at activate time, hard-link or copy
> (depending on if the volumes differ) the plist to /Library/LaunchDaemons
> * Record that we did that so it can be removed at deactivate time
> 
> - Josh
From a selfish point of view, I would like to see this work better in case of mdmv/mpkg installers.  Currently, my installer for MythTV includes launchd plists for MythTV, MariaDB and logrotate.  The dmg installer doesn’t put the plist in the right place for any of those.  (There are no activate or deactivate stages in such cases.)  My workaround depends on running a script after the install.

Craig



More information about the macports-dev mailing list