system-wide
- install pipx
- install build dependencies for pyenv https://github.com/pyenv/pyenv/wiki#suggested-build-environment
user-specific
# install dev tools
pipx install pdm pre-commit tox
pipx inject pdm pdm-autoexport
pipx inject tox virtualenv-pyenv
# OS-independent Python versions
curl https://pyenv.run | bash
pyenv install 3.10
pyenv install 3.11
pyenv install 3.12
# install pre-commit hooks
for hook_type in pre-commit commit-msg post-commit pre-push ; do
pre-commit install --allow-missing-config --hook-type $hook_type
done
# install package dependencies
pdm install
pdm run pytest
tox
pdm run examples/demonstrator.py
pdm run examples/demonstrator.py -v -i 2