
On 8/24/2021 4:35 PM, Geoffrey Thomas wrote:
Hmmm, I'm not sure exactly how to phrase that PyPI is not a distro but Conda is. Both use Python-aware package management tools (pip / conda). And while Conda is well-known for having non-Python software (R, curl, etc.), so does PyPI (patchelf, ninja, etc.).
And we expect that Conda will _not_ provide an EXTERNALLY-MANAGED file, though Homebrew will.
So maybe it's okay to say that technically both PyPI and Conda are distros, but since they use Python-specific package managers as their primary package manager, it's okay for them to choose not to implement EXTERNALLY-MANAGED?
Conda is not a distro, but Anaconda is, as-is conda-forge (both of which are installed using Conda). The difference from PyPI is that all the packages have been curated and produced (packed?) by a single organisation in a consistent build environment. Conda itself is not Python-specific, it is just popular for Python packages. It operates on simple archives that are extracted into a root directory and already contain all the file system structure needed to avoid collisions, so it really does benefit distros (as they can handle the entire layout more easily than many unrelated teams). Personally, I would expect these distros to specify that packages they install are "not managed by pip". It's all just static files that they embed into their packages anyway, so eventually conda-build (or the specific build definitions, more likely) will generate the marker at build time. Hopefully that's some helpful clarification. I haven't looked through the final PEP yet, but hoping to take a look before the end of the week. Cheers, Steve