This is a very simple pypi-like server written with the pyramid web framework. It also has a builtin cache proxy, that fetches not found packages from pypi and stores it in local storage.
Download the git repository and do
python setup.py install.
You can configure the server by editing the
production.ini and then
just start the http server with
pserve production.ini or refer to
the pyramid docs
for other deployment options.
Add your local egg server to you
[distutils] index-servers = pypi local [pypi] username: pypi_user password: pypi_pass repository: http://pypi.python.org/pypi [pyramidpypi] username: local_user password: local_pass repository: http://127.0.0.1:6543/
pyramidpypi has no authentication build-in, so username&password is only relevant if the pypi folder is served from a webserver and that server has ACLs in place to access the eggs.
To install a package from it, simply do:
pip install -i http://127.0.0.1:6543/ <your package>
To use only cached version you can specify alternative URL and use:
pip install -i http://127.0.0.1:6543/c/ <your package>
This will use packages cached on the disk, and skip pypi checking. Resulting in big speed boost
You can simply upload your packages with:
python setup.py sdist upload -r pyramidpypi