From owner-freebsd-hackers@FreeBSD.ORG Thu Oct 7 13:42:43 2010 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5506E106567A for ; Thu, 7 Oct 2010 13:42:43 +0000 (UTC) (envelope-from wblock@wonkity.com) Received: from wonkity.com (wonkity.com [67.158.26.137]) by mx1.freebsd.org (Postfix) with ESMTP id EDA248FC1C for ; Thu, 7 Oct 2010 13:42:42 +0000 (UTC) Received: from wonkity.com (localhost [127.0.0.1]) by wonkity.com (8.14.4/8.14.4) with ESMTP id o97DggUD003826; Thu, 7 Oct 2010 07:42:42 -0600 (MDT) (envelope-from wblock@wonkity.com) Received: from localhost (wblock@localhost) by wonkity.com (8.14.4/8.14.4/Submit) with ESMTP id o97Dggum003823; Thu, 7 Oct 2010 07:42:42 -0600 (MDT) (envelope-from wblock@wonkity.com) Date: Thu, 7 Oct 2010 07:42:42 -0600 (MDT) From: Warren Block To: "Douglas K. Rand" In-Reply-To: <87fwwici02.wl%rand@meridian-enviro.com> Message-ID: References: <1286397912.27308.40.camel@localhost.localdomain> <51B4504F-5AA4-47C5-BF23-FA51DE5BC8C8@vicor.com> <4CAD513F.3010903@DataIX.net> <4CAD7563.1070706@DataIX.net> <87fwwici02.wl%rand@meridian-enviro.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 IP whitelisted, not delayed by milter-greylist-4.2.6 (wonkity.com [127.0.0.1]); Thu, 07 Oct 2010 07:42:42 -0600 (MDT) Cc: freebsd-hackers@freebsd.org Subject: Re: sysrc -- a sysctl(8)-like utility for managing /etc/rc.conf et. al. 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, 07 Oct 2010 13:42:43 -0000 On Thu, 7 Oct 2010, Douglas K. Rand wrote: > I think that this script might also fill a void with using Puppet as a > configuration tool. Currently Puppet, as its default behaviour, uses > files in /etc/rc.conf.d to set variables. I've found this approach > really lacking because you cannot do things like: > > nfs_server_enable="YES" > > via a /etc/rc.conf.d file because multiple things (like lockd, mountd, > nfsd, nfsserver, and statd) all need nfs_server_enable set, as one > example. This script would provide an easy method for puppet to "edit" > lines in /etc/rc.conf. Consider also the docs that tell the user to echo 'something_enable="YES"' >> /etc/rc.conf which can produce duplicate and possibly differing entries. Or non-working entries if there was no ending \n present, or even a broken rc.conf that breaks startup.