From owner-freebsd-current@FreeBSD.ORG Mon Jun 14 21:22:41 2010 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6C2E11065672; Mon, 14 Jun 2010 21:22:41 +0000 (UTC) (envelope-from yanefbsd@gmail.com) Received: from mail-yw0-f182.google.com (mail-yw0-f182.google.com [209.85.211.182]) by mx1.freebsd.org (Postfix) with ESMTP id BBCDD8FC14; Mon, 14 Jun 2010 21:22:40 +0000 (UTC) Received: by ywh12 with SMTP id 12so3144623ywh.14 for ; Mon, 14 Jun 2010 14:22:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=AEumJpM6dKr1SwJL0MFsqZ80FD9ks0eVfOs95Sgm22Y=; b=lwAoDnIv1c+eU8ZzFOMJ2jP+rVJzsNBa/f430k8uLbG/wkzXQmTjZL/xN5jViruIHv pcXywOzQY+UwXQGSCvwC1vtIZNwGsbKyD4c0gRLEw0NMzZkR7VTrzL+wco6tyaWRm0ry wUJ6PCZRjypaBdsN5zdtnMkXanjiS76lYWN0U= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=wWmtR0w9S3La6Ne8v/3zjz3J28kjA5orFJH7cOupebaabSq062Bwoio66MpD99vIBL viSrbSyLtgagrxMuAXrCmKqFMQTiebJh1aSXr6GtF4O0fHoLgK1HvDna8LR+dOinSPTM FlVmqb60SDg8Nen893cvJD0WNyS86Q84Vlzjg= MIME-Version: 1.0 Received: by 10.224.57.198 with SMTP id d6mr2539084qah.331.1276550552238; Mon, 14 Jun 2010 14:22:32 -0700 (PDT) Received: by 10.229.80.75 with HTTP; Mon, 14 Jun 2010 14:22:32 -0700 (PDT) In-Reply-To: <201006101346.59824.jhb@freebsd.org> References: <201006101346.59824.jhb@freebsd.org> Date: Mon, 14 Jun 2010 14:22:32 -0700 Message-ID: From: Garrett Cooper To: John Baldwin Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: current@freebsd.org Subject: Re: RFC: etcupdate tool in base? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 21:22:41 -0000 On Thu, Jun 10, 2010 at 10:46 AM, John Baldwin wrote: > I've had several folks ask me recently about importing etcupdate > (http://www.FreeBSD.org/~jhb/etcupdate) into the base system as an altern= ate > tool for updating /etc during upgrades. =A0Do folks have any strong objec= tions > to doing so? =A0More details about how it works and an HTML version of th= e > manpage can be found at the URL above. Finally got around to looking at this. Some comments: 1. Script doesn't check to see whether or not it has write access (and doesn't catch some errors): $ etcupdate mkdir: /var/db/etcupdate: Permission denied /usr/sbin/etcupdate: cannot create /var/db/etcupdate/log: No such file or directory Eventually it stops though, so maybe it's not really a big issue... 2. Some messages are a bit misleading: $ etcupdate /usr/sbin/etcupdate: cannot create /var/db/etcupdate/log: Permission denied $ ls -l /var/db/etcupdate/log -rw-r--r-- 1 root wheel 0 Jun 14 14:06 /var/db/etcupdate/log $ whoami garrcoop 3. Workflow comments. i. Ok... I know I'm doing a downgrade, but what now? $ sudo etcupdate No previous tree to compare against, a sane comparison is not possible. ii. Did a bit more reading, and I think that `etcupdate build' is what I want... but it wasn't happy when I did that: $ sudo etcupdate build Missing required tarball. usage: etcupdate [-nBF] [-d workdir] [-r | -s source | -t tarball] [-A patt= erns] [-D destdir] [-I patterns] [-L logfile] [-M options] etcupdate build [-B] [-d workdir] [-s source] [-L logfile] [-M optio= ns] etcupdate diff [-d workdir] [-D destdir] [-I patterns] [-L logfile] etcupdate extract [-B] [-d workdir] [-s source | -t tarball] [-L log= file] [-M options] etcupdate resolve [-d workdir] [-D destdir] [-L logfile] etcupdate status [-d workdir] So uh... ok? Manpage and usage were a bit confusing (but not too bad). After I fixed my arguments, here's what I came up with: $ sudo etcupdate build -s /data/scratch/src/stable/8/ /root/etcupdate-stable8.tbz $ sudo etcupdate extract -t /root/etcupdate-stable8.tbz $ Wait -- what happened...? What's going on isn't overly apparent from running extract. It's nice having clean utilities, but I'm not used to the etcupdate workflow, so having some verbosity would be helpful :D. Thanks, -Garrett