From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 15:58:43 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9C09616A4CE; Mon, 16 Aug 2004 15:58:43 +0000 (GMT) Received: from telecom.net.et (ns2.telecom.net.et [213.55.64.38]) by mx1.FreeBSD.org (Postfix) with ESMTP id B57DC43D5F; Mon, 16 Aug 2004 15:58:30 +0000 (GMT) (envelope-from mtm@identd.net) Received: from [213.55.67.10] (HELO pool-151-200-10-97.res.east.verizon.net) by telecom.net.et (CommuniGate Pro SMTP 3.4.8) with ESMTP-TLS id 54549556; Mon, 16 Aug 2004 18:51:18 +0300 Received: from rogue.acs-et.com (localhost [127.0.0.1]) ESMTP id i7GFxalB002519; Mon, 16 Aug 2004 18:59:38 +0300 (EAT) (envelope-from mtm@rogue.acs-et.com) Received: (from mtm@localhost) by rogue.acs-et.com (8.13.1/8.12.11/Submit) id i7GFxXg2002517; Mon, 16 Aug 2004 18:59:33 +0300 (EAT) (envelope-from mtm) Date: Mon, 16 Aug 2004 18:56:53 +0300 From: Mike Makonnen To: Oliver Eikemeier Message-ID: <20040816155653.GA2405@rogue.acs-et.com> References: <20040731155822.GB35674@rogue.acs-et.com> <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> User-Agent: Mutt/1.4.2.1i X-Operating-System: FreeBSD/5.2-CURRENT (i386) cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 15:58:43 -0000 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@identd.net | Fingerprint: AC7B 5672 2D11 F4D0 EBF8 5279 5359 2B82 7CD4 1F55 mtm@FreeBSD.Org| FreeBSD - Unleash the Daemon ! From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 16:04:18 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8AA2216A4CE; Mon, 16 Aug 2004 16:04:18 +0000 (GMT) Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by mx1.FreeBSD.org (Postfix) with ESMTP id 67ACA43D31; Mon, 16 Aug 2004 16:04:18 +0000 (GMT) (envelope-from brdavis@odin.ac.hmc.edu) Received: from odin.ac.hmc.edu (localhost.localdomain [127.0.0.1]) by odin.ac.hmc.edu (8.13.0/8.13.0) with ESMTP id i7GG2oZH015513; Mon, 16 Aug 2004 09:02:50 -0700 Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.13.0/8.13.0/Submit) id i7GG2o8I015509; Mon, 16 Aug 2004 09:02:50 -0700 Date: Mon, 16 Aug 2004 09:02:50 -0700 From: Brooks Davis To: Mike Makonnen Message-ID: <20040816160250.GC11213@odin.ac.hmc.edu> References: <20040731155822.GB35674@rogue.acs-et.com> <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> <20040816155653.GA2405@rogue.acs-et.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="DSayHWYpDlRfCAAQ" Content-Disposition: inline In-Reply-To: <20040816155653.GA2405@rogue.acs-et.com> User-Agent: Mutt/1.4.1i X-Virus-Scanned: by amavisd-new X-Spam-Status: No, hits=0.0 required=8.0 tests=none autolearn=no version=2.63 X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on odin.ac.hmc.edu cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 16:04:18 -0000 --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-- From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 16:26:42 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A1C8816A4CE for ; Mon, 16 Aug 2004 16:26:42 +0000 (GMT) Received: from mail.atsec.com (mail.atsec.com [195.30.252.105]) by mx1.FreeBSD.org (Postfix) with ESMTP id C2B1443D5C for ; Mon, 16 Aug 2004 16:26:41 +0000 (GMT) (envelope-from se@freebsd.org) Received: (qmail 13641 invoked by uid 10125); 16 Aug 2004 16:26:40 -0000 X-SpaceNet-Virusscan: Sophos Version: 3.84; Last IDE Update: 2004-08-16 18:00 no information about results Received: from frueh.atsec.com (HELO ?10.2.2.88?) (217.110.13.170) by mail.atsec.com with SMTP; 16 Aug 2004 16:26:40 -0000 X-SpaceNet-Authentification: SMTP AUTH verified Message-ID: <4120E03F.9030200@FreeBSD.org> Date: Mon, 16 Aug 2004 18:26:39 +0200 From: Stefan Esser User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de-AT; rv:1.7.2) Gecko/20040803 X-Accept-Language: de, en-us, en MIME-Version: 1.0 To: Mike Makonnen References: <20040731155822.GB35674@rogue.acs-et.com> <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> <20040816155653.GA2405@rogue.acs-et.com> In-Reply-To: <20040816155653.GA2405@rogue.acs-et.com> X-Enigmail-Version: 0.85.0.0 X-Enigmail-Supports: pgp-inline, pgp-mime Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts inports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 16:26:42 -0000 Mike Makonnen schrieb: > 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 Having ports startup scripts available for topological sorting from the start seems a good concept. I'd want to see all rcNG startup files put into just one directory not choosen by the port writer but by the local system administrator (with some sensible default). Non-converted port startup scripts could still be executed from $PREFIX/etc/rc.d with "old" semantics assumed. But I guess we may want to impose two restrictions: 1) The startup files should be located below /etc/rc.d, but (IMHO) not _within_ /etc/rc.d. E.g. put ports' startup scripts into /etc/rc.d/ports/ (or /etc/rc.d/local/). That way, no port can accidently overwrite a _system_ startup script in /etc/rc.d. (Ports' startup files could still overwrite each other, but if their names were required to be derived from the port name, even that risk could be excluded.) 2) There could be one implicit dependency applied when sorting ports' startup scripts (the exact name being specified by the system rc files). That way, a restriction on the earliest time a port startup file is executed may be imposed, beyond the dependencies placed into a port's rc file itself. Else a badly written startup file may be executed way to early and "naive" users of a port may be mislead to assume a failure in the base system ... Regards, STefan From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 16:50:45 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D61F716A4F1; Mon, 16 Aug 2004 16:50:44 +0000 (GMT) Received: from postal3.es.net (postal3.es.net [198.128.3.207]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0C55D43D55; Mon, 16 Aug 2004 16:50:37 +0000 (GMT) (envelope-from oberman@es.net) Received: from ptavv.es.net ([198.128.4.29]) by postal3.es.net (Postal Node 3) with ESMTP (SSL) id IBA74465; Mon, 16 Aug 2004 09:50:36 -0700 Received: from ptavv (localhost [127.0.0.1]) by ptavv.es.net (Tachyon Server) with ESMTP id C9B525D0A; Mon, 16 Aug 2004 09:50:35 -0700 (PDT) To: Mike Makonnen In-reply-to: Your message of "Mon, 16 Aug 2004 18:56:53 +0300." <20040816155653.GA2405@rogue.acs-et.com> Date: Mon, 16 Aug 2004 09:50:35 -0700 From: "Kevin Oberman" Message-Id: <20040816165035.C9B525D0A@ptavv.es.net> cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 16:50:46 -0000 > Date: Mon, 16 Aug 2004 18:56:53 +0300 > From: Mike Makonnen > Sender: owner-freebsd-current@freebsd.org > > 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 I'm all for putting all rc.d scripts in a subdirectory of /etc. As you point out, some things need to run early in the boot operation. I have one tool in mind, Tobias Roth's profile. But it absolutely MUST run long before /usr/local is available. On the other hand, I don't like putting them into /etc/rc.d. This makes the mergemaster check for orphaned startup scripts fail and can be confusing. I would suggest that the right answer is a new directory. I'm not sure whether /etc/rc.d.local or /etc/rc.d/local or /etc/local/rc.d would be the best choice. I tend to favor the latter, but I can see some objections about such a modification to hier(7). Any of these would make me happier than the previous proposals. I really dislike the hacks required to make /usr/local/etc work correctly and not just in regard to rcng. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 17:40:13 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1655E16A4CE; Mon, 16 Aug 2004 17:40:13 +0000 (GMT) Received: from rwcrmhc12.comcast.net (rwcrmhc12.comcast.net [216.148.227.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id E376343D2D; Mon, 16 Aug 2004 17:40:12 +0000 (GMT) (envelope-from apeiron@comcast.net) Received: from prophecy.velum (pcp08490587pcs.levtwn01.pa.comcast.net[68.83.169.224]) by comcast.net (rwcrmhc12) with SMTP id <2004081617401101400lgue6e> (Authid: apeiron@comcast.net); Mon, 16 Aug 2004 17:40:12 +0000 Date: Mon, 16 Aug 2004 13:40:10 -0400 From: Christopher Nehren To: Mike Makonnen Message-ID: <20040816174010.GA82600@prophecy.dyndns.org> References: <20040731155822.GB35674@rogue.acs-et.com> <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> <20040816155653.GA2405@rogue.acs-et.com> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="/04w6evG8XlLl3ft" Content-Disposition: inline In-Reply-To: <20040816155653.GA2405@rogue.acs-et.com> X-Please-CC-Me: In List And Group Replies User-Agent: Mutt/1.5.6i cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 17:40:13 -0000 --/04w6evG8XlLl3ft Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Aug 16, 2004 at 11:56:53 EDT, Mike Makonnen scribbled these curious markings: > 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 Please, no. This is in direct violation of hier(8), POLA, the concept of=20 separating third-party packages from the base system, and it also pollutes = the=20 concept of a lean, clean, vendor-provided / file system. One of the things that I love about FreeBSD is that it doesn't make a mess of the base system like Linux does. If I wanted the mess that putting port scripts in /etc/rc.d would cause, I'd use Linux. =2E.. well, maybe not. At the very least, I'd like the current way of doing things (Why does it ne= ed=20 to be changed, anyway? The current way of doing things is quite close to=20 perfect, IMHO.) to remain a viable option. And no, littering /etc/rc.d with= =20 symlinks is not the way to do it. If I wanted that, again, I'd go to Linux. Well, I'm fresh out of paint. If you'd like, you can take this message as a statement of how happy I am with FreeBSD :-). --/04w6evG8XlLl3ft Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (FreeBSD) iD8DBQFBIPF6k/lo7zvzJioRAgNvAJ42AT5SrNRIN0Yrl0sSITHzvaji0wCfftkB YnFu+y8jaQEy8kojwJcUjI0= =Sy6C -----END PGP SIGNATURE----- --/04w6evG8XlLl3ft-- From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 18:15:02 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1A22D16A4CF; Mon, 16 Aug 2004 18:15:02 +0000 (GMT) Received: from postal2.es.net (postal2.es.net [198.128.3.206]) by mx1.FreeBSD.org (Postfix) with ESMTP id E88C143D53; Mon, 16 Aug 2004 18:15:01 +0000 (GMT) (envelope-from oberman@es.net) Received: from ptavv.es.net ([198.128.4.29]) by postal2.es.net (Postal Node 2) with ESMTP (SSL) id IBA74465; Mon, 16 Aug 2004 11:15:01 -0700 Received: from ptavv (localhost [127.0.0.1]) by ptavv.es.net (Tachyon Server) with ESMTP id 38B785D09; Mon, 16 Aug 2004 11:15:01 -0700 (PDT) To: Christopher Nehren In-reply-to: Your message of "Mon, 16 Aug 2004 13:40:10 EDT." <20040816174010.GA82600@prophecy.dyndns.org> Date: Mon, 16 Aug 2004 11:15:01 -0700 From: "Kevin Oberman" Message-Id: <20040816181501.38B785D09@ptavv.es.net> cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 18:15:02 -0000 > Date: Mon, 16 Aug 2004 13:40:10 -0400 > From: Christopher Nehren > Sender: owner-freebsd-current@freebsd.org > > --/04w6evG8XlLl3ft > Content-Type: text/plain; charset=us-ascii > Content-Disposition: inline > Content-Transfer-Encoding: quoted-printable > > On Mon, Aug 16, 2004 at 11:56:53 EDT, Mike Makonnen scribbled these > curious markings: > > 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 > > Please, no. This is in direct violation of hier(8), POLA, the concept > of separating third-party packages from the base system, and it also > pollutes the concept of a lean, clean, vendor-provided / file > system. One of the things that I love about FreeBSD is that it doesn't > make a mess of the base system like Linux does. If I wanted the mess > that putting port scripts in /etc/rc.d would cause, I'd use Linux. > > ... well, maybe not. > > At the very least, I'd like the current way of doing things (Why does it need > to be changed, anyway? The current way of doing things is quite close to > perfect, IMHO.) to remain a viable option. And no, littering /etc/rc.d with > symlinks is not the way to do it. If I wanted that, again, I'd go to Linux. > > Well, I'm fresh out of paint. > > If you'd like, you can take this message as a statement of how happy I > am with FreeBSD :-). As a LONG time BSD user (since at least BSD4.1, I don't see a violation of POLA or of heir(7), although I expected that someone would claim it. /usr/local/etc is a very recent addition and is barely mentioned in heir(7) at all. The problem is that it defeats on of the purposes of /etc. It was (to the best of my recollection) for systems specific configuration files that might be needed when only / was mounted and in single-user mode when / was read-only. There are many local system mods that require configuration files and/or scripts be available prior to mounting of any file system. I do like a separation of local stuff, but it really, really should be in the physical root partition. (And I oppose the use of symlinks, as well. That's really ugly!) -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 18:18:41 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D1A7E16A4CF for ; Mon, 16 Aug 2004 18:18:41 +0000 (GMT) Received: from endif.cjb.net (65-101-231-137.dnvr.qwest.net [65.101.231.137]) by mx1.FreeBSD.org (Postfix) with SMTP id 0B16643D48 for ; Mon, 16 Aug 2004 18:18:41 +0000 (GMT) (envelope-from end@endif.cjb.net) Received: (qmail 36902 invoked by uid 1003); 16 Aug 2004 18:18:40 -0000 Date: Mon, 16 Aug 2004 12:18:40 -0600 From: Robin Schoonover To: Christopher Nehren Message-ID: <20040816181840.GA36843@rogue> References: <20040731155822.GB35674@rogue.acs-et.com> <2A78201C-E316-11D8-9C56-00039312D914@fillmore-labs.com> <20040816155653.GA2405@rogue.acs-et.com> <20040816174010.GA82600@prophecy.dyndns.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20040816174010.GA82600@prophecy.dyndns.org> User-Agent: Mutt/1.4.2.1i cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 18:18:42 -0000 On Mon, Aug 16, 2004 at 01:40:10PM -0400, Christopher Nehren wrote: > On Mon, Aug 16, 2004 at 11:56:53 EDT, Mike Makonnen scribbled these > curious markings: > > 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 > > Please, no. This is in direct violation of hier(8), POLA, the concept of > separating third-party packages from the base system, and it also pollutes the > concept of a lean, clean, vendor-provided / file system. One of the > things that I love about FreeBSD is that it doesn't make a mess of the > base system like Linux does. If I wanted the mess that putting port > scripts in /etc/rc.d would cause, I'd use Linux. > ports tries to make it more difficult to place things outside of ${PREFIX} for a reason. :) -- Robin Schoonover (aka End) # "The algorithm to do that is extremely nasty. You might want to mug # someone with it." # -- M. Devine, Computer Science 340 From owner-freebsd-rc@FreeBSD.ORG Mon Aug 16 23:08:26 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 5FF6416A4CE; Mon, 16 Aug 2004 23:08:26 +0000 (GMT) Received: from fillmore.dyndns.org (port-212-202-50-15.dynamic.qsc.de [212.202.50.15]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0BDCA43D3F; Mon, 16 Aug 2004 23:08:26 +0000 (GMT) (envelope-from eikemeier@fillmore-labs.com) Received: from dhcp-11.local ([172.16.0.11]) by fillmore.dyndns.org with esmtp (TLSv1:DES-CBC3-SHA:168) (Exim 4.41 (FreeBSD)) id 1BwqaV-000PkH-7a; Tue, 17 Aug 2004 01:08:25 +0200 Date: Tue, 17 Aug 2004 01:10:09 +0200 Content-Type: text/plain; charset=US-ASCII; format=flowed Mime-Version: 1.0 (Apple Message framework v482) To: Mike Makonnen From: Oliver Eikemeier In-Reply-To: <20040816155653.GA2405@rogue.acs-et.com> Message-Id: <6B9BDB86-EFD9-11D8-924A-00039312D914@fillmore-labs.com> Content-Transfer-Encoding: 7bit User-Agent: KMail/1.5.9 cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 16 Aug 2004 23:08:26 -0000 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. This is what I currently do with slapd, but this approach has multiple problems: - it violates the law that packages have to be PREFIX-clean, which has some very unfortunate consequences from a packaging point of view. - mergemaster barfs ever time (PR 64476) - you can not be sure that the script is not started before the needed filesystems are available. > 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. No, my patch simply start from the beginning, leaving out every script that has already been executed. The worst thing that may happen is that a script may be executed too late, which should be ok (call it a wrong dependency in that case). So this is not a problem. > 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. As written above: already solved. > 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. As stated above: you violate PREFIX with that, which makes it a bad hack. > 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. There is no compelling reason *not* to let ports script participate in rcorder(8). > 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 Hmmm.... I believe this list is not complete, besides it looks like a maintainance nightmare. -Oliver From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 08:08:15 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A9DB916A4CE; Tue, 17 Aug 2004 08:08:15 +0000 (GMT) Received: from miranda.expro.pl (mail2.expro.pl [193.25.166.6]) by mx1.FreeBSD.org (Postfix) with ESMTP id 15F1E43D1F; Tue, 17 Aug 2004 08:08:15 +0000 (GMT) (envelope-from winfried@miranda.expro.pl) Received: by miranda.expro.pl (Postfix, from userid 1001) id 66F8A153B3; Tue, 17 Aug 2004 10:08:12 +0200 (CEST) Date: Tue, 17 Aug 2004 10:08:12 +0200 From: Jan Srzednicki To: Oliver Eikemeier Message-ID: <20040817080812.GF37212@miranda.expro.pl> References: <20040816155653.GA2405@rogue.acs-et.com> <6B9BDB86-EFD9-11D8-924A-00039312D914@fillmore-labs.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6B9BDB86-EFD9-11D8-924A-00039312D914@fillmore-labs.com> User-Agent: Mutt/1.5.6i cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 08:08:15 -0000 On Tue, Aug 17, 2004 at 01:10:09AM +0200, Oliver Eikemeier wrote: > 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. > > This is what I currently do with slapd, but this approach has multiple > problems: > > - it violates the law that packages have to be PREFIX-clean, which has > some very unfortunate consequences from a packaging point of view. Indeed, unfortunately. > - mergemaster barfs ever time (PR 64476) That's why my suggestion would be: /etc/rc.d/local/ (or /etc/rc.d/ports/, or whatever you want to call it). In this way you can easily separate both directories, and as new-style ports rc-scripts have to be placed in the new location, there is absolutely no confusion about them. Old scripts in /usr/local/etc/rc.d would be run with localpkg as they have been before. > - you can not be sure that the script is not started before the needed > filesystems are available. And what if I'd like to make a port that is just a script that makes something in the base system, before mountcritical stuff or whatever? If a script requires all mounts to be done, it REQUIREs them. If a port maintainer breaks his script, that'd be his own fault. The point is, that rcorder(8) would read and sort both directories in just one step. It doesn't have to enforce any artificial requirements for the ports directory, it just goes as it should. And /etc/rc.d/localpkg works as it doas. It's all a bit code aesthetics, but I think this one is the cleanest. The only hack that needs to be done is to specify /etc/rc.d/local/ in bsd.port.mk, so that noone will complain about the broken PREFIX. This would probably require some new variable, which would add the thing to the already generated package-list and include it in the port's data (so, no changes to the portdir/pkg-plist, just a change in making the real package's filelist). I hope that wasn't too much bikeshed. ;) greets, -- Jan 'wrzask' Srzednicki w@expro.pl From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 15:09:47 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2742716A4CE for ; Tue, 17 Aug 2004 15:09:47 +0000 (GMT) Received: from mproxy.gmail.com (rproxy.gmail.com [64.233.170.201]) by mx1.FreeBSD.org (Postfix) with ESMTP id C56E543D1F for ; Tue, 17 Aug 2004 15:09:46 +0000 (GMT) (envelope-from swhetzel@gmail.com) Received: by mproxy.gmail.com with SMTP id 77so111388rnl for ; Tue, 17 Aug 2004 08:09:26 -0700 (PDT) Received: by 10.38.79.23 with SMTP id c23mr65935rnb; Tue, 17 Aug 2004 08:09:25 -0700 (PDT) Message-ID: <790a9fff0408170809f006b57@mail.gmail.com> Date: Tue, 17 Aug 2004 10:09:25 -0500 From: Scot Hetzel To: Jan Srzednicki In-Reply-To: <20040817080812.GF37212@miranda.expro.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit References: <20040816155653.GA2405@rogue.acs-et.com> <20040817080812.GF37212@miranda.expro.pl> cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Scot Hetzel List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 15:09:47 -0000 On Tue, 17 Aug 2004 10:08:12 +0200, Jan Srzednicki wrote: > On Tue, Aug 17, 2004 at 01:10:09AM +0200, Oliver Eikemeier wrote: > > 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. > > > > This is what I currently do with slapd, but this approach has multiple > > problems: > > > > - it violates the law that packages have to be PREFIX-clean, which has > > some very unfortunate consequences from a packaging point of view. > > Indeed, unfortunately. > > > - mergemaster barfs ever time (PR 64476) > > That's why my suggestion would be: /etc/rc.d/local/ (or > /etc/rc.d/ports/, or whatever you want to call it). In this way you can > easily separate both directories, and as new-style ports rc-scripts have > to be placed in the new location, there is absolutely no confusion about > them. Old scripts in /usr/local/etc/rc.d would be run with localpkg as > they have been before. > Except this breaks for people who are NFS mounting /usr/local from another machine, as the startup scripts are on the machine where the port was originally installed, instead on in local/etc/rc.d. Which is one of the purposes of putting them into local/etc/rc.d in the first place. Scot From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 15:59:03 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7CD3D16A4CE; Tue, 17 Aug 2004 15:59:03 +0000 (GMT) Received: from miranda.expro.pl (mail2.expro.pl [193.25.166.6]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3816443D49; Tue, 17 Aug 2004 15:59:01 +0000 (GMT) (envelope-from winfried@miranda.expro.pl) Received: by miranda.expro.pl (Postfix, from userid 1001) id 96102153DB; Tue, 17 Aug 2004 17:58:56 +0200 (CEST) Date: Tue, 17 Aug 2004 17:58:56 +0200 From: Jan Srzednicki To: Scot Hetzel Message-ID: <20040817155856.GA28897@miranda.expro.pl> References: <20040816155653.GA2405@rogue.acs-et.com> <20040817080812.GF37212@miranda.expro.pl> <790a9fff0408170809f006b57@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <790a9fff0408170809f006b57@mail.gmail.com> User-Agent: Mutt/1.5.6i cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 15:59:03 -0000 On Tue, Aug 17, 2004 at 10:09:25AM -0500, Scot Hetzel wrote: > On Tue, 17 Aug 2004 10:08:12 +0200, Jan Srzednicki wrote: > > > > That's why my suggestion would be: /etc/rc.d/local/ (or > > /etc/rc.d/ports/, or whatever you want to call it). In this way you can > > easily separate both directories, and as new-style ports rc-scripts have > > to be placed in the new location, there is absolutely no confusion about > > them. Old scripts in /usr/local/etc/rc.d would be run with localpkg as > > they have been before. > > > Except this breaks for people who are NFS mounting /usr/local from > another machine, as the startup scripts are on the machine where the > port was originally installed, instead on in local/etc/rc.d. Which is > one of the purposes of putting them into local/etc/rc.d in the first > place. That can easily be fixed by a global make option (in /etc/make.conf) that would not install anything in /etc/rc.d/local/ and use old-style /usr/local/etc/rc.d, even if the system supports /etc/rc.d/local/. So it brings us to two make options - INSTALL_RCD and IGNORE_INSTALL_RCD (just a naming suggestion). /etc/rc.d/localpkg won't go away, so this seems to me to be a good solution. -- Jan 'wrzask' Srzednicki w@expro.pl From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 17:20:13 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DF48916A4CE for ; Tue, 17 Aug 2004 17:20:13 +0000 (GMT) Received: from mproxy.gmail.com (rproxy.gmail.com [64.233.170.206]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8736D43D45 for ; Tue, 17 Aug 2004 17:20:13 +0000 (GMT) (envelope-from swhetzel@gmail.com) Received: by mproxy.gmail.com with SMTP id 77so116000rnl for ; Tue, 17 Aug 2004 10:20:06 -0700 (PDT) Received: by 10.38.126.73 with SMTP id y73mr106769rnc; Tue, 17 Aug 2004 10:20:06 -0700 (PDT) Message-ID: <790a9fff04081710207a373e03@mail.gmail.com> Date: Tue, 17 Aug 2004 12:20:06 -0500 From: Scot Hetzel To: Jan Srzednicki In-Reply-To: <20040817155856.GA28897@miranda.expro.pl> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit References: <20040816155653.GA2405@rogue.acs-et.com> <20040817080812.GF37212@miranda.expro.pl> <790a9fff0408170809f006b57@mail.gmail.com> <20040817155856.GA28897@miranda.expro.pl> cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Scot Hetzel List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 17:20:14 -0000 On Tue, 17 Aug 2004 17:58:56 +0200, Jan Srzednicki wrote: > > > On Tue, Aug 17, 2004 at 10:09:25AM -0500, Scot Hetzel wrote: > > On Tue, 17 Aug 2004 10:08:12 +0200, Jan Srzednicki wrote: > > > > > > That's why my suggestion would be: /etc/rc.d/local/ (or > > > /etc/rc.d/ports/, or whatever you want to call it). In this way you can > > > easily separate both directories, and as new-style ports rc-scripts have > > > to be placed in the new location, there is absolutely no confusion about > > > them. Old scripts in /usr/local/etc/rc.d would be run with localpkg as > > > they have been before. > > > > > Except this breaks for people who are NFS mounting /usr/local from > > another machine, as the startup scripts are on the machine where the > > port was originally installed, instead on in local/etc/rc.d. Which is > > one of the purposes of putting them into local/etc/rc.d in the first > > place. > > That can easily be fixed by a global make option (in /etc/make.conf) > that would not install anything in /etc/rc.d/local/ and use old-style > /usr/local/etc/rc.d, even if the system supports /etc/rc.d/local/. So it > brings us to two make options - INSTALL_RCD and IGNORE_INSTALL_RCD (just > a naming suggestion). /etc/rc.d/localpkg won't go away, so this seems to > me to be a good solution. > There is still no need to have the ports system install the startup scripts into /etc/rc.d/ or /etc/rc.d/local. If you have a look at the NetBSD ports startup scripts, at the top of each script is a comment that says to move the file.sh to /etc/rc.d/file, if you wish to have them participate in rcorder. It is best to leave the moving of these scripts up to the individual administrator. From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 21:58:15 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1FF2A16A4CE; Tue, 17 Aug 2004 21:58:15 +0000 (GMT) Received: from postal3.es.net (postal3.es.net [198.128.3.207]) by mx1.FreeBSD.org (Postfix) with ESMTP id F417C43D41; Tue, 17 Aug 2004 21:58:14 +0000 (GMT) (envelope-from oberman@es.net) Received: from ptavv.es.net ([198.128.4.29]) by postal3.es.net (Postal Node 3) with ESMTP (SSL) id IBA74465; Tue, 17 Aug 2004 14:58:14 -0700 Received: from ptavv (localhost [127.0.0.1]) by ptavv.es.net (Tachyon Server) with ESMTP id 7CA575D04; Tue, 17 Aug 2004 14:58:14 -0700 (PDT) To: Scot Hetzel In-reply-to: Your message of "Tue, 17 Aug 2004 12:20:06 CDT." <790a9fff04081710207a373e03@mail.gmail.com> Date: Tue, 17 Aug 2004 14:58:14 -0700 From: "Kevin Oberman" Message-Id: <20040817215814.7CA575D04@ptavv.es.net> cc: Jan Srzednicki cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 21:58:15 -0000 > Date: Tue, 17 Aug 2004 12:20:06 -0500 > From: Scot Hetzel > Sender: owner-freebsd-current@freebsd.org > > On Tue, 17 Aug 2004 17:58:56 +0200, Jan Srzednicki wrote: > > > > > > On Tue, Aug 17, 2004 at 10:09:25AM -0500, Scot Hetzel wrote: > > > On Tue, 17 Aug 2004 10:08:12 +0200, Jan Srzednicki wrote: > > > > > > > > That's why my suggestion would be: /etc/rc.d/local/ (or > > > > /etc/rc.d/ports/, or whatever you want to call it). In this way you can > > > > easily separate both directories, and as new-style ports rc-scripts have > > > > to be placed in the new location, there is absolutely no confusion about > > > > them. Old scripts in /usr/local/etc/rc.d would be run with localpkg as > > > > they have been before. > > > > > > > Except this breaks for people who are NFS mounting /usr/local from > > > another machine, as the startup scripts are on the machine where the > > > port was originally installed, instead on in local/etc/rc.d. Which is > > > one of the purposes of putting them into local/etc/rc.d in the first > > > place. > > > > That can easily be fixed by a global make option (in /etc/make.conf) > > that would not install anything in /etc/rc.d/local/ and use old-style > > /usr/local/etc/rc.d, even if the system supports /etc/rc.d/local/. So it > > brings us to two make options - INSTALL_RCD and IGNORE_INSTALL_RCD (just > > a naming suggestion). /etc/rc.d/localpkg won't go away, so this seems to > > me to be a good solution. > > > There is still no need to have the ports system install the startup > scripts into /etc/rc.d/ or /etc/rc.d/local. If you have a look at the > NetBSD ports startup scripts, at the top of each script is a comment > that says to move the file.sh to /etc/rc.d/file, if you wish to have > them participate in rcorder. > > It is best to leave the moving of these scripts up to the individual > administrator. Only if mergemaster is fixed! -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 22:24:28 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 607C116A4CF for ; Tue, 17 Aug 2004 22:24:28 +0000 (GMT) Received: from mproxy.gmail.com (rproxy.gmail.com [64.233.170.203]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0C39C43D45 for ; Tue, 17 Aug 2004 22:24:28 +0000 (GMT) (envelope-from swhetzel@gmail.com) Received: by mproxy.gmail.com with SMTP id 77so126144rnl for ; Tue, 17 Aug 2004 15:24:27 -0700 (PDT) Received: by 10.38.126.73 with SMTP id y73mr198275rnc; Tue, 17 Aug 2004 15:24:27 -0700 (PDT) Message-ID: <790a9fff04081715243288f5b0@mail.gmail.com> Date: Tue, 17 Aug 2004 17:24:27 -0500 From: Scot Hetzel To: Kevin Oberman In-Reply-To: <20040817215814.7CA575D04@ptavv.es.net> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit References: <20040817215814.7CA575D04@ptavv.es.net> cc: Jan Srzednicki cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Scot Hetzel List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 22:24:28 -0000 On Tue, 17 Aug 2004 14:58:14 -0700, Kevin Oberman wrote: > > It is best to leave the moving of these scripts up to the individual > > administrator. > > Only if mergemaster is fixed! > This could be fixed by adding: # KEYWORD: FreeBSD PORT to each startup script. Then making mergemaster ignore any script that has PORT in the KEYWORD line. Scot From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 22:33:36 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9629D16A4CE; Tue, 17 Aug 2004 22:33:36 +0000 (GMT) Received: from postal2.es.net (postal2.es.net [198.128.3.206]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7D70443D1D; Tue, 17 Aug 2004 22:33:36 +0000 (GMT) (envelope-from oberman@es.net) Received: from ptavv.es.net ([198.128.4.29]) by postal2.es.net (Postal Node 2) with ESMTP (SSL) id IBA74465; Tue, 17 Aug 2004 15:33:36 -0700 Received: from ptavv (localhost [127.0.0.1]) by ptavv.es.net (Tachyon Server) with ESMTP id F2E3B5D04; Tue, 17 Aug 2004 15:33:35 -0700 (PDT) To: Scot Hetzel In-reply-to: Your message of "Tue, 17 Aug 2004 17:24:27 CDT." <790a9fff04081715243288f5b0@mail.gmail.com> Date: Tue, 17 Aug 2004 15:33:35 -0700 From: "Kevin Oberman" Message-Id: <20040817223335.F2E3B5D04@ptavv.es.net> cc: Jan Srzednicki cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 22:33:36 -0000 > Date: Tue, 17 Aug 2004 17:24:27 -0500 > From: Scot Hetzel > > On Tue, 17 Aug 2004 14:58:14 -0700, Kevin Oberman wrote: > > > It is best to leave the moving of these scripts up to the individual > > > administrator. > > > > Only if mergemaster is fixed! > > > This could be fixed by adding: > > # KEYWORD: FreeBSD PORT > > to each startup script. Then making mergemaster ignore any script > that has PORT in the KEYWORD line. Yes, this would work, although I would prefer: # KEYWORD: FreeBSD USER since some systems might want to add scripts to rc.local that are not from ports. -- R. Kevin Oberman, Network Engineer Energy Sciences Network (ESnet) Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab) E-mail: oberman@es.net Phone: +1 510 486-8634 From owner-freebsd-rc@FreeBSD.ORG Tue Aug 17 22:38:15 2004 Return-Path: Delivered-To: freebsd-rc@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1745216A4CF for ; Tue, 17 Aug 2004 22:38:15 +0000 (GMT) Received: from mproxy.gmail.com (rproxy.gmail.com [64.233.170.205]) by mx1.FreeBSD.org (Postfix) with ESMTP id B4E4243D3F for ; Tue, 17 Aug 2004 22:38:14 +0000 (GMT) (envelope-from swhetzel@gmail.com) Received: by mproxy.gmail.com with SMTP id 77so217628rnk for ; Tue, 17 Aug 2004 15:38:04 -0700 (PDT) Received: by 10.38.14.76 with SMTP id 76mr194834rnn; Tue, 17 Aug 2004 15:38:03 -0700 (PDT) Message-ID: <790a9fff04081715382b449355@mail.gmail.com> Date: Tue, 17 Aug 2004 17:38:03 -0500 From: Scot Hetzel To: Kevin Oberman In-Reply-To: <20040817223335.F2E3B5D04@ptavv.es.net> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit References: <20040817223335.F2E3B5D04@ptavv.es.net> cc: Jan Srzednicki cc: freebsd-rc@freebsd.org cc: current@freebsd.org Subject: Re: Re: RFC: Alternate patch to have true new-style rc.d scripts in ports (without touching localpkg) X-BeenThere: freebsd-rc@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: Scot Hetzel List-Id: Discussion related to /etc/rc.d design and implementation. List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 17 Aug 2004 22:38:15 -0000 On Tue, 17 Aug 2004 15:33:35 -0700, Kevin Oberman wrote: > > Date: Tue, 17 Aug 2004 17:24:27 -0500 > > From: Scot Hetzel > > > > > > On Tue, 17 Aug 2004 14:58:14 -0700, Kevin Oberman wrote: > > > > It is best to leave the moving of these scripts up to the individual > > > > administrator. > > > > > > Only if mergemaster is fixed! > > > > > This could be fixed by adding: > > > > # KEYWORD: FreeBSD PORT > > > > to each startup script. Then making mergemaster ignore any script > > that has PORT in the KEYWORD line. > > Yes, this would work, although I would prefer: > # KEYWORD: FreeBSD USER > since some systems might want to add scripts to rc.local that are not > from ports. > Another option is to use: # KEYWORD: FreeBSD SYSTEM for system startup scripts and only have mergemaster look at scripts with SYSTEM as KEYWORD. Scot