I am trying to upgrade portage from EAPI 7 to EAPI 8 an I am landing in Python dependency Hell.
I did this:
https://wiki.gentoo.org/wiki/Upgrading_Gentoo/de
and this:
https://wiki.gentoo.org/wiki/Fix_my_Gentoo
I managed to generate all the necessary binary packages according to above gudis. I rebooted into my system and now I do:
Code: Select all
emerge --nodeps --oneshot --binpkg-changed-deps=n python-exec
This results in:
>>> Emerging binary (1 of 1) dev-lang/python-exec-2.4.10::gentoo
>>> Jobs: 0 of 1 complete, 1 running Load avg: 0.63, 0.51, 0.44================================================================================================
======== Traceback for invalid call to portage.package.ebuild.config.config.__getitem__ ========
File "/usr/lib/python-exec/python3.7/emerge", line 51, in <module>
retval = emerge_main()
File "/usr/lib/python3.7/site-packages/_emerge/main.py", line 1317, in emerge_main
return run_action(emerge_config)
File "/usr/lib/python3.7/site-packages/_emerge/actions.py", line 3376, in run_action
retval = action_build(emerge_config, spinner=spinner)
File "/usr/lib/python3.7/site-packages/_emerge/actions.py", line 560, in action_build
retval = mergetask.merge()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1045, in merge
rval = self._merge()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1461, in _merge
self._main_loop()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1414, in _main_loop
self._schedule()
File "/usr/lib/python3.7/site-packages/_emerge/PollScheduler.py", line 152, in _schedule
self._schedule_tasks()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1640, in _schedule_tasks
if self._schedule_tasks_imp():
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1783, in _schedule_tasks_imp
self._task_queues.jobs.add(task)
File "/usr/lib/python3.7/site-packages/_emerge/SequentialTaskQueue.py", line 24, in add
self.schedule()
File "/usr/lib/python3.7/site-packages/_emerge/SequentialTaskQueue.py", line 46, in schedule
task.start()
File "/usr/lib/python3.7/site-packages/_emerge/AsynchronousTask.py", line 30, in start
self._start()
File "/usr/lib/python3.7/site-packages/_emerge/MergeListItem.py", line 98, in _start
self._start_task(binpkg, self._default_final_exit)
File "/usr/lib/python3.7/site-packages/_emerge/CompositeTask.py", line 113, in _start_task
task.start()
File "/usr/lib/python3.7/site-packages/_emerge/AsynchronousTask.py", line 30, in start
self._start()
File "/usr/lib/python3.7/site-packages/_emerge/Binpkg.py", line 59, in _start
settings=self.settings, db=self._bintree.dbapi)
File "/usr/lib/python3.7/site-packages/portage/package/ebuild/doebuild.py", line 360, in doebuild_environment
mysettings["PORTDIR"] = os.path.realpath(mysettings["PORTDIR"])
File "/usr/lib/python3.7/site-packages/portage/package/ebuild/config.py", line 2619, in __getitem__
return self._getitem(key)
File "/usr/lib/python3.7/site-packages/portage/package/ebuild/config.py", line 2680, in _getitem
raise KeyError(mykey)
KeyError: 'PORTDIR'
================================================================================================
Traceback (most recent call last):
File "/usr/lib/python-exec/python3.7/emerge", line 51, in <module>
retval = emerge_main()
File "/usr/lib/python3.7/site-packages/_emerge/main.py", line 1317, in emerge_main
return run_action(emerge_config)
File "/usr/lib/python3.7/site-packages/_emerge/actions.py", line 3376, in run_action
retval = action_build(emerge_config, spinner=spinner)
File "/usr/lib/python3.7/site-packages/_emerge/actions.py", line 560, in action_build
retval = mergetask.merge()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1045, in merge
rval = self._merge()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1461, in _merge
self._main_loop()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1414, in _main_loop
self._schedule()
File "/usr/lib/python3.7/site-packages/_emerge/PollScheduler.py", line 152, in _schedule
self._schedule_tasks()
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1640, in _schedule_tasks
if self._schedule_tasks_imp():
File "/usr/lib/python3.7/site-packages/_emerge/Scheduler.py", line 1783, in _schedule_tasks_imp
self._task_queues.jobs.add(task)
File "/usr/lib/python3.7/site-packages/_emerge/SequentialTaskQueue.py", line 24, in add
self.schedule()
File "/usr/lib/python3.7/site-packages/_emerge/SequentialTaskQueue.py", line 46, in schedule
task.start()
File "/usr/lib/python3.7/site-packages/_emerge/AsynchronousTask.py", line 30, in start
self._start()
File "/usr/lib/python3.7/site-packages/_emerge/MergeListItem.py", line 98, in _start
self._start_task(binpkg, self._default_final_exit)
File "/usr/lib/python3.7/site-packages/_emerge/CompositeTask.py", line 113, in _start_task
task.start()
File "/usr/lib/python3.7/site-packages/_emerge/AsynchronousTask.py", line 30, in start
self._start()
File "/usr/lib/python3.7/site-packages/_emerge/Binpkg.py", line 59, in _start
settings=self.settings, db=self._bintree.dbapi)
File "/usr/lib/python3.7/site-packages/portage/package/ebuild/doebuild.py", line 360, in doebuild_environment
mysettings["PORTDIR"] = os.path.realpath(mysettings["PORTDIR"])
File "/usr/lib/python3.7/site-packages/portage/package/ebuild/config.py", line 2619, in __getitem__
return self._getitem(key)
File "/usr/lib/python3.7/site-packages/portage/package/ebuild/config.py", line 2680, in _getitem
raise KeyError(mykey)
KeyError: 'PORTDIR'Code: Select all
emerge --nodeps --oneshot --binpkg-changed-deps=n portage
Code: Select all
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-apps/portage-3.0.66.1-r1/work/portage-3.0.66.1 ...
* pypy3: running my_src_configure
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson-format-array: no python-exec wrapped executable found in /usr/lib/python-exec.
meson setup -Db_lto=false --libdir lib64 --localstatedir /var/lib --prefix /usr --sysconfdir /etc --wrap-mode nodownload --build.pkg-config-path /var/tmp/portage/sys-apps/portage-3.0.66.1-r1/temp/pypy3/pkgconfig:/usr/share/pkgconfig --pkg-config-path /var/tmp/portage/sys-apps/portage-3.0.66.1-r1/temp/pypy3/pkgconfig:/usr/share/pkgconfig --native-file /var/tmp/portage/sys-apps/portage-3.0.66.1-r1/temp/meson.x86_64-pc-linux-gnu.amd64.ini -Db_pch=false -Dwerror=false -Dbuildtype=plain -Dcode-only=false -Deprefix= -Dportage-bindir=/usr/lib/portage/pypy3 -Ddocdir=/usr/share/doc/portage-3.0.66.1-r1 -Ddoc=false -Dapidoc=false -Dgentoo-dev=false -Dipc=true -Dxattr=true -Dnative-extensions=false -Drsync-verify=true /var/tmp/portage/sys-apps/portage-3.0.66.1-r1/work/portage-3.0.66.1 /var/tmp/portage/sys-apps/portage-3.0.66.1-r1/work/portage-3.0.66.1-pypy3
meson: no python-exec wrapped executable found in /usr/lib/python-exec.
* ERROR: sys-apps/portage-3.0.66.1-r1::gentoo failed (configure phase):
Any hints are welcome.
Code: Select all
Emerge --info:
Portage 3.0.14 (python 3.7.17-final-0, !../../var/db/repos/gentoo/profiles/default/linux/amd64/23.0/split-usr/no-multilib, gcc-12.3.0, glibc-2.33-r4, 6.13.0 x86_64)
=================================================================
System uname: Linux-6.13.0-x86_64-Intel-R-_Core-TM-_i7_CPU_960_@_3.20GHz-with-gentoo-2.2.1
KiB Mem: 49332940 total, 36849928 free
KiB Swap: 0 total, 0 free
Timestamp of repository gentoo: Sat, 08 Feb 2025 15:15:00 +0000
Head commit of repository gentoo: c6cb0eba38cbbb7e7def07e5217059a268d60e24
Head commit of repository flatpak-overlay: 4bf9a7815ca9361f86459c8a8e9bc403e3721704
sh bash 5.2.37
ld GNU ld (Funtoo 2.40_p5 patchset: https://dev.gentoo.org/~dilfridge/distfiles/binutils-2.40-patches-5.tar.xz) 2.40.0
dev-lang/python: 2.7.18-r1::python-kit, 3.4.8-r1::python-kit, 3.7.17::python-kit, 3.9.21::python-kit, 3.11.11_p1::gentoo
sys-devel/autoconf: 2.72::core-kit
sys-devel/automake: 1.15.1-r2::core-kit, 1.16.5::core-kit
sys-devel/binutils: 2.40_p5-r1::core-kit, 2.44::gentoo
sys-kernel/linux-headers: 4.14::core-kit (virtual/os-headers)
Repositories:
gentoo
location: /var/db/repos/gentoo
sync-type: rsync
sync-uri: rsync://rsync.gentoo.org/gentoo-portage
sync-rsync-extra-opts:
flatpak-overlay
location: /home/zeno/zgoverlay/flatpak-overlay
sync-type: git
sync-uri: https://github.com/fosero/flatpak-overlay.git
masters: gentoo
priority: 50
Binary Repositories:
binhost
priority: 9999
sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CFLAGS="-O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.3/conf"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/var/cache/portage/distfiles"
EMERGE_DEFAULT_OPTS=" --jobs=8 --load-average=8"
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"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs cdn config-protect-if-modified distlocks ebuild-locks fixlafiles getbinpkg ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
GENTOO_MIRRORS="https://direct.funtoo.org"
PKGDIR="/var/cache/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="acl amd64 bzip2 cet crypt gdbm iconv ipv6 libtirpc ncurses nls openmp pam pcre readline seccomp split-usr ssl test-rust unicode xattr zlib" ABI_X86="64" ADA_TARGET="gcc_13" 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="mmx mmxext sse sse2" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" 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-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_12 python3_11 python3_9 python_targets_pypy3" RUBY_TARGETS="ruby32" 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: PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND
Portage upgrade almost went through but then failed because you can only upgrade portage with Python 11 that supports "distfiles."
I am happy to test more, if you can give me a pointer how to get around the EAPI 7 to EAPI 8 boundaries.
This
https://wiki.gentoo.org/wiki/Project:Po ... en_portage.
results in
This time it tells me after doing all the
Code: Select all
500 mkdir -p /tmp/portage && cd /tmp/portage
501 wget https://gitweb.gentoo.org/proj/portage.git/snapshot/portage-3.0.52.tar.gz
502 tar xvf portage-3.0.52.tar.gz -C /tmp/portage --strip-components=1
503 export PYTHONPATH="/tmp/portage/lib${PYTHONPATH:+:}${PYTHONPATH}"
504 export PATH="/tmp/portage/bin:${PATH}"
505 bin/emerge --info
Code: Select all
zenogentoo /tmp/portage # bin/emerge
File "bin/emerge", line 61
sys.stderr.write(f"Permission denied: '{str(e)}'\n")
^
SyntaxError: invalid syntax
emerge --update --newuse --deep @world
Calculating dependencies... done!
Code: Select all
!!! The following binary packages have been ignored due to non matching USE:
=sys-apps/baselayout-2.17 -split-usr
NOTE: The --binpkg-respect-use=n option will prevent emerge
from ignoring these binary packages if possible.
Using --binpkg-respect-use=y will silence this warning.
!!! All ebuilds that could satisfy "app-alternatives/bzip2" have been masked.
!!! One of the following masked packages is required to complete your request:
- app-alternatives/bzip2-1::gentoo (masked by: EAPI 8)
- app-alternatives/bzip2-1 (masked by: EAPI 8)
The current version of portage supports EAPI '7'. You must upgrade to a
newer version of portage before EAPI masked packages can be installed.
(dependency required by "@system" [set])
(dependency required by "@world" [argument])
For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.
Ok, I set my profile to:
eselect profile set 45
why is my EAPI Version in
cat /etc/portage/make.profile/eapi
showing
5 and not 8?
code tags added to preserve formatting -- NeddySeagoon





