Emerge is failing to run because, although setuptools supports pypy3, the only setuptools_scm version available doesn't. I need pip to work in pypy3. Reproducible: Always Steps to Reproduce: 1. Have the following somewhere in /etc/portage/package.use: */* PYTHON_TARGETS: python3_7 python3_8 dev-python/certifi PYTHON_TARGETS: python2_7 python3_6 pypy3 dev-python/pip PYTHON_TARGETS: python2_7 python3_6 pypy3 dev-python/setuptools PYTHON_TARGETS: python2_7 python3_6 pypy3 dev-python/setuptools_scm PYTHON_TARGETS: python2_7 python3_6 pypy3 dev-python/virtualenv PYTHON_TARGETS: python2_7 python3_6 pypy3 2. Attempt to emerge. Get `there are no ebuilds to satisfy "dev-python/setuptools_scm[...python target flags...]".` 3. Remove `pypy3` from `dev-python/setuptools_scm` in package.use. 4. Attempt to emerge. Same error as #2. 5. Remove `pypy3` from `dev-python/setuptools` in package.use. 6. Attempt to emerge. Get `there are no ebuilds to satisfy "dev-python/setuptools[...python target flags...]".` Needed by dev-python/pip. 7. Remove `pypy3` from `dev-python/pip` in package.use. 8. Emerge succeeded. Actual Results: $ pypy3 -m pip --version /usr/bin/pypy3: No module named pip Expected Results: $ pypy3 -m pip --version pip 20.2.2 from /usr/lib/pypy3.6/site-packages/pip (python 3.6)
Are you mixing ~arch and stable? Are you unmasking flags via /etc/portage/profile or packages via package.accept_keywords?
>Are you mixing ~arch and stable? Only as needed to enable packages with python3_9 or pypy3. >Are you unmasking flags via /etc/portage/profile or packages via package.accept_keywords? Nothing in /etc/portage/profile. /etc/portage/package.accept_keywords/python has: dev-lang/python:3.8 dev-lang/python:3.9 dev-python/pypy3 dev-python/pypy3-exe dev-python/setuptools dev-python/pip dev-python/virtualenv dev-python/certifi =dev-python/zope-interface-5.1.0
If you're mixing ~arch and stable, you're on your own. You may try unmasking additional target flags via /etc/portage/profile/use.stable.mask ('-' tokens) or you can try adding more packages to package.accept_keywords.
I have no idea what you mean by this. If I revert to all-stable, I get stuck with setuptools-46.4.0-r3, which is `(-pypy3) (-python3_9)` and I need setuptools working on pypy3. So I have to add these to /etc/portage/package.accept_keywords to switch to ~arch: dev-python/setuptools dev-python/pip dev-python/virtualenv dev-python/certifi and set PYTHON_TARGETS as above. This get me `there are no ebuilds to satisfy "dev-python/setuptools_scm[...python target flags...]"` Why? Because there's no ~arch version of dev-python/setuptools_scm that unmasks PYTHON_TARGETS pypy3 and python3_9. There is only one version: dev-python/setuptools_scm-4.1.2-r1, which is stable. So "don't mix ~arch and stable" makes no sense to me because a ~arch package depends on a stable-only package that has required USE flags masked. In other words, how can anyone build ~arch dev-python/setuptools-50.3.0 at all?
*** This bug has been marked as a duplicate of bug 491166 ***