When doing eix-sync (emerge --sync), there is still a backtrace when trying to pkgmove signed binpkgs, probably related to bug 919419. Performing Global Updates (Could take a couple of minutes if you have a lot of binary packages.) .='update pass' *='binary update' #='/var/db update' @='/var/db move' s='/var/db SLOT move' %='binary move' S='binary SLOT move' p='update /etc/portage/package.*' /var/db/repos/gentoo/profiles/updates/1Q-2024..................... @Binpkg update ignored for signed package: /var/cache/binpkgs/dev-util/ninja/ninja-1.11.1-r4-2.gpkg.tar@@@!!! gpg: WARNING: unsafe ownership on homedir '/etc/portage/gnupg' gpg: no valid OpenPGP data found. [GNUPG:] NODATA 1 [GNUPG:] NODATA 2 gpg: the signature could not be verified. Please remember that the signature file (.sig or .asc) should be the first file given on the command line. Traceback (most recent call last): File "/usr/lib/python-exec/python3.11/emerge", line 57, in main retval = emerge_main() ^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/_emerge/main.py", line 1308, in emerge_main return run_action(emerge_config) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/_emerge/actions.py", line 3839, in run_action return action_sync(emerge_config) ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/_emerge/actions.py", line 2422, in action_sync success, msgs = syncer.auto_sync(options=options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/emaint/modules/sync/sync.py", line 89, in auto_sync return self._sync(repos, return_messages, emaint_opts=options) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/emaint/modules/sync/sync.py", line 261, in _sync self._do_pkg_moves() File "/usr/lib/python3.11/site-packages/portage/emaint/modules/sync/sync.py", line 272, in _do_pkg_moves if self.emerge_config.opts.get("--package-moves") != "n" and _global_updates( ^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/_global_updates.py", line 44, in _global_updates return _do_global_updates( ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/_global_updates.py", line 189, in _do_global_updates moves = bindb.move_ent(update_cmd, repo_match=repo_match) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/dbapi/bintree.py", line 724, in move_ent mydata = mybinpkg.get_metadata() ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/gpkg.py", line 783, in get_metadata return self.unpack_metadata() ^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/site-packages/portage/gpkg.py", line 748, in unpack_metadata self._verify_binpkg(metadata_only=True) File "/usr/lib/python3.11/site-packages/portage/gpkg.py", line 1586, in _verify_binpkg checksum_info.finish() File "/usr/lib/python3.11/site-packages/portage/gpkg.py", line 594, in finish raise InvalidSignature("GPG verify failed") portage.exception.InvalidSignature: GPG verify failed ----------------------------- # emerge --info Portage 3.0.61 (python 3.11.7-final-0, default/linux/amd64/17.1/hardened, gcc-13, glibc-2.38-r9, 5.10.186 x86_64) ================================================================= System uname: Linux-5.10.186-x86_64-AMD_Phenom-tm-_II_X6_1045T_Processor-with-glibc2.38 KiB Mem: 16143108 total, 3647344 free KiB Swap: 23246548 total, 23241428 free Timestamp of repository gentoo: Sun, 14 Jan 2024 08:00:01 +0000 Head commit of repository gentoo: 66befac964c44162818496ee5233c8d2f631107f Head commit of repository meow: d1aa3cf83fcd7a75c419ebe31527adb14b89aa00 sh bash 5.2_p21-r2 ld GNU ld (Gentoo 2.41 p4) 2.41.0 app-misc/pax-utils: 1.3.7::gentoo app-shells/bash: 5.2_p21-r2::gentoo dev-build/make: 4.4.1-r1::gentoo dev-build/meson: 1.3.1::gentoo dev-lang/perl: 5.38.2-r1::gentoo dev-lang/python: 3.11.7::gentoo, 3.12.1_p1::gentoo dev-lang/rust-bin: 1.74.1::gentoo dev-util/cmake: 3.28.1-r1::gentoo sys-apps/baselayout: 2.14-r1::gentoo sys-apps/openrc: 0.53::gentoo sys-apps/sandbox: 2.38::gentoo sys-devel/autoconf: 2.72-r1::gentoo sys-devel/automake: 1.16.5-r1::gentoo sys-devel/binutils: 2.41-r4::gentoo sys-devel/binutils-config: 5.5::gentoo sys-devel/clang: 17.0.6::gentoo sys-devel/gcc: 13.2.1_p20231216::gentoo sys-devel/gcc-config: 2.11::gentoo sys-devel/libtool: 2.4.7-r2::gentoo sys-devel/llvm: 17.0.6::gentoo sys-kernel/linux-headers: 6.6::gentoo (virtual/os-headers) sys-libs/glibc: 2.38-r9::gentoo Repositories: gentoo location: /var/db/repos/gentoo sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 volatile: False sync-rsync-verify-jobs: 3 sync-rsync-verify-metamanifest: yes sync-rsync-extra-opts: sync-rsync-verify-max-age: 3 hex location: /var/db/repos/hex masters: gentoo volatile: True meow location: /var/db/repos/meow sync-type: git sync-uri: https://github.com/gkubaryk/meow masters: gentoo volatile: False Binary Repositories: purr sync-uri: http://192.168.5.55:8079 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="@FREE" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=native" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -march=native" DISTDIR="/var/cache/distfiles" EMERGE_DEFAULT_OPTS="--verbose-slot-rebuilds=n --usepkg-exclude 'sys-kernel/* virtual/* */*-bin x11-base/xorg-drivers sys-firmware/* www-plugins/*' --buildpkg-exclude 'sys-kernel/* virtual/* */*-bin x11-base/xorg-drivers sys-firmware/* www-plugins/*'" ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance binpkg-request-signature binpkg-signing buildpkg buildpkg-live config-protect-if-modified distlocks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://gentoo.osuosl.org/ http://mirrors.rit.edu/gentoo/ http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/" LANG="en_US.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LEX="flex" MAKEOPTS="-j6" PKGDIR="/var/cache/binpkgs" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" SHELL="/bin/bash" USE="acl amd64 bzip2 cet cli crypt dist-kernel dri fortran gdbm hardened iconv ipv6 libtirpc multilib ncurses nls openmp pam pcre pic pie readline seccomp split-usr ssl ssp test-rust unicode xattr xtpax zlib" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 ntrip navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="pc" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" RUBY_TARGETS="ruby31" VIDEO_CARDS="amdgpu fbdev intel nouveau radeon radeonsi vesa dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account" Unset: ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
The package in question is validly signed, it seems. # gpg --homedir /etc/portage/gnupg image.tar.zst.sig gpg: WARNING: unsafe permissions on homedir '/etc/portage/gnupg' gpg: WARNING: no command supplied. Trying to guess what you mean ... gpg: assuming signed data in 'image.tar.zst' gpg: Signature made Fri Jan 5 23:40:33 2024 EST gpg: using EDDSA key 420610404B2E91FD9A9F6A6453A6F182DAFE5EE1 gpg: Good signature from "hex gentoo binpkg key <root@purr>" [full]
It's supposed to ignore the package if there's an existing valid signature, so maybe we can also do the same for InvalidSignature here: https://gitweb.gentoo.org/proj/portage.git/commit/?id=c00dbfb9d8e3c494173200436ec4c5bc2689707f There's another one in aux_update from bug 919419: https://gitweb.gentoo.org/proj/portage.git/commit/?id=a7bbb4fc4d38f770fc943f3b856c5de56e315fe4
tl;dr: patch seems good Manually applying the patch to /usr/lib/python3.11/site-packages/portage/dbapi/bintree.py allowed global updates to complete; I used /etc/portage/patches/sys-apps/portage-3.0.61-r1/1237.patch to install a "cleanly" patched 3.0.61-r1, and normal operations have resumed.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=68f4ea8a90d8759a1aa859d9188017e21797bdd0 commit 68f4ea8a90d8759a1aa859d9188017e21797bdd0 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2024-01-16 01:08:36 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2024-01-16 05:25:20 +0000 Handle SignatureException during package moves Ignore package moves for packages that raise SignatureException, just as they are ignored for packages that have a valid signature. Bug: https://bugs.gentoo.org/922142 Signed-off-by: Zac Medico <zmedico@gentoo.org> lib/portage/dbapi/bintree.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77c44c46194922509bc4f2b5cfc099412a560a69 commit 77c44c46194922509bc4f2b5cfc099412a560a69 Author: Sam James <sam@gentoo.org> AuthorDate: 2024-02-22 07:23:40 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2024-02-22 07:23:50 +0000 sys-apps/portage: add 3.0.62 Closes: https://bugs.gentoo.org/663324 Closes: https://bugs.gentoo.org/728046 Closes: https://bugs.gentoo.org/891137 Closes: https://bugs.gentoo.org/906368 Closes: https://bugs.gentoo.org/916566 Closes: https://bugs.gentoo.org/921170 Closes: https://bugs.gentoo.org/921208 Closes: https://bugs.gentoo.org/921400 Closes: https://bugs.gentoo.org/922038 Closes: https://bugs.gentoo.org/922142 Closes: https://bugs.gentoo.org/923368 Closes: https://bugs.gentoo.org/923750 Closes: https://bugs.gentoo.org/923841 Closes: https://bugs.gentoo.org/923852 Closes: https://bugs.gentoo.org/923854 Closes: https://bugs.gentoo.org/924192 Closes: https://bugs.gentoo.org/924273 Closes: https://bugs.gentoo.org/924585 Closes: https://bugs.gentoo.org/921380 Signed-off-by: Sam James <sam@gentoo.org> sys-apps/portage/Manifest | 1 + sys-apps/portage/portage-3.0.62.ebuild | 246 +++++++++++++++++++++++++++++++++ 2 files changed, 247 insertions(+)