I have defined http GENTOO_MIRRORS. I have defined http_proxy. When i try to fetch (because i try to merge) a package source, i got an error: Process Process-9: Traceback (most recent call last): File "/usr/lib/python3.12/multiprocessing/process.py", line 314, in _bootstrap self.run() File "/usr/lib/python3.12/multiprocessing/process.py", line 108, in run self._target(*self._args, **self._kwargs) File "/usr/lib/python3.12/site-packages/portage/util/_async/ForkProcess.py", line 334, in _bootstrap sys.exit(target(*(args or []), **(kwargs or {}))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/_emerge/EbuildFetcher.py", line 330, in _target return asyncio.run(main()) ^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/portage/util/futures/_asyncio/__init__.py", line 116, in run return _safe_loop().run_until_complete(coro) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/portage/util/_eventloop/asyncio_event_loop.py", line 169, in _run_until_complete return self._loop.run_until_complete(future) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/asyncio/base_events.py", line 691, in run_until_complete return future.result() ^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/_emerge/EbuildFetcher.py", line 304, in main await task File "/usr/lib/python3.12/site-packages/portage/package/ebuild/fetch.py", line 1626, in async_fetch loc = await loc() ^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/portage/package/ebuild/fetch.py", line 767, in async_mirror_url path = mirror_conf.get_best_supported_layout(filename=filename).get_path(filename) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/site-packages/portage/package/ebuild/fetch.py", line 683, in get_best_supported_layout for val in self.structure: ^^^^^^^^^^^^^^ TypeError: 'NoneType' object is not iterable Adding a quick and dirty trace: --- /usr/lib/python3.12/site-packages/portage/package/ebuild/fetch.py.orig 1970-01-01 00:51:56.830309817 +0000 +++ /usr/lib/python3.12/site-packages/portage/package/ebuild/fetch.py 1970-01-01 00:52:01.856976983 +0000 @@ -1622,6 +1622,7 @@ tried_locations = set() while uri_list: loc = uri_list.pop() + writemsg_stdout("Trying uri: %s" % loc) if isinstance(loc, functools.partial): loc = await loc() # Eliminate duplicates here in case we've switched to it reports: Trying uri: functools.partial(<function async_mirror_url at 0xffff83ccafc0>, 'http://gentoo.mirrors.ovh.net/gentoo-distfiles', 'dtc-1.7.1.tar.xz', <portage.package.ebuild.config.config object at 0xffff834482c0>, '/var/tmp/distfiles/.mirror-cache.json') Proxy did not see any query (not even layout one). Reproducible: Always
Setting system clock to saner value solved the fetch problem. Leaving it open because there is underlying bug, where portage should IMO report a readable error or retry to fetch layout.