viv isn't venv
Find a file
2022-12-20 13:29:15 -06:00
examples docs: don't add typer completion 2022-12-20 13:29:15 -06:00
src/viv refactor: make it a proper python project 2022-12-20 12:44:21 -06:00
.gitignore add build/setup files 2022-12-19 23:11:12 -06:00
.pre-commit-config.yaml add build/setup files 2022-12-19 23:11:12 -06:00
Makefile refactor: make it a proper python project 2022-12-20 12:44:21 -06:00
pdm.lock refactor: make it a proper python project 2022-12-20 12:44:21 -06:00
pyproject.toml build: use scm for package version 2022-12-20 13:28:48 -06:00
README.md refactor: make it a proper python project 2022-12-20 12:44:21 -06:00
setup.cfg add build/setup files 2022-12-19 23:11:12 -06:00

Viv isn't venv

Setup

Start by cloning the repo and symlinking the script for access to the CLI. By default it will symlink ./src/viv/viv.py to ~/bin/viv. You can set PREFIX to symlink to a different location.

git clone git@github.com:daylinmorgan/viv.git ~/.viv
make install # or PREFIX=~/.local/bin make install

Place this directory on the python path in your rc file.

export PYTHONPATH="$PYTHONPATH:$HOME/.viv/src"

Then in any python script with external dependencies you can add this line.

__import__("viv").activate("click")

Usage

To temove all viv venvs:

viv remove $(viv list -q)

TODO

  • add doc strings to src/viv.py
  • use config file (probably ini or json / could also allow toml for python>=3.11)
  • enable a garbage collection based on time or file existence (configurable)
  • unit tests

Alternatives

  • pipx
  • pip-run