Date: Thu, 14 Aug 2014 13:43:30 -0700 From: Nathan Whitehorn <nwhitehorn@freebsd.org> To: ports@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: <53ED1F72.9030900@freebsd.org> In-Reply-To: <53ED1044.80302@gmx.de> References: <5383EEB6.6010703@freebsd.org> <538614AB.4070803@freebsd.org> <53ECCF7F.3040107@FreeBSD.org> <53ECD741.5090703@freebsd.org> <53ED1044.80302@gmx.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On 08/14/14 12:38, 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 > Hm, that's weird. The patch is specifically designed to fix this. Could you run pkg info -F pkg.txz on the new pkg package that you can't install? -Nathan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?53ED1F72.9030900>