[ebuild R ] sys-apps/portage-2.3.99-r1::gentoo USE="(ipc) native-extensions xattr -apidoc -build -doc -gentoo-dev -rsync-verify (-selinux)" KERNEL="(linux)" PYTHON_TARGETS="python3_8* -pypy3 -python3_6 -python3_7*" 0 KiB ... <<< dir /usr/lib/portage/python3.7/preinst-qa-check.d <<< dir /usr/lib/portage/python3.7/postinst-qa-check.d <<< dir /usr/lib/portage/python3.7/install-qa-check.d <<< dir /usr/lib/portage/python3.7/ebuild-helpers/xattr <<< dir /usr/lib/portage/python3.7/ebuild-helpers/unprivileged <<< dir /usr/lib/portage/python3.7/ebuild-helpers/bsd <<< dir /usr/lib/portage/python3.7/ebuild-helpers <<< dir /usr/lib/portage/python3.7 No module named 'portage.util.netlink': /bin/bash -c /var/tmp/portage/._portage_reinstall_.w6hi1uuu/bin/ebuild.sh clean Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/portage/process.py", line 384, in spawn File "/usr/lib/python3.7/site-packages/portage/process.py", line 716, in _exec File "/usr/lib/python3.7/site-packages/portage/process.py", line 508, in _configure_loopback_interface ModuleNotFoundError: No module named 'portage.util.netlink' >>> Regenerating /etc/ld.so.cache... >>> Original instance of package unmerged safely. >>> sys-apps/portage-2.3.99-r1 merged. No module named 'portage.util.netlink': /bin/bash -c /var/tmp/portage/._portage_reinstall_.w6hi1uuu/bin/ebuild.sh clean Traceback (most recent call last): File "/usr/lib/python3.7/site-packages/portage/process.py", line 384, in spawn File "/usr/lib/python3.7/site-packages/portage/process.py", line 716, in _exec File "/usr/lib/python3.7/site-packages/portage/process.py", line 508, in _configure_loopback_interface ModuleNotFoundError: No module named 'portage.util.netlink' >>> Auto-cleaning packages... >>> No outdated packages were found on your system. * GNU info directory index is up-to-date. ${PORTAGE_TMPDIR}/portage/sys-apps/portage-* remains. Problem probably introduced in commit 70ec13029e5cc8a1decfab7134d3addea8612bd7: https://gitweb.gentoo.org/proj/portage.git/commit/?id=70ec13029e5cc8a1decfab7134d3addea8612bd7 commit 70ec13029e5cc8a1decfab7134d3addea8612bd7 Author: Mike Gilbert <floppym@gentoo.org> AuthorDate: 2019-08-30 18:24:47 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2019-08-31 03:10:03 +0000 Use RTNETLINK to configure the loopback interface This eliminates the dependency on iproute2 on Linux. Bug: https://bugs.gentoo.org/690758
> ${PORTAGE_TMPDIR}/portage/sys-apps/portage-* remains. Also ${PORTAGE_TMPDIR}/._unmerge_/sys-apps/portage-* remains.
The portage.util.netlink import needs to be done in global scope (could be use lazyimport), for the same reason the that portage.proxy.lazyimport._preload_portage_submodules() function exists.
We better not use lazyimport for this because if it fails then portage.proxy.lazyimport._preload_portage_submodules() will fail.
I think importing the netlink module on non-Linux systems will fail. I'm guessing that AF_NETLINK is not defined on other systems. Is there a nicer way to deal with this?
We can do something like this in global scope and later test if RtNetlink is None as needed: try: from portage.util.netlink import RtNetlink except Exception: if platform.system() == "Linux": raise RtNetlink = None
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=9738a404e876270cbdef2514f66915bce35d7435 commit 9738a404e876270cbdef2514f66915bce35d7435 Author: Mike Gilbert <floppym@gentoo.org> AuthorDate: 2020-04-20 20:47:00 +0000 Commit: Mike Gilbert <floppym@gentoo.org> CommitDate: 2020-04-20 21:14:25 +0000 Import portage.util.netlink.RtNetlink in global scope Bug: https://bugs.gentoo.org/718578 Signed-off-by: Mike Gilbert <floppym@gentoo.org> Reviewed-by: Zac Medico <zmedico@gentoo.org> lib/portage/process.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8dca612ca4c7e32e51bda62943a224b717decf33 commit 8dca612ca4c7e32e51bda62943a224b717decf33 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2020-04-21 03:45:58 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2020-04-21 04:33:42 +0000 sys-apps/portage: revbump to 2.3.99-r2 for bug 718578 #718578 ModuleNotFoundError for portage.util.netlink Bug: https://bugs.gentoo.org/711148 Closes: https://bugs.gentoo.org/718578 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Zac Medico <zmedico@gentoo.org> .../portage/{portage-2.3.99-r1.ebuild => portage-2.3.99-r2.ebuild} | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) Additionally, it has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a81ec04a86a9b593d9dbafe30e96cd8453831798 commit a81ec04a86a9b593d9dbafe30e96cd8453831798 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2020-04-21 03:08:09 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2020-04-21 03:11:17 +0000 sys-apps/portage: stable revbump to 2.3.89-r3 for bug 718578 #718578 ModuleNotFoundError for portage.util.netlink Bug: https://bugs.gentoo.org/706142 Bug: https://bugs.gentoo.org/718578 Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Zac Medico <zmedico@gentoo.org> sys-apps/portage/Manifest | 1 + .../portage/{portage-2.3.89-r2.ebuild => portage-2.3.89-r3.ebuild} | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-)