Skip site navigation (1)Skip section navigation (2)
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>