| 1 |
pox-guest |
756 |
HOWTO convert package to python-central
|
| 2 |
|
|
=======================================
|
| 3 |
pox-guest |
705 |
|
| 4 |
pox-guest |
756 |
1) debian/control
|
| 5 |
pox-guest |
721 |
|
| 6 |
pox-guest |
705 |
* source package:
|
| 7 |
pox-guest |
709 |
- add "XS-Python-Version:" header with: all / any / >=2.3 / 2.3, 2.4
|
| 8 |
pox-guest |
760 |
- add python-central and python-all-dev to "Build-Depends:" header
|
| 9 |
pox-guest |
705 |
* binary package:
|
| 10 |
pox-guest |
763 |
- add/extend headers:
|
| 11 |
pox-guest |
760 |
Depends: ${python:Depends}
|
| 12 |
|
|
XB-Python-Version: ${python:Versions}
|
| 13 |
|
|
Provides: ${python:Provides}
|
| 14 |
pox-guest |
721 |
- change Architecture: to "all" ("any" if package contains arch dep files)
|
| 15 |
pox-guest |
760 |
- if previous package version had python2.X-foo packages, add:
|
| 16 |
|
|
Conflicts: python2.X-foo (<< current_version)
|
| 17 |
|
|
Replaces: python2.X-foo (<< current_version)
|
| 18 |
pox-guest |
721 |
* remove python2.X-foo binary packages
|
| 19 |
pox-guest |
705 |
|
| 20 |
pox-guest |
756 |
2) debian/rules
|
| 21 |
pox-guest |
721 |
|
| 22 |
pox-guest |
760 |
* add new variable:
|
| 23 |
|
|
PYVERS=$(shell pycentral showversions)
|
| 24 |
|
|
and build modules for all versions from PYVERS, example rules:
|
| 25 |
pox-guest |
762 |
build-stamp: $(PYVERS:%=build-python%)
|
| 26 |
pox-guest |
760 |
build-python%:
|
| 27 |
|
|
python$* setup.py build
|
| 28 |
|
|
install: build $(PYVERS:%=install-python%)
|
| 29 |
|
|
install-python%:
|
| 30 |
|
|
python$* setup.py install --no-compile
|
| 31 |
pox-guest |
763 |
* add dh_pycentral to binary rule
|
| 32 |
pox-guest |
760 |
* remember to add "--single-version-externally-managed"
|
| 33 |
|
|
to python's install command if you want to provide Egg support
|
| 34 |
|
|
* remove python's and module's version from Egg's dirname
|
| 35 |
pox-guest |
705 |
|
| 36 |
pox-guest |
761 |
3) debian/{postinst,prerm}
|
| 37 |
pox-guest |
705 |
|
| 38 |
pox-guest |
761 |
* remove unneded postinst and prerm files, debhelper will generate them now
|
| 39 |
|
|
|
| 40 |
|
|
4) example packages
|
| 41 |
|
|
|
| 42 |
pox-guest |
705 |
# package without .so files
|
| 43 |
|
|
http://people.debian.org/~doko/pycentral/pyparallel_0.2-2.diff.gz
|
| 44 |
|
|
|
| 45 |
|
|
# package with .so files
|
| 46 |
|
|
http://people.debian.org/~doko/pycentral/python-imaging_1.1.5-5.diff.gz
|
| 47 |
|
|
|
| 48 |
pox-guest |
706 |
# package with .so files and Egg support
|
| 49 |
|
|
http://svn.debian.org/wsvn/python-modules/packages/pyenchant/trunk/debian/ or
|
| 50 |
pox-guest |
705 |
http://debian.pox.one.pl/pyenchant_1.1.5-2.diff.gz
|
| 51 |
|
|
|