From owner-freebsd-pkg@FreeBSD.ORG Tue Jul 16 11:00:02 2013 Return-Path: Delivered-To: freebsd-pkg@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 88E526AB for ; Tue, 16 Jul 2013 11:00:02 +0000 (UTC) (envelope-from florent@peterschmitt.fr) Received: from peterschmitt.fr (peterschmitt.fr [5.135.177.31]) by mx1.freebsd.org (Postfix) with ESMTP id 240B0D9B for ; Tue, 16 Jul 2013 11:00:01 +0000 (UTC) Received: from localhost.localdomain (4ab54-4-88-163-248-31.fbx.proxad.net [88.163.248.31]) by peterschmitt.fr (Postfix) with ESMTPSA id A461C794B for ; Tue, 16 Jul 2013 12:59:57 +0200 (CEST) Message-ID: <51E527A5.9090604@peterschmitt.fr> Date: Tue, 16 Jul 2013 12:59:49 +0200 From: Florent Peterschmitt User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 MIME-Version: 1.0 To: freebsd-pkg@freebsd.org Subject: Re: Distribute FreeBSD via packages instead of "global" tarballs References: <51E165F2.20801@peterschmitt.fr> <51E1879B.7050300@FreeBSD.org> In-Reply-To: <51E1879B.7050300@FreeBSD.org> X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="----enig2XHKTQSMBKHGWBQLMDODC" X-BeenThere: freebsd-pkg@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Binary package management and package tools discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Jul 2013 11:00:02 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2XHKTQSMBKHGWBQLMDODC Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Le 13/07/2013 19:00, Matthew Seaman a =E9crit : > On 13/07/2013 15:36, Florent Peterschmitt wrote: >> Is it possible to package FreeBSD distribution under little packages, >> aiming easy and small upgrades ? >> >> Or this has already been thought ? >=20 > This is certainly technically possible, and it's something there's been= > occasional speculation about; but as far as I know, no one has yet come= > up with a demonstration setup. >=20 > There are a number of practical problems that would need sorting out --= >=20 > * pkg isn't part of the base system -- by design -- which makes it > tricky to use to register installing base system components on a > bare metal system. But it will be in FreeBSD 10 ? > * Similarly, pkg pretty much ignores the facilities and shared > libraries from base when calculating dependencies and so forth for= > ports. If base is pkg-ised, should that still be the case? Hum. It will be a lot of work to turn the base system in a port-like way. Maybe it would be simpler to have some "diff" packages, a bit like freebsd-update does but with pkg. > * Given that the base system is divided up into numerous smaller > packages, should those packages be registered in the same database= > as is used for ports? (ie. /var/db/pkg/local.sqlite) Certainly not. If an rm -rf /usr/local/* /var/db/pkg/local.sqlite can clean up the system of every third-party software, base components doesn't have their place with them. *BSD always separate base from the rest, why this should change here ? > Packaging the base system is an idea that has been floating around for = a > long time -- since long before pkg was conceived, certainly. But it ha= s > never really gone anywhere. Using pkg for the job would have some > advantages over trying to do the same thing with the old pkg_tools, but= > would it ultimately be competitive with the way the installation media > works now or to freebsd-update(8)? In never used freebsd-update between more than one version. For examble I never tried going from 8.0 to 9.1. I let me told that freebsd-update must go through each version to finally upgrade to the version we want. If that's true, packaging the base would avoid this behavior, make thing simpler for users (of course not for packaging :-) ) and surely faster. > Cheers, >=20 > Matthew --=20 Florent Peterschmitt | Please: florent@peterschmitt.fr | * Avoid HTML/RTF in E-mail. +33 (0)6 64 33 97 92 | * Send PDF for documents. http://florent.peterschmitt.fr | Thank you :) ------enig2XHKTQSMBKHGWBQLMDODC Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.13 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJR5SeoAAoJEMtO2Sol0IImpQQH/0JMatuLh1XO24VQkatw9Y0M nIoIulPkVnKNiSwIxGl1EdS5v3LybBR/QGVTowDetbvU7rI3ZpK/D3Xfz3ZqSh57 Ug+OqUlgbfXiR+FBn91ON+u+Ug6KqhT+4PdZi+MMEKHElLHZKS/EgmU4vVy16ZEz BBgZ15aRu2Dx0k8Vo1rm1bBKsNt+DBgMysITrm4+I+3EVZ7zRuPXx62znqMriftg zY6pp/bHI/wDYvKywJDCDtnVB76BgT4/KtoUM1k4K3kStSwdlpLqeSlDfx27Qgwl 2qAmCevpYNoa1vxgpSo19efqbKvNKL7GMCqt2wwQEIFiL4+cg+n7bZU5t2NJY7Q= =Nc03 -----END PGP SIGNATURE----- ------enig2XHKTQSMBKHGWBQLMDODC-- From owner-freebsd-pkg@FreeBSD.ORG Tue Jul 16 11:27:26 2013 Return-Path: Delivered-To: freebsd-pkg@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id CFEF5E8A for ; Tue, 16 Jul 2013 11:27:26 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (smtp6.infracaninophile.co.uk [IPv6:2001:8b0:151:1:3cd3:cd67:fafa:3d78]) by mx1.freebsd.org (Postfix) with ESMTP id 40127ED9 for ; Tue, 16 Jul 2013 11:27:26 +0000 (UTC) Received: from rufus.webfusion.com (mail.heartinternet.co.uk [79.170.40.31]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.7/8.14.7) with ESMTP id r6GBRKAj060415 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO) for ; Tue, 16 Jul 2013 12:27:21 +0100 (BST) (envelope-from m.seaman@infracaninophile.co.uk) DKIM-Filter: OpenDKIM Filter v2.8.3 smtp.infracaninophile.co.uk r6GBRKAj060415 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=infracaninophile.co.uk; s=201001-infracaninophile; t=1373974041; bh=Pxw8AtZp0eSMyQHwO7/YAkHPSs7EsPIQPvmfen8F6oc=; h=Date:From:To:Subject:References:In-Reply-To; z=Date:=20Tue,=2016=20Jul=202013=2012:27:20=20+0100|From:=20Matthew =20Seaman=20|To:=20freebsd-pkg@fr eebsd.org|Subject:=20Re:=20Distribute=20FreeBSD=20via=20packages=2 0instead=20of=20"global"=20tarballs|References:=20<51E165F2.20801@ peterschmitt.fr>=20<51E1879B.7050300@FreeBSD.org>=20<51E527A5.9090 604@peterschmitt.fr>|In-Reply-To:=20<51E527A5.9090604@peterschmitt .fr>; b=e8CuwU1G8J+CHCSOKtx2NIT552EAEOMw8LfF8TCFsyYFIyX9i8j6Dmk2AwyswPunQ NCeBrdxIFD/jj9hlaYGlEp+Q6Uzrz/mtKA0i/eUvkSzrqw+Np6Cxa2PBDHYw3v5XZM AgWxaJKwOivtyesVnL1UOYxb867IPatRuGTvUO+w= X-Authentication-Warning: lucid-nonsense.infracaninophile.co.uk: Host mail.heartinternet.co.uk [79.170.40.31] claimed to be rufus.webfusion.com Message-ID: <51E52E18.6040605@infracaninophile.co.uk> Date: Tue, 16 Jul 2013 12:27:20 +0100 From: Matthew Seaman Organization: Infracaninophile User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130701 Thunderbird/17.0.7 MIME-Version: 1.0 To: freebsd-pkg@freebsd.org Subject: Re: Distribute FreeBSD via packages instead of "global" tarballs References: <51E165F2.20801@peterschmitt.fr> <51E1879B.7050300@FreeBSD.org> <51E527A5.9090604@peterschmitt.fr> In-Reply-To: <51E527A5.9090604@peterschmitt.fr> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Virus-Scanned: clamav-milter 0.97.8 at lucid-nonsense.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,RCVD_IN_DNSWL_NONE,SPF_FAIL autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on lucid-nonsense.infracaninophile.co.uk X-BeenThere: freebsd-pkg@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Binary package management and package tools discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Jul 2013 11:27:26 -0000 On 16/07/2013 11:59, Florent Peterschmitt wrote: > Le 13/07/2013 19:00, Matthew Seaman a écrit : >> On 13/07/2013 15:36, Florent Peterschmitt wrote: >>> Is it possible to package FreeBSD distribution under little packages, >>> aiming easy and small upgrades ? >>> >>> Or this has already been thought ? >> >> This is certainly technically possible, and it's something there's been >> occasional speculation about; but as far as I know, no one has yet come >> up with a demonstration setup. >> >> There are a number of practical problems that would need sorting out -- >> >> * pkg isn't part of the base system -- by design -- which makes it >> tricky to use to register installing base system components on a >> bare metal system. > > But it will be in FreeBSD 10 ? No. pkg is the default packaging system in FreeBSD 10, but it isn't part of the base system. Think of it as a ports component, rather than a base system component. Of course, that design decision was made given the assumption that the only thing pkg would be used for is managing add-on packages; ie. stuff that by definition is not in base. Doesn't preclude using it for base, but, like I said, a bit trickier to deal with. >> * Similarly, pkg pretty much ignores the facilities and shared >> libraries from base when calculating dependencies and so forth for >> ports. If base is pkg-ised, should that still be the case? > > Hum. It will be a lot of work to turn the base system in a port-like > way. Maybe it would be simpler to have some "diff" packages, a bit like > freebsd-update does but with pkg. Well, we are working towards a generic 'provides/requires/conflicts' dependency scheme. Base system packages could just provide a symbolic 'FreeBSD-10.0-base' token that ports packages could require. Actually, that's quite an interesting idea even if we don't supply the base system as a bunch of pkgs. Hmmm.... >> * Given that the base system is divided up into numerous smaller >> packages, should those packages be registered in the same database >> as is used for ports? (ie. /var/db/pkg/local.sqlite) > > Certainly not. If an rm -rf /usr/local/* /var/db/pkg/local.sqlite can > clean up the system of every third-party software, base components > doesn't have their place with them. *BSD always separate base from the > rest, why this should change here ? Well, having the 'provides/requires/conflicts' dependency stuff all registered in the same database makes using the package solver against dependency trees using base system components workable without any faffing around. Straight up deletion of /var/db/pkg/local.sqlite is certainly not recommended as a routine procedure in any case: 'pkg delete -fa' is much better. Pursuing the logic of this: we'd probably have a flag in the DB to identify base system packages and so be able to treat them differently to regular packages. >> Packaging the base system is an idea that has been floating around for a >> long time -- since long before pkg was conceived, certainly. But it has >> never really gone anywhere. Using pkg for the job would have some >> advantages over trying to do the same thing with the old pkg_tools, but >> would it ultimately be competitive with the way the installation media >> works now or to freebsd-update(8)? > > In never used freebsd-update between more than one version. For examble > I never tried going from 8.0 to 9.1. I let me told that freebsd-update > must go through each version to finally upgrade to the version we want. > If that's true, packaging the base would avoid this behavior, make thing > simpler for users (of course not for packaging :-) ) and surely faster. True, true. All pkg is, ultimately, is a tool for managing various collections of files efficiently, and it could do that for any collection of files you care to imagine. Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. PGP: http://www.infracaninophile.co.uk/pgpkey JID: matthew@infracaninophile.co.uk