From owner-freebsd-hackers@FreeBSD.ORG Thu Jun 21 10:22:14 2012 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5F4ED1065670 for ; Thu, 21 Jun 2012 10:22:14 +0000 (UTC) (envelope-from wojtek@wojtek.tensor.gdynia.pl) Received: from wojtek.tensor.gdynia.pl (wojtek.tensor.gdynia.pl [89.206.35.99]) by mx1.freebsd.org (Postfix) with ESMTP id B0B6D8FC12 for ; Thu, 21 Jun 2012 10:22:13 +0000 (UTC) Received: from wojtek.tensor.gdynia.pl (localhost [127.0.0.1]) by wojtek.tensor.gdynia.pl (8.14.5/8.14.5) with ESMTP id q5LAM9fn001812; Thu, 21 Jun 2012 12:22:09 +0200 (CEST) (envelope-from wojtek@wojtek.tensor.gdynia.pl) Received: from localhost (wojtek@localhost) by wojtek.tensor.gdynia.pl (8.14.5/8.14.5/Submit) with ESMTP id q5LAM8U6001809; Thu, 21 Jun 2012 12:22:09 +0200 (CEST) (envelope-from wojtek@wojtek.tensor.gdynia.pl) Date: Thu, 21 Jun 2012 12:22:08 +0200 (CEST) From: Wojciech Puchar To: Peter Jeremy In-Reply-To: <20120620214006.GA1651@aspire.rulingia.com> Message-ID: References: <4FDFB44D.9090308@gentoo.org> <4FE0ADCD.9010109@FreeBSD.org> <4FE0C123.8030301@gentoo.org> <4FE0F773.1080403@gentoo.org> <4FE100F9.2050009@funtoo.org> <20120620073920.GA5300@lonesome.com> <20120620214006.GA1651@aspire.rulingia.com> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.2.7 (wojtek.tensor.gdynia.pl [127.0.0.1]); Thu, 21 Jun 2012 12:22:10 +0200 (CEST) Cc: "freebsd-hackers@freebsd.org" , openrc@gentoo.org Subject: Re: Replacing rc(8) (Was: FreeBSD Boot Times) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 21 Jun 2012 10:22:14 -0000 Lets make a summary. What functionality would be good to have in FreeBSD that doesn't exist: 1) "runlevels" with arbitrary names. runlevel change would start and stop right services. 2) exploit startup parallelism. What we do not want to change: - file structure which is simple. one file in rc.d/ per service and one global config file (rc.conf) - anything else that would make things more complicated. As for 1) i propose in rc.conf an option to put "NO", "YES" (or ALL) or runlevel list for each service or runlevel exclusion list for service. examples: service1_enable="YES" service2_enable="NO" service3_enable="foolevel maintenance" service4_enable="YES -foolevel" (or ALL -funkyrunlevel) name of default runlevel may be "full" or "multiuser" service 1 will always work, service 2 never, service 3 only at runlevels "foolevel" and "maintenance", service4 with any runlevel except "foolevel". still single rc.conf, not much bigger in practice. 2) no change in rc.d/* scripts and rc.conf, but change in scripts. If everyone agree i think i may write this new scripts.