Skip to content

coordt/djangopypi

 
 

Repository files navigation

DjangoPyPI

DjangoPyPI is a Django application that provides a re-implementation of the Python Package Index.

Installation

Path

The first step is to get userpypi into your Python path.

Buildout

Simply add userpypi to your list of eggs and run buildout again it should downloaded and installed properly.

EasyInstall/Setuptools

If you have setuptools installed, you can use easy_install userpypi

Manual

Download and unpack the source then run:

$ python setup.py install

Django Settings

Add userpypi to your INSTALLED_APPS setting and run syncdb again to get the database tables1.

Then add an include in your url config for userpypi.urls:

urlpatterns = patterns("",
    ...
    url(r'', include("userpypi.urls"))
)

This will make the repository interface be accessible at /pypi/.

Uploading to your PyPI

Assuming you are running your Django site locally for now, add the following to your ~/.pypirc file:

[distutils]
index-servers =
    pypi
    local

[pypi]
username:user
password:secret

[local]
username:user
password:secret
repository:http://localhost:8000/pypi

Uploading a package: Python >=2.6

To push the package to the local pypi:

$ python setup.py register -r local sdist upload -r local

Uploading a package: Python <2.6

If you don't have Python 2.6 please run the command below to install the backport of the extension for multiple repositories:

$ easy_install -U collective.dist

Instead of using register and dist command, you can use mregister and mupload which are a backport of python 2.6 register and upload commands that supports multiple servers.

To push the package to the local pypi:

$ python setup.py mregister -r local sdist mupload -r local

  1. userpypi is South enabled, if you are using South then you will need to run the South migrate command to get the tables.

About

Simple PyPI server written in django. Allows you to register/upload with distutils and install with easy_install/pip.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%