On 8/14/2014 2:38 PM, olli hauer wrote: > On 2014-08-14 17:35, Nathan Whitehorn wrote: >> >> On 08/14/14 08:02, Bryan Drewery wrote: >>> On 5/28/2014 11:54 AM, Nathan Whitehorn wrote: >>>> The current/previous values are also kept so >>>> that the patched pkg can install a package marked either with an x86:64 >>>> or amd64-type architecture ID (symlinks will be needed for a little bit >>>> on the package server to allow both clients to work). Limited testing >>>> suggests it works well -- I can fetch and install packages fine. More >>>> testing would be great. >>> Symlinks are now setup to make testing of this easier. >>> >>> I'll let Bapt signoff on this patch officially and its timeframe. It >>> seems reasonable to me. The use of 'x86' almost caused a regression >>> recently due to its ambiguity. >>> >>> Cheers, >>> Bryan >>> >> >> Thanks Bryan! If anyone is interested in testing the adapted pkg, there is a >> patch that can be applied to ports at >> http://people.freebsd.org/~nwhitehorn/pkg-new-abi.diff. It tries to make >> this transition as painless as possible by doing the following things: >> 1. Have pkg use e.g. FreeBSD:11:amd64 instead of freebsd:11:x86:64 as an ABI >> string. >> 2. Maintain the freebsd:11:x86:64-type strings as the "altabi" config >> variable. >> 3. pkg will install packages where the architecture ID matches either the >> ABI or ALTABI value, which means that new pkg can install packages made with >> the older version. >> 4. Patches the ports-mgmt/pkg Makefile so that the package for pkg itself is >> given a freebsd:11:x86:64-type architecture. This prevents pkg from choking >> on an update to itself and should, with the symlinks discussed above, make >> the transition painless and transparent. >> >> Especially point (4) I'd appreciate testing on if anyone is generating >> private package repositories. >> -Nathan > > Hi Nathan, > > Thanks for the patch, but there is a possible chicken <-> egg issue. > > I removed old pkg packages from the last build and running a new build so pkg > was build with the patch. > The first client complains about wrong architecture and there was no way to > reinstall pkg (even not with force) > Quick solution was to distribute pkg-static to the client and reinstall pkg > with the new pkg-static. > After the upgrade everything is running as usual ;) > > Are there better upgrade paths then my quick workaround ? > > Output after pd build was finished on the first client. > > # pkg update -f > Updating repository catalogue > Fetching meta.txz: 100% of 584 B > Fetching digests.txz: 100% of 43 kB > Fetching packagesite.txz: 100% of 138 kB > > Adding new entries: 34% > pkg: wrong architecture: FreeBSD:8:amd64 instead of freebsd:8:x86:64 > > pkg: repository str contains packages with wrong ABI: FreeBSD:8:amd64 > Adding new entries: 100% > pkg: Unable to update repository str > > > Update with help of the patched pkg > > # ~/pkg-static update -f > Updating repository catalogue > pkg-static: Repository str has a wrong packagesite, need to re-create database > Fetching meta.txz: 100% of 584 B > Fetching digests.txz: 100% of 43 kB > Fetching packagesite.txz: 100% of 138 kB > > Adding new entries: 100% > Incremental update completed, 500 packages processed: > 0 packages updated, 0 removed and 500 added. > > -- > olli >
Something I've mentioned to Bapt a few times is that pkg needs a way to have a list of accepted ABI strings. Then we could add both the old and the new style as accepted (internally) so that old and new repositories will continue to work. -- Regards, Bryan Drewery
signature.asc
Description: OpenPGP digital signature