This is a pre-production deployment of Warehouse, however changes made here WILL affect the production instance of PyPI.
Project Description


pkgsync is a tool used to move python packages from one repository to another. Say, for example you use a pypi-clone application such as chishop and you want to synchronise some packages from pypi to it, or you have multiple pypi clone applications, etc.

This makes sure that all the versions of some package on repository A are copied to repository B if they don’t already exist on B.


pkgsync is particularly useful because it uses pkginfo to introspect packages so you don’t have to:

$ tar zxf something-1.2.3.tar.gz
$ cd something-1.2.3/
$ python sdist register upload -r privaterepo

which is flawed for being slow and often showing up issues where people have packaged their software incorrectly, with missing files, etc., plus dates change, md5sums change… in short it’s messy. Using pkgsync is less-so.

Password-Protected Repositories

Supports upload and download authentication just in case you have a password- protected private repository to copy from/to.

Old-Style Packages

Very naively support for old-style packages - packages without any setuptools metadata in them. For these packages, we attempt to use the filename to determine the package name and release, then register the package using the value ‘UNKNOWN’ for all the other setuptools metadata (as per the spec).


Default --source-url is since that’s probably your use -case.

If --destination-username is provided and --destination-password is not, you’ll be prompted for a password.

Full command-line options documentation available by doing pkgsync --help

Example usage:

pkgsync --destination-url= --destination-username=youruser tzinfo Django celery

Full repository sync:

pkgsync --source-url= --destination-url= --destination-username=youruser --all

Development Instructions

It’s a pretty typical zc.buildout setup:

$ python
$ bin/buildout

$ bin/pkginfo --help


0.1.0 (2013-03-02)

  • Initial release.
Release History

Release History


This version

History Node

TODO: Figure out how to actually get changelog content.

Changelog content for this version goes here.

Donec et mollis dolor. Praesent et diam eget libero egestas mattis sit amet vitae augue. Nam tincidunt congue enim, ut porta lorem lacinia consectetur. Donec ut libero sed arcu vehicula ultricies a non tortor. Lorem ipsum dolor sit amet, consectetur adipiscing elit.

Show More

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pkgsync-0.1.0-py2.7.egg (29.4 kB) Copy SHA256 Checksum SHA256 2.7 Egg Mar 2, 2013
pkgsync-0.1.0.tar.gz (9.9 kB) Copy SHA256 Checksum SHA256 Source Mar 2, 2013

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting