77 | | == Backport Packaging == |
78 | | |
79 | | Bcfg2 uses some newer packages which need to be backported to most debian-based GNU/Linux distributions. In most cases you'll need to have these working before doing the above Bcfg2 packaging. |
80 | | |
81 | | === debhelper === |
82 | | |
83 | | Bcfg2 1.0.0rc2 and later require debhelper 7.0.50 or later. |
84 | | |
85 | | Versions that work are in: |
86 | | * '''debian''': lenny-backports, squeeze, sid |
87 | | * '''ubuntu''': karmic, lucid |
88 | | |
89 | | === python-ssl === |
90 | | |
91 | | To run bcfg2-server 1.0.0 and later on platforms with python 2.5 and earlier, you'll need a python-ssl backport. |
92 | | |
93 | | As of Bcfg2 1.0.0, Bcfg2 has switched to the in-tree ssl module included with python 2.6. A backport exists for 2.3, 2.4, and 2.5. The ssl module can be found [http://pypi.python.org/pypi/ssl here]. See [wiki:Authentication] for details. |
94 | | |
95 | | There is packaging for python-ssl in the bcfg2 trunk. Do: |
96 | | |
97 | | {{{ |
98 | | sudo aptitude install python-all-dev fakeroot python-setuptools libssl-dev debhelper python-support \ |
99 | | subversion libbluetooth-dev |
100 | | wget http://pypi.python.org/packages/source/s/ssl/ssl-1.15.tar.gz#md5=81ea8a1175e437b4c769ae65b3290e0c |
101 | | tar xvfz ssl-1.15.tar.gz |
102 | | mv ssl-1.15 python-ssl-1.15 |
103 | | cd python-ssl-1.15 |
104 | | svn co https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2/misc/python-ssl-1.15/debian |
105 | | dpkg-buildpackage -rfakeroot -uc -us |
106 | | sudo dpkg -i ../python-ssl_1.15-1_*.deb |
107 | | }}} |
108 | | |
109 | | === sqlalchemy === |
110 | | |
111 | | For the bcfg2-server 1.0 snapshots reporting feature, you need SQLAlchemy 0.5 or later. |
112 | | |
208 | | |
209 | | ===== upload debhelper ===== |
210 | | |
211 | | Upload: |
212 | | {{{ |
213 | | #!/bin/sh -x |
214 | | |
215 | | sudo apt-get build-dep debhelper |
216 | | |
217 | | wget https://edge.launchpad.net/~ressu/+archive/bcfg2-backport/+files/debhelper_7.0.52.dsc |
218 | | wget https://edge.launchpad.net/~ressu/+archive/bcfg2-backport/+files/debhelper_7.0.52.tar.gz |
219 | | dpkg-source -x debhelper_7.0.52.dsc |
220 | | cd debhelper-7.0.52 |
221 | | cp debian/changelog debian/changelog.orig |
222 | | ppa="testing" # "testing" or "ppa" (for stable) |
223 | | try="1" |
224 | | |
225 | | for dist in hardy; do |
226 | | cp debian/changelog.orig debian/changelog |
227 | | (cd debian && debchange --force-bad-version --preserve --newversion \ |
228 | | "7.0.52~${ppa}${try}~${dist}${try}" \ |
229 | | backport to ppa ${ppa}, dist ${dist}, try ${try}) |
230 | | # Replace 0xAA95C349 to your GnuPG Key ID |
231 | | debuild -S -k0xAA95C349 |
232 | | dput bcfg2-testing-force-${dist} ../debhelper_7.0.52~${ppa}${try}~${dist}${try}_source.changes |
233 | | done |
234 | | }}} |
235 | | |
236 | | And then make sure it's installed locally for the next step. |
269 | | |
270 | | ==== bcfg2-server snapshots ==== |
271 | | |
272 | | The new 1.0.0 snapshots reporting feature needs a newer sqlalchemy than is included with some distributions. |
273 | | |
274 | | ===== upload sqlalchemy ===== |
275 | | |
276 | | Upload: |
277 | | {{{ |
278 | | #!/bin/sh -x |
279 | | |
280 | | sudo apt-get build-dep sqlalchemy |
281 | | |
282 | | wget http://backports.org/debian/pool/main/s/sqlalchemy/sqlalchemy_0.5.6-1~bpo50+1.dsc |
283 | | wget http://backports.org/debian/pool/main/s/sqlalchemy/sqlalchemy_0.5.6.orig.tar.gz |
284 | | wget http://backports.org/debian/pool/main/s/sqlalchemy/sqlalchemy_0.5.6-1~bpo50+1.diff.gz |
285 | | dpkg-source -x sqlalchemy_0.5.6-1~bpo50+1.dsc |
286 | | cd sqlalchemy-0.5.6 |
287 | | cp debian/changelog debian/changelog.orig |
288 | | ppa="testing" # "testing" or "ppa" (for stable) |
289 | | try="1" |
290 | | |
291 | | for dist in hardy; do |
292 | | cp debian/changelog.orig debian/changelog |
293 | | (cd debian && debchange --force-bad-version --preserve --newversion \ |
294 | | "0.5.6-1~${ppa}${try}~${dist}${try}" \ |
295 | | backport to ppa ${ppa}, dist ${dist}, try ${try}) |
296 | | # Replace 0xAA95C349 to your GnuPG Key ID |
297 | | debuild -S -k0xAA95C349 |
298 | | dput bcfg2-testing-force-${dist} ../sqlalchemy_0.5.6-1~${ppa}${try}~${dist}${try}_source.changes |
299 | | done |
300 | | }}} |
301 | | |
302 | | ==== bcfg2-server + python <= 2.5 ==== |
303 | | |
304 | | To run on GNU/Linux distributions that do not ship with python 2.6 or newer, you need the python-ssl backport. |
305 | | |
306 | | ===== upload python-ssl ===== |
307 | | |
308 | | Upload: |
309 | | {{{ |
310 | | #!/bin/sh -x |
311 | | |
312 | | sudo aptitude install patch python-setuptools libssl-dev debhelper devscripts dput \ |
313 | | python-setuptools python-all-dev libssl-dev libbluetooth-dev |
314 | | |
315 | | wget https://launchpad.net/~bcfg2/+archive/hardytesting/+files/python-ssl_1.15-1~testing102~hardy102.dsc |
316 | | wget https://launchpad.net/~bcfg2/+archive/hardytesting/+files/python-ssl_1.15-1~testing102~hardy102.tar.gz |
317 | | |
318 | | dpkg-source -x python-ssl_1.15-1~testing102~hardy102.dsc |
319 | | cd python-ssl-1.15 |
320 | | |
321 | | cp debian/changelog debian/changelog.orig |
322 | | ppa="testing" # "testing" or "ppa" (for stable) |
323 | | try="1" |
324 | | |
325 | | for dist in hardy; do |
326 | | cp debian/changelog.orig debian/changelog |
327 | | (cd debian && debchange --force-bad-version --preserve --newversion \ |
328 | | "1.15-1~${ppa}${try}~${dist}${try}" \ |
329 | | backport to ppa ${ppa}, dist ${dist}, try ${try}) |
330 | | # Replace 0xAA95C349 to your GnuPG Key ID |
331 | | debuild -S -sa -k0xAA95C349 # Using -sa here because we need .orig.tar.gz file |
332 | | dput bcfg2-testing-force-${dist} ../python-ssl_1.15-1~${ppa}${try}~${dist}${try}_source.changes |
333 | | done |
334 | | }}} |