-
The README now leads with
pipx, and names PEP 668 by its error text (#673, closes #671).pip install soup-cli, the first command in the README, fails on Debian 12 and Ubuntu 23.04 or later:error: externally-managed-environmentThose distros ship an
EXTERNALLY-MANAGEDmarker in the system Python so pip refuses to write into asite-packagesthataptalso manages (PEP 668). It is the default on current Debian and Ubuntu, so it is now the ordinary first-run experience on Linux rather than an edge case, and nothing in Soup can rescue the command: the package is not installed yet when the README line runs.Soup declares a
soupconsole script, which makes it an application rather than a library, so the install now leads withpipx install soup-clianduv tool install soup-cli. Both give Soup its own virtualenv and put the command onPATH, which is outside PEP 668's scope entirely. Every existingpip installline is kept, under a sentence saying when it is the right choice: already inside a virtualenv, a Colab notebook, or a Docker image. A callout carries the literalexternally-managed-environmentstring so the error text pasted into a search engine matches Soup's own README, and it also gives thepython3 -m venvroute for anyone who would rather not add a tool.Use
piprather thanpipxif you want toimport soup_clialongside your own code; pipx isolation is the wrong shape for that.Documentation only. No packaging or command behaviour changed.