viv isn't venv
Find a file
2022-12-20 15:02:25 -06:00
docs docs: add docstring to activate 2022-12-20 14:49:43 -06:00
examples docs: updates some of the examples 2022-12-20 14:15:17 -06:00
src/viv docs: add docstring to activate 2022-12-20 14:49:43 -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 chore: add mypy to dev deps 2022-12-20 15:02:25 -06:00
pdm.lock chore: add mypy to dev deps 2022-12-20 15:02:25 -06:00
pyproject.toml chore: add mypy to dev deps 2022-12-20 15:02:25 -06:00
README.md docs: add demo.gif 2022-12-20 14:29:21 -06:00
setup.cfg add build/setup files 2022-12-19 23:11:12 -06:00

Viv

Logo

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/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