[ACCEPTED]-How to roll my own pypi?-pypi

Accepted answer
Score: 22

For light-weight solution, use pypiserver.

0

Score: 16

Update: PyPi is now powered by Warehouse, which is the replacement for Cheese Shop.

The source to Cheese Shop can be downloaded 3 from https://bitbucket.org/pypa/pypi/src. There is also an example, from the 2 page you linked to, of using Apache as a 1 "dumb" Python package repository:

# Mount pypi repositories into URI space
Alias /pypi   /var/pypi

# /pypi/dev: Redirect for unknown packages (fallback to pypi)
RewriteCond   /var/pypi/dev/$1 !-d
RewriteCond   /var/pypi/dev/$1 !-f
RewriteRule   ^/pypi/dev/([^/]+)/?$ http://pypi.python.org/pypi/$1/ [R,L]

RewriteCond   /var/pypi/dev/$1/$2 !-f
RewriteRule   ^/pypi/dev/([^/]+)/([^/]+)$ http://pypi.python.org/pypi/$1/$2 [R,L]

# /pypi/stable: Redirect for unknown packages (fallback to pypi)
RewriteCond   /var/pypi/stable/$1 !-d
RewriteCond   /var/pypi/stable/$1 !-f
RewriteRule   ^/pypi/stable/([^/]+)/?$ http://pypi.python.org/pypi/$1/ [R,L]

RewriteCond   /var/pypi/stable/$1/$2 !-f
RewriteRule   ^/pypi/stable/([^/]+)/([^/]+)$ http://pypi.python.org/pypi/$1/$2 [R,L]
Score: 9

Warehouse

Warehouse would be your best bet in 2017. From the 9 project's README:

Warehouse is a next generation 8 Python Package Repository designed to replace the 7 legacy code base that currently powers PyPI

...

You 6 can run Warehouse locally using docker and docker-compose. See Getting started in 5 the documentation for instructions on how 4 to set it up.

It is maintained by The Python Packaging Authority (PyPA) who work 3 in cooperation with members of the Python 2 core development team, and there is a live version running at https://pypi.org/ which 1 mirrors everything in the legacy PyPI (https://pypi.python.org/).

Score: 6

devpi

We are using it in a corporate environment 2 and are pretty satisfied. It supports replication, private 1 indexes and index inheritance.

Score: 5

There is a fork of djangopypi named djangopypi2 5 you can get it from https://github.com/popen2/djangopypi2/, I installed it and 4 works for me, this option is what I had 3 choose from a list of about 24 alternatives 2 that I have found in a recently search, you 1 can see the list here: http://uyeya.blogspot.com/2013/10/list-of-local-alternatives-of-pypi.html

Score: 3

Updated: crate.io has shut down and the 7 domain is now something else entirely.

One 6 project that hasn't been mentioned is https://crate.io/, which 5 seems very active. It claims to be a "Next 4 Generation Python Packaging Index", but 3 they have their repositories split nicely 2 into pieces that seem to welcome customization 1 and remixing to your purposes.

Score: 1

If you would like a lighter solution then 2 deploying an entire pypi server, you could 1 try using a server index generated by basketweaver.

More Related questions