PyPI to Debian repository converter (GSoC 2012 project)
Name Natalia F.
Project title PyPI to Debian repository converter
Project details: pypi.python.org repository contains over 20 000 libriaries for the Python programming language. Only some of them are available in the official Debian repositories. Others can be installed without usage of dpkg, that creates many problems (tools like easy_install or pip are not as advanced as dpkg/APT: simply uninstall of library is not a trivial task). A tool that converts newly available Python libraries shared on PyPI and commits it into deb repository will be created within this project. Libraries' developers will have an access to package's build logs.
Synopsis: The project goal is to write a tool for automatic conversion of PyPI repository to (unofficial) Debian repository.
Benefits to Debian
- access to many new PyPI libraries for Debian users who are not willing or not able to build / install software without usage of standard "apt-get install"
- .deb packages, even unofficial, cause less problems than "sudo make install" or "sudo ez_install" (less bug reports: dpkg handles file conflicts, etc.)
- Debian developers may base their official packages on other packages that are available in repository (it will reduce initial amount of work to be done to prepare new package)
Deliverables: tool for PyPI → Debian repository conversion
[April 24th - May 21st]
- review of similar projects created for other programming languages (e.g. CPAN repository converter for Perl)
- research and analysis (improvements identification, etc.) of available tools for automatic deb packages creation for Python libraries (stdeb, pkgme, etc.)
- reading the documentation about deb packages creation
- getting knowledge about XML-RPC interface of pypi.python.org repository
- work planning, interface design
[May 21st - July 9th]
- tool implementation
- prepare patches for selected tool (tools?) for packages convertion and debphyton library (if needed)
[July 9th - August 13th]
- attempt to rebuild as many of libraries from PyPI as possible, bugfixing, applying patches and enhancements that increase effectiveness of the converter
- documentation finalization
- implement some more features, if time permits:
- create website pypi.debian.net / deb.pypi.python.org
- possible ideas of PyPI improvements
- most common reasons of failed builds: suggestions of PyPI or Debian tools changes (with patches, if possible), guidelines for library authors
Exams and other commitments:
Other summer plans:
Are you applying for other projects in SoC? No.