PaPy Tools
Tiny bash utilities to better manage pyvenv and pyenv
(In other words, NIH version of virtualenvwrapper)
Usage
cd ~/project/proj1
pp-mk Project1 3.5.2 # Create a new virtualenv with the name "Project1"
# Equivalent to: pyvenv ~/.pyvenv/Project1
# In this case, we will base the new venv on Python 3.5.2
# (previously installed through pyenv)
source pp-activate # Project1 is activated
# Equivalent to: source ~/.pyvenv/Project1/bin/activate
# Note that the project name is automatically
# detected using a hidden file in the current directory
#... work on Project1
deactivate # Same as with pyvenv
Commands
pp-mk [env_name] [python_version]
Create a new environment with the given name. All argument switches are passed along to pyvenv.
If no name is provided, we will use the name of the current directory.
If the provided env_name differs from current directory, it is stored in a hidden local file .papy.
If you use pyenv, you can also specify the python version to use.
Equivalent to activating a pyenv shim and then running pyvenv on top of that.
pp-activate [env_name]
Activate an environment with the given name. If name is not provided, the environment is detected
based on the current directory.
pp-list
List available environments from ~/.pyvenv
Configuration
You can set environmental variables to change some of the settings. You can find what's available
in pp-common.
Requirements
Linux or Mac, reasonably recent bash.
Installation
- Clone this repository
- Add cloned directory to PATH
You can also copy the files into your bin folder. Example (from inside the cloned repository):
sudo cp ./pp-* /usr/local/bin/
Stability
Tested on Mac, homebrew bash. Seems to be working fine.
Use at your own risk.
Licence
MIT