Changes between Version 48 and Version 49 of BuildingDebianPackages


Ignore:
Timestamp:
11/11/09 22:49:15 (12 years ago)
Author:
dclark
Comment:

Still need python-ssl backport for bcfg2-server

Legend:

Unmodified
Added
Removed
Modified
  • BuildingDebianPackages

    v48 v49  
    1919 
    2020{{{ 
    21 apt-get install cdbs docbook-xsl libxslt1.1 python-dev python2.4-dev sgml-base xml-core xsltproc fakeroot 
     21apt-get install cdbs docbook-xsl libxslt1.1 python-dev sgml-base xml-core xsltproc fakeroot 
    2222}}} 
    2323 
     
    110110=== debhelper === 
    111111 
    112 Bcfg2 1.0.0rc2 and later require a recent debhelper, which may require a more recent po4a. 
     112Bcfg2 1.0.0rc2 and later require debhelper 7.0.50 or later. 
    113113 
    114114Versions that work are in: 
    115115 * '''debian''': lenny-backports, squeeze, sid 
    116  * '''ubuntu''': karmic 
    117  
    118 No special steps are needed to do these backports. 
     116 * '''ubuntu''': karmic, lucid 
     117 
     118=== python-ssl === 
     119 
     120To run bcfg2-server 1.0.0 and later on platforms with python 2.5 and earlier, you'll need a python-ssl backport. 
     121 
     122As 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.  
     123 
     124To build a package of the ssl backport for .deb based distributions that don't ship with python 2.6, you can follow these instructions, which use [http://github.com/astraw/stdeb/tree/master stdeb]. Alternatively if you happen to have .deb packaging skills, it would be great to get policy-complaint .debs into the major deb-based distributions. 
     125 
     126'''NOTE:''' To build the module on Debian (lenny) and Ubuntu (hardy), I had to apply this [attachment:ssl-1.15-debian.patch ssl-1.15-debian.patch] to remove bluetooth references. 
     127 
     128{{{ 
     129sudo aptitude install python-all-dev fakeroot python-setuptools libssl-dev debhelper python-support 
     130sudo easy_install stdeb 
     131wget http://pypi.python.org/packages/source/s/ssl/ssl-1.15.tar.gz#md5=81ea8a1175e437b4c769ae65b3290e0c 
     132tar xvfz ssl-1.15.tar.gz 
     133cd ssl-1.15 
     134# patch here if necessary 
     135stdeb_run_setup 
     136cd deb_dist/ssl-1.15 
     137dpkg-buildpackage -rfakeroot -uc -us 
     138sudo dpkg -i ../python-ssl_1.15-1_amd64.deb 
     139}}} 
     140 
     141For complete bcfg2 goodness, you'll also want to package stdeb using stdeb: 
     142{{{ 
     143sudo aptitude install apt-file 
     144wget http://pypi.python.org/packages/source/s/stdeb/stdeb-0.3.tar.gz#md5=e692f745597dcdd9343ce133e3b910d0 
     145tar xvfz stdeb-0.3.tar.gz 
     146cd stdeb-0.3 
     147stdeb_run_setup 
     148cd deb_dist/stdeb-0.3 
     149dpkg-buildpackage -rfakeroot -uc -us 
     150sudo dpkg -i ../python-stdeb_0.3-1_all.deb 
     151}}} 
    119152 
    120153=== sqlalchemy === 
    121154 
    122 For the standard Bcfg2 1.0 Snapshots reporting feature, you need SQLAlchemy 0.5 or later, which in turn requires a recent version of sphinx. No special steps need to be taken to do these backports. 
    123  
     155For the bcfg2-server 1.0 snapshots reporting feature, you need SQLAlchemy 0.5 or later. 
    124156 
    125157== External build systems == 
     
    319351==== bcfg2 snapshots ==== 
    320352 
     353The new 1.0.0 snapshots reporting feature needs a newer sqlalchemy than is included with some distributions. 
     354 
    321355===== upload sqlalchemy ===== 
    322356 
     
    346380done 
    347381}}} 
     382 
     383==== bcfg2-server + python <= 2.5 ==== 
     384 
     385To run on GNU/Linux distributions that do not ship with python 2.6 or newer, you need python-ssl backported.  
     386 
     387===== upload stdeb ===== 
     388 
     389Upload: 
     390{{{ 
     391#!/bin/sh -x 
     392 
     393sudo aptitude install python-all-dev fakeroot python-setuptools libssl-dev debhelper python-support apt-file 
     394sudo easy_install stdeb 
     395wget http://pypi.python.org/packages/source/s/stdeb/stdeb-0.4.1.tar.gz 
     396tar xvfz stdeb-0.4.1.tar.gz 
     397cd stdeb-0.4.1 
     398stdeb_run_setup 
     399cd deb_dist/stdeb-0.4.1 
     400cp debian/changelog debian/changelog.orig 
     401ppa="testing" # "testing" or "ppa" (for stable) 
     402try="2" 
     403 
     404for dist in dapper hardy intrepid; do 
     405cp debian/changelog.orig debian/changelog 
     406(cd debian && debchange --force-bad-version --preserve --newversion \ 
     407"0.4.1-1~${ppa}${try}~${dist}${try}" \ 
     408backport to ppa ${ppa}, dist ${dist}, try ${try}) 
     409# Replace 0xAA95C349 to your GnuPG Key ID 
     410debuild -S -sa -k0xAA95C349 # Using -sa here because we need .orig.tar.gz file 
     411dput bcfg2-testing-force-${dist} ../stdeb_0.4.1-1~${ppa}${try}~${dist}${try}_source.changes 
     412done 
     413 
     414# TODO: Fix "Upload Warnings: No copyright file found." 
     415}}} 
     416 
     417 
     418 
     419And then make sure it's installed locally for the next step. 
     420 
     421===== upload python-ssl ===== 
     422 
     423Upload: 
     424{{{ 
     425#!/bin/sh -x 
     426 
     427wget http://pypi.python.org/packages/source/s/ssl/ssl-1.15.tar.gz 
     428tar xvfz ssl-1.15.tar.gz 
     429cd ssl-1.15 
     430wget https://trac.mcs.anl.gov/projects/bcfg2/raw-attachment/wiki/BuildingDebianPackages/ssl-1.15-debian.patch 
     431patch -p1 < ssl-1.15-debian.patch 
     432 
     433# Note: ssl backport will only build on systems with Python 2.5 or earlier 
     434#       this is a workaround for newer systems... 
     435sudo ln -sf /usr/bin/python2.5 /usr/bin/python 
     436sudo easy_install stdeb 
     437stdeb_run_setup 
     438 
     439cd deb_dist/ssl-1.15 
     440cp debian/changelog debian/changelog.orig 
     441ppa="testing" # "testing" or "ppa" (for stable) 
     442try="1" 
     443 
     444for dist in dapper hardy intrepid; do 
     445cp debian/changelog.orig debian/changelog 
     446(cd debian && debchange --force-bad-version --preserve --newversion \ 
     447"1.15-1~${ppa}${try}~${dist}${try}" \ 
     448backport to ppa ${ppa}, dist ${dist}, try ${try}) 
     449# Replace 0xAA95C349 to your GnuPG Key ID 
     450debuild -S -sa -k0xAA95C349 # Using -sa here because we need .orig.tar.gz file 
     451dput bcfg2-testing-force-${dist} ../ssl_1.15-1~${ppa}${try}~${dist}${try}_source.changes 
     452done 
     453 
     454sudo ln -sf /usr/bin/python2.6 /usr/bin/python 
     455}}} 
     456 
     457And then make sure it's installed locally for the next step.