Pip App

A set of shell functions to make it easy to install small apps and utilities distributed with pip.

36 stars
9 forks


There are lots of apps and utilities written in python. These days they are being distributed as packages to be installed with pip. While the installation of those projects (like localtunnel, nvpy) says, pip install nvpy, its not always that simple. I don't want to install the app and all its dependencies in the system python. I want it to have its own virtualenv.

So, I create a virtualenv and install this app, it creates an executable, used to run the app. But, as you might have guessed, everytime I need to run the app, I have to first switch to this virtualenv. This just plain sucks.

Enter pip-app. Install an app with

pip-app nvpy

It will create its own virtualenv and install itself in it. For every executable introduced by this app, it creates an executable that will load the correct virtualenv and launch the correct app, in a way that just bloody works.

And to uninstall,

pip-unapp nvpy



If you use Antigen, add the following command to your .zshrc with your other antigen bundle commands.

antigen bundle sharat87/pip-app


If you use Zgen, add

zgen load sharat87/pip-app

to your .zshrc along with your other zgen load commands.

Without a Framework

If you aren't using a framework, just clone this repo or just download the pip-app.sh file and add a source line to your .bashrc or .zshrc or whatever is your shell's equivalent.

source /path/to/pip-app.sh

You should have the pip-app and pip-unapp functions available now.


This thing is licensed with MIT License. Feedback, problems, discussion, tweet at @sharat87 or open up and issue on the github project page.