[MacPorts] #44497: Change port load to use MacPorts plists directly

MacPorts noreply at macports.org
Thu Jul 31 07:04:40 PDT 2014


#44497: Change port load to use MacPorts plists directly
------------------------------+--------------------------------
  Reporter:  ora.et.labora@…  |      Owner:  macports-tickets@…
      Type:  enhancement      |     Status:  new
  Priority:  Normal           |  Milestone:
 Component:  base             |    Version:  2.3.1
Resolution:                   |   Keywords:
      Port:                   |
------------------------------+--------------------------------

Comment (by larryv@…):

 Replying to [comment:4 ora.et.labora@…]:
 > Be aware that this is a different subject!  My proposal above would
 > not change the expected behaviour, i.e. if  a sym link from
 > /Library/LaunchDaemons into /opt/local/etc/LaunchDaemons is present,
 > then launchd boots that process as usual.

 The expected behavior is that `port load` loads a job immediately and
 configures it to load automatically at boot/login. Your proposal would
 only do the former.

 > With my proposal however, even if I have configured
 > `startupitem_install no` in macports.conf, I can still do a `port load
 > $portname` to launch a process.

 A new command (e.g., `port start`) would be more appropriate for this and
 would not break existing functionality.

 > The current behaviour is that (a manua) removal of a symbolic link in
 > /Library/LaunchDaemons renders port load|unload broken.

 Manual removal of a symlink in `/Library/LaunchDaemons` also renders the
 relevant port broken and is entirely unsupported.

 > I just expect that no software is about to run after having
 > *installed* software. It's just me who want to be in control when I'm
 > going to run software.

 Although MacPorts does allow ports to automatically load jobs upon
 installation, we don’t look favorably on it. I can only think of one that
 actually does so (`certsync`); all other ports require an explicit `port
 load`.

 > I would also be very happy if the general rule is that *absolutely
 > nothing* is installed or changed outside of `/opt/local` (except the
 > installation folder of MacPorts itself).

 That’s our general rule, but if implementing useful functionality requires
 us to install files outside of the MacPorts prefix, we do. Allowing
 automatic starting of launchd jobs is the only general case I can think
 of.

 On the other hand, I can't think of a case in which MacPorts modifies
 already-existing files, other than the installer package adding the prefix
 to the user's `.profile`.

-- 
Ticket URL: <https://trac.macports.org/ticket/44497#comment:5>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list