Date: Thu, 14 Aug 2014 21:38:44 +0200 From: olli hauer <ohauer@gmx.de> To: Nathan Whitehorn <nwhitehorn@freebsd.org> Cc: Baptiste Daroussin <bapt@FreeBSD.org>, Warner Losh <imp@bsdimp.com>, FreeBSD Mailing List <freebsd-ports@FreeBSD.org>, Bryan Drewery <bdrewery@FreeBSD.org> Subject: Re: [Patch] Using MACHINE_ARCH identifiers in pkg Message-ID: <53ED1044.80302@gmx.de> In-Reply-To: <53ECD741.5090703@freebsd.org> References: <5383EEB6.6010703@freebsd.org> <538614AB.4070803@freebsd.org> <53ECCF7F.3040107@FreeBSD.org> <53ECD741.5090703@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53ED1044.80302>