I have thought about this considerably, and I think the best solution is to have ports rc.d scripts installed to /etc/rc.d. One of the problems with having them in a separate directory is that we don't know when that directory will be available, so we have to order the scripts in two phases: first /etc/rc.d and then the ports rc.d directory when it is ready. If we do this then there is the REAL possiblity that something may not get run the second time around. For example, let's say that /etc/rc re-orders all the scripts (base and local) when it hits the dummy script PORTS. Furthermore, after they are reordered we skip the scripts that come before PORTS. The problem is that When the scripts are reordered if a particular script does not have a dependency on PORTS (or another script that requires PORTS) you are not guaranteed that if it came after PORTS the first time it will still be after ports after the second reordering. While you can have workarounds and introduce hacks around this problem, I think the general messiness and potential problems of ordering scripts more than once makes it a bad solution. Secondly, there is really no compelling reason that all ports be ordered with the base scripts. If a port is of such a nature that it needs to be started much earlier than it currently is, either the ports should install the script automatically to /etc/rc.d or it should give the user the option of choosing. So, I think the best course of action is to convert all ports startup scripts to rc.d format and either a) install them all automatically to /etc/rc.d b) leave it to the port maintainer to choose c) leave it to the user to choose. If we go with b or c, then /etc/rc.d/localpkg will need to learn to order rc.d scripts. I have a patch for that which is similar to the one I committed except that it has a list of the broken scripts which end in .sh that it treats like old style scripts (this should preserve compatibility with those upgrading from an older release): http://people.freebsd.org/~mtm/patches/localpkg.diff Cheers. -- Mike Makonnen | GPG-KEY: http://www.identd.net/~mtm/mtm.asc mtm_at_identd.net | Fingerprint: AC7B 5672 2D11 F4D0 EBF8 5279 5359 2B82 7CD4 1F55 mtm_at_FreeBSD.Org| FreeBSD - Unleash the Daemon !Received on Mon Aug 16 2004 - 13:58:43 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:06 UTC