[CFT] packaging the base system with pkg(8)
Matthew Seaman
matthew at FreeBSD.org
Sun Mar 6 21:52:21 UTC 2016
On 06/03/2016 20:54, Glen Barber wrote:
> Meta packages are still being thought out, and not yet implemented. The
> problem I ran into last time I tried creating a meta package including
> the minimal set of packages required (FreeBSD-runtime, FreeBSD-kernel
> and FreeBSD-clibs) was that I could not see a way to update one of them
> without adversely affecting behavior. If I recall correctly, updating
> the PKG_VERSION for FreeBSD-runtime (to see what would happen when
> issuing an EN or SA) propagated "what was to be upgraded" in a way I did
> not expect, so all packages part of the meta package were updated. That
> is, if I recall correctly.
That sounds like the baked-in version problem -- which is a holdover
from the way the old pkg_tools worked: when you create a package it
requires exactly the specific version of each of the dependencies it was
built against. Or, more colourfully, exact version dependencies are
"baked into" each package.
So when you build a complete new set of packages and meta-packages it
would result in a lot of unnecessary updating.
I see two solutions:
1) When updating the base package repo by 'make packages' only those
packages affected by actual changes to their source code are rebuilt.
Or, at least, only those affected packages get a version number bump.
2) We need packages to be able to express dependencies against a range
of different versions, which should give sufficient flexibility to be
able to update one package a meta package depends on, without needing to
touch the rest, or the meta package itself.
ie. when you install 11.0-RELEASE, the meta packages can depend on real
packages of versions >=11.0.0,<12.0.0 so they'll be satisfied by
anything from the 11.X-RELEASE-pY series.[*]
Cheers,
Matthew
[*] Maybe we could switch to calling release versions 11.X.Y and save
some typing...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 931 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-pkgbase/attachments/20160306/926adb14/attachment.sig>
More information about the freebsd-pkgbase
mailing list