Open gbg4812 opened 6 months ago
Good idea. I'll do that soon.
I use pipx a lot with Linux distributions that do not provide packages (or only very outdated versions) for Python-based utilities (e.g. konsave, pyinfra, hatch, borgmatic).
On Linux distributions with very recent default Python (>= 3.12) the following error will occur if installing via pipx:
Traceback (most recent call last):
File "/home/mb/.local/bin/konsave", line 5, in <module>
from konsave.__main__ import main
File "/home/mb/.local/share/pipx/venvs/konsave/lib64/python3.12/site-packages/konsave/__init__.py", line 3, in <module>
from pkg_resources import get_distribution, DistributionNotFound
ModuleNotFoundError: No module named 'pkg_resources'
A workaround is to add the setuptools
package to the pipx environment:
pipx install konsave
pipx inject konsave setuptools
The reason for the error is that Python 3.12 has removed the distutils
package. It was deprecated since Python 3.10.
See: https://docs.python.org/3/whatsnew/3.12.html#distutils
When trying to install konsave with pip like described in the README it doesn't work and the next message is fired:
The solution is to use pipx (as stated in PEP668 ) or create manually a virtual environment witch my not be trivial for non-python users.
So I think it would be good to recommend pipx in the documentation for installation.