emerge fails to verify rsynced DB with misleading: Unable to verify: gemato-XX.X+ is required it happens even if gemato is installed but not emerged for some reason with the same python target emerge runs. There is no reason to sync just to fail after some time already knowing in the beginning that emerge is going to fail. Reproducible: Always Expected Results: emerge should do more checking on gemato and if verification on repo is active offer either gemato re-emerge/emerge or to run without verification If gemato is not installed - say: Either emerge Gemato version xxx or turn off verification in the repo config If gemato is installed but not with the same target: Re-emerge Gemato with the "python_version" target
sys-apps/portage has RDEPEND="rsync-verify? ( >=app-portage/gemato-14.5[${PYTHON_USEDEP}] )". This should force portage and gemato to have compatible python targets enabled if rsync verification is enabled. I am curious how you managed to get portage built for a different set of python targets from gemato.
Good question. It's a mystery. I was thinking about that myself. I experienced the problem on a fresh built system (built 35 days ago from the hardened Gentoo Live DVD). Nothing unusual was done to make this happen. May be there is another bug somewhere. Portage rsync gemato failed when gemato was built with python3_7 (which is preferred), I re-emerged gemato and it changed the dep to python3_8 by itself (which is not preferred but used with portage) and rsync verification completed. For some reason gemato was built with a preferred python target 3.7 which differs from current portage python target 3.8 and that caused the problem. I didn't do it on purpose. eselect python show python3.7 1025c /var/tmp/portage/dev-db/mysql-workbench-6.3.10-r1 # emerge -pv portage These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] acct-group/portage-0::gentoo 0 KiB [ebuild N ] acct-user/portage-0::gentoo 0 KiB [ebuild U ] sys-apps/portage-3.0.12::gentoo [3.0.9::gentoo] USE="build (ipc) native-extensions rsync-verify xattr -apidoc -doc -gentoo-dev (-selinux) -test" PYTHON_TARGETS="python3_8 (-pypy3) (-python3_6) -python3_7 -python3_9" 1,025 KiB query depends gemato * These packages depend on gemato: sys-apps/portage-3.0.9 (rsync-verify ? >=app-portage/gemato-14.5[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?,-python_single_target_pypy3(-),-python_single_target_python3_6(-),-python_single_target_python3_7(-),-python_single_target_python3_8(-),-python_single_target_python3_9(-)]) emerge -pv gemato These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] app-portage/gemato-16.2::gentoo USE="gpg -test -tools" PYTHON_TARGETS="python3_8 (-pypy3) (-python3_6) -python3_7 -python3_9" 0 KiB * sys-apps/portage Latest version available: 3.0.12 Latest version installed: 3.0.9 Size of files: 1,025 KiB Homepage: https://wiki.gentoo.org/wiki/Project:Portage Description: Portage is the package management and distribution system eselect python list Available Python interpreters, in order of preference: [1] python3.7 [2] python3.9 (fallback) [3] python3.8 (fallback) [4] python2.7 (fallback) (In reply to Mike Gilbert from comment #1) > sys-apps/portage has RDEPEND="rsync-verify? ( > >=app-portage/gemato-14.5[${PYTHON_USEDEP}] )". > > This should force portage and gemato to have compatible python targets > enabled if rsync verification is enabled. > > I am curious how you managed to get portage built for a different set of > python targets from gemato.
emerge -pv portage These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild N ] acct-group/portage-0::gentoo 0 KiB [ebuild N ] acct-user/portage-0::gentoo 0 KiB [ebuild U ] sys-apps/portage-3.0.12::gentoo [3.0.9::gentoo] USE="build (ipc) native-extensions rsync-verify xattr -apidoc -doc -gentoo-dev (-selinux) -test" PYTHON_TARGETS="python3_8 (-pypy3) (-python3_6) -python3_7 -python3_9" 1,025 KiB
Probably portage version was upgraded and that emerge changed portage python_target which was initially 3.7 to 3.8 but at the same time that emerge didn't trigger gemato re-emerge with a new target 3.8 and it was left like that and that was how it broke. (In reply to Mike Gilbert from comment #1) > sys-apps/portage has RDEPEND="rsync-verify? ( > >=app-portage/gemato-14.5[${PYTHON_USEDEP}] )". > > This should force portage and gemato to have compatible python targets > enabled if rsync verification is enabled. > > I am curious how you managed to get portage built for a different set of > python targets from gemato.
Resurrecting this old bug to say I hit this today during the 3.9 -> 3.10 upgrade. Portage failed on an unrelated package. $ emerge --info Portage 3.0.30 (python 3.9.13-final-0, default/linux/amd64/17.1, gcc-11.3.0, glibc-2.35-r7, 5.17.5-x86_64-linode154 x 86_64) ================================================================= System uname: Linux-5.17.5-x86_64-linode154-x86_64-AMD_EPYC_7601_32-Core_Processor-with-glibc2.35 KiB Mem: 2007812 total, 1043080 free KiB Swap: 524284 total, 524284 free Timestamp of repository gentoo: Sun, 03 Jul 2022 23:30:01 +0000 Head commit of repository gentoo: 575ea2b3795cdcbcb58f600759a1465599cbd9b1 sh bash 5.1_p16 ld GNU ld (Gentoo 2.38 p4) 2.38 app-misc/pax-utils: 1.3.4::gentoo app-shells/bash: 5.1_p16::gentoo dev-lang/perl: 5.36.0::gentoo dev-lang/python: 3.9.13::gentoo, 3.10.5::gentoo, 3.11.0_beta3::gentoo dev-util/meson: 0.62.2::gentoo sys-apps/baselayout: 2.8::gentoo sys-apps/openrc: 0.45.1::gentoo sys-apps/sandbox: 2.29::gentoo sys-devel/autoconf: 2.71-r1::gentoo sys-devel/automake: 1.16.5::gentoo sys-devel/binutils: 2.38-r2::gentoo sys-devel/binutils-config: 5.4.1::gentoo sys-devel/gcc: 11.3.0::gentoo sys-devel/gcc-config: 2.5-r1::gentoo sys-devel/libtool: 2.4.7::gentoo sys-devel/make: 4.3::gentoo sys-kernel/linux-headers: 5.18-r1::gentoo (virtual/os-headers) sys-libs/glibc: 2.35-r7::gentoo Repositories: gentoo location: /var/db/repos/gentoo sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-verify-max-age: 24 sync-rsync-verify-jobs: 1 sync-rsync-extra-opts: sync-rsync-verify-metamanifest: yes ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-Os -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/san dbox.d /etc/terminfo" CXXFLAGS="-Os -march=native" DISTDIR="/var/cache/distfiles" EMERGE_DEFAULT_OPTS="--jobs=2 --complete-graph --with-bdeps=y" ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OP T PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg buildpkg-live config-protect-if-modified distlocks downgrade-backup ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-backup unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://mirrors.rit.edu/gentoo/" LANG="C.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j2" 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 cli crypt dri fortran gdbm iconv ipv6 ithreads libglvnd libtirpc multilib ncurses nptl openmp pcre python readline seccomp split-usr ssl syslog udev unicode xattr zlib" ABI_X86="64" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" ELIBC="glibc" INPUT_DEVICES="void" KERNEL="linux" L10N="en en-US" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10" USERLAND="GNU" VIDEO_CARDS="dummy" 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, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS $ emerge -pvO portage gemato These are the packages that would be merged, in order: [ebuild R ] sys-apps/portage-3.0.30-r5::gentoo USE="(ipc) native-extensions rsync-verify xattr -apidoc -build -doc -gentoo-dev (-selinux) -test" PYTHON_TARGETS="python3_10* -pypy3 -python3_8 -python3_9* -python3_11" 0 KiB [ebuild R ] app-portage/gemato-16.2::gentoo USE="gpg -test -tools" PYTHON_TARGETS="python3_10 -pypy3 -python3_8 -python3_9 -python3_11" 0 KiB Total: 2 packages (2 reinstalls), Size of downloads: 0 KiB
(In reply to Christohper Harrington from comment #5) > Resurrecting this old bug to say I hit this today during the 3.9 -> 3.10 > upgrade. Portage failed on an unrelated package. > floppym's question from before is still the key issue here. How did your upgrade go? Just a world upgrade (e.g. emerge -a -uvDU @world, or -N instead of -U), and everything went fine until this? Or did you do anything manually?
Hi, it seems that a good way to reproduce this bug is to emerge newer python, then switch default python version. This does not auto-rebuild portage deps. Either way a quick fix for this is to do emerge --oneshot gemato.
I don't really think the error is misleading here - it's just that people did something invalid or their system is in a broken state.
Today I ran into a similar problem and emerge -vO portage gemato solved it. Thanks for sharing the solution!