Date: Mon, 16 Aug 2004 09:02:50 -0700 From: Brooks Davis <brooks@one-eyed-alien.net> To: Mike Makonnen <mtm@identd.net> Cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) Message-ID: <20040816160250.GC11213@odin.ac.hmc.edu> In-Reply-To: <20040816155653.GA2405@rogue.acs-et.com> References: <20040731155822.GB35674@rogue.acs-et.com> <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> <20040816155653.GA2405@rogue.acs-et.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--DSayHWYpDlRfCAAQ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Aug 16, 2004 at 06:56:53PM +0300, Mike Makonnen wrote: > 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 scr= ipts > 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. >=20 > 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. >=20 > 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. >=20 > 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. >=20 > 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 commi= tted > 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 th= ose > upgrading from an older release): > http://people.freebsd.org/~mtm/patches/localpkg.diff I definatly like the idea of installing ports rc.d scripts in /etc. It's one of the things pkgsrc does that I really like (actually, I like the way they handle most etc/ files better even though it requires more modification of ported software). -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --DSayHWYpDlRfCAAQ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQFBINqpXY6L6fI4GtQRAupfAKC/YJN1KCR/Gk8/nF4PRsrHFml5mgCghJCp ASkohwlcJqkc3Z8WBlXoGFg= =Qbsh -----END PGP SIGNATURE----- --DSayHWYpDlRfCAAQ--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040816160250.GC11213>