Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 08 Jun 2014 21:25:06 +0100
From:      Matthew Seaman <matthew@FreeBSD.org>
To:        freebsd-ports@freebsd.org
Subject:   Re: How are ports built now
Message-ID:  <5394C6A2.3080802@FreeBSD.org>
In-Reply-To: <F56C5A11AEC7DEB52D196A24@Pauls-MacBook-Pro.local>
References:  <FF2053FA1B75B463D14C7152@Pauls-MacBook-Pro.local> <20140607202241.GA59544@spectrum.skysmurf.nl> <F15EFF113780A8A629B44407@Pauls-MacBook-Pro.local> <53938114.9060303@gmx.de> <BC88D0CCB9E6BF97D053661F@Pauls-MacBook-Pro.local> <5394837D.80901@gmail.com> <DA290E6DF4F0C04D8CDABC77@Pauls-MacBook-Pro.local> <alpine.BSF.2.00.1406081031580.10900@wonkity.com> <F56C5A11AEC7DEB52D196A24@Pauls-MacBook-Pro.local>

next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--t4DD6xU56206jKJQmP0gEekCfnwuL3auG
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

On 08/06/2014 17:54, Paul Schmehl wrote:
> It seems like a completely unworkable solution to me.  For example, say=

> you have a port with 10 options.  Imagine how many different binaries
> you would have to have to cover every possible combination of selected
> options.  It would take a huge amount of storage

Yes.  You're absolutely right -- there is a combinatorial problem with
port options.  However there are three things that will help:

  * Sub packages.  Many option settings just add some extra files to a
    or data package.  With the plan to create sub packages -- ie.
    dividing up the files from a single software compilation into more
    than one binary package -- a significant proportion of that goes
    away.

  * The realization that we really don't need to build packages for all
    different possible combinations of options.  Some option sets
    simply don't work.  Others are for features that only a tiny
    minority of people would ever want.

  * The ports isn't going away.  If you need a special set of options
    for a particular port, then you will still have the choice of
    building from source via the ports.   Unlike many other packaging
    systems, the results of doing this will still be completely
    integrated with the packaging system, and you will be able to mix
    and match ports you compile yourself with binary packages from the
    repositories.

Hopefully the necessity of adopting the third option can be minimized,
although nothing is going to stop you doing that should you simply
prefer to do so.

Staging is one of the big pieces necessary to make this all work.  It
also has the interesting side effect that since everything is built as a
package it makes it quite natural to build your own package sets and set
up a package repository.

If you've got more than one FreeBSD system to manage[*], then I can
heartily recommend setting up a package building system and package
repository.  It's like night and day: you build off-line at your leisure
in a clean environment with no fuss and no worries if things don't work
entirely right first time -- you haven't affected anything of
consequence, so you can just fix the problem and try again without
downtime on important services.  You can install exactly the software
you'll be using on a test system and run it though all the QA you could
want before deploying it live.  The when it comes to doing the actually
installation of packages on your live systems it takes only seconds of
disruption, and you're done.  poudriere(8) + pkg(8) really is the
winning combination.

	Cheers,

	Matthew

[*] Or even if you only have just the one.


--=20
Dr Matthew J Seaman MA, D.Phil.
PGP: http://www.infracaninophile.co.uk/pgpkey



--t4DD6xU56206jKJQmP0gEekCfnwuL3auG
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.20 (Darwin)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQJ8BAEBCgBmBQJTlMasXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2NTNBNjhCOTEzQTRFNkNGM0UxRTEzMjZC
QjIzQUY1MThFMUE0MDEzAAoJELsjr1GOGkAT5d8QAJzs/KePQftxlHd1/MxmnSRG
kwen/zY1MoZyJHdZe9FcMCh3dWq78lM7+KQWJ8p46h/4AB9jPsxM2yYhNMk2AdEF
BpliAC+wxR74Widq25+X8YncQGXZYeQEwmvG6P1Uf2++HmjYiATx+mLjureenrhc
usbIlIubaC1HoBZh1CkSz20NcSl90TZWlmbX0GYXhu6BMm8br9SxnmKb/z81RFXa
fB0PuFlN650gcapYtOaD2x0+pvpZ/VVkpVxjhYjErRkpM+tQfZMV9PUB75p0jO/n
tL03oDCzzAmc50WeXbKSeP/B3Y85ilcwbZLgef3sMAQrUlMK/+IsGK1jmYaYS08t
3qYfh8kDTVnbP6Vc35mKh+9GqMDRSCWqUrZD6jLTyawNUXhCGlDH+CRhDjKwQn12
kmwwGup4SXcrEuy2o42/FQkhP5ybRYFMy3BiZif7F2RKZV3chkMmKOFiLS64Yix8
4Gte8bRb3AytC2ngZnANvyCLDSvF/vboJCgLlwt1qmhZk1JK2i0/3AO94SmvlQ3G
NNkJ/LU2Kwvlax+VdeHBJBQnBfSPHjTwtPdWsr/w9v6ebUEqOxx86bRKDfSGFL8e
JsIH+yDks1rXfmcL5XLLqk5LUEnh09R8vE+iFzeZZGMfHNgup2t3MCbUKA/k9vnt
3llGiBfO8C4mYtfC+4w+
=TRbL
-----END PGP SIGNATURE-----

--t4DD6xU56206jKJQmP0gEekCfnwuL3auG--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5394C6A2.3080802>