From owner-cvs-src@FreeBSD.ORG Tue Jan 1 09:31:50 2008 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 31E0216A468; Tue, 1 Jan 2008 09:31:50 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id C88E713C468; Tue, 1 Jan 2008 09:31:49 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.1/8.14.1) with ESMTP id m019Vg9E023074; Tue, 1 Jan 2008 02:31:42 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Tue, 01 Jan 2008 02:31:43 -0700 (MST) Message-Id: <20080101.023143.-160243128.imp@bsdimp.com> To: kientzle@freebsd.org From: "M. Warner Losh" In-Reply-To: <4779D924.8020708@freebsd.org> References: <20071231001554.GB987@zaphod.nitro.dk> <20071231.203352.-165197022.imp@bsdimp.com> <4779D924.8020708@freebsd.org> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org, simon@freebsd.org Subject: Re: cvs commit: src/lib/libarchive Makefile archive.h.in archive_entry.c archive_entry.h archive_entry_link_resolver.c archive_entry_private.h archive_entry_strmode.c archive_platform.h archive_read.c archive_read_support_compression_none.c archive_read_support_format_all.c ... X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Jan 2008 09:31:50 -0000 In message: <4779D924.8020708@freebsd.org> Tim Kientzle writes: : M. Warner Losh wrote: : > In message: <20071231001554.GB987@zaphod.nitro.dk> : > "Simon L. Nielsen" writes: : > : > * New read support: mtree format : > : : > : This sounds interesting but I can't really figure out what it : > : does... ? :) (and I couldn't find any mention in the updated manual : > : pages.) : > : > Any chance our 'install' tools can be made to copy the files w/o the : > right permissions and 'log' the right stuff to an mtree formatted : > file? That would make building a distribution as a mere mortal : > possible... : : Yep. ;-) That's a major motivation of this work. : In fact, you don't even need to copy the files : anywhere. The approach I'm considering would : have "make buildworld" write out entries of this : form during the build: : : /bin/ls uid=0 mode=0555 contents=/usr/obj/usr/src/bin/ls : : Then "make installworld" becomes essentially just: : : tar -xUvf world.mtree -C ${DESTDIR} : : or you can create a distribution tarball with: : : tar -czf world.tgz @world.mtree I mostly like this idea, save for one problem: install will strip the symbols from /usr/obj/usr/src/bin/ls before installing it into $DESTDIR/bin/ls. : In particular, I like that this approach uses exactly : the same machinery for local installs or distribution : building, varying only in the very last step. : : The code I just committed to -CURRENT is sufficient to : begin experimenting with this approach; you just need : to be careful to include "#mtree" as the first line : (to please libarchive's auto-format detection). : The use of full pathnames in mtree files is another : idea I copied from the NetBSD folks; I've documented : this as "mtree v2" in the mtree.5 manpage. : : There are still a lot of details to work out, but I : hope this is sufficient for someone else to begin : experimenting with the next step, which is figuring out : the appropriate ways to change our distribution build. Yes. Any ideas how long the experimentation will last? Warner