= Building Debian Packages = == Bcfg2 Packaging == * Install packages necessary for building bcfg2 [[BR]] {{{apt-get build-dep bcfg2 bcfg2-server}}} [[BR]] or, if the available repositories do not have any version of bcfg2, try something like: [[BR]] {{{apt-get install cdbs docbook-xsl libxslt1.1 python-dev python2.4-dev sgml-base xml-core xsltproc fakeroot}}} * Untar the sources - or for bleeding edge, {{{svn co https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2}}} * cd into the debian/ subdirectory * Optional: if you want to have a special name for your own package, edit the first line of changelog: change eg. "(0.9.5.7-0.1)" to "(0.9.5.7-0.1myname)" * run ./buildsys-select.sh [[br]]This will setup the package to install python properly. [[br]] is either: * 2.3 (for debian sarge), * 2.4 (for breezy, dapper, and nexenta <= alpha 6) * pycentral (for etch, feisty and edgy, gutsy, hardy). * cd .. * run "fakeroot dpkg-buildpackage -uc -us" * enjoy your freshly built packages == Python SSL Backport Packaging == As of Bcfg2 1.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. With this, M2Crypto is not needed, and tlslite is no longer included with bcfg2 sources. The ssl module can be found [http://pypi.python.org/pypi/ssl/1.14 here]. See [wiki:Authentication] for details. To 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. {{{ sudo aptitude install python-all-dev fakeroot sudo easy_install stdeb wget http://pypi.python.org/packages/source/s/ssl/ssl-1.14.tar.gz#md5=4e08aae0cd2c7388d1b4bbb7f374b14a tar xvfz ssl-1.14.tar.gz cd ssl-1.14 stdeb_run_setup cd deb_dist/ssl-1.14 dpkg-buildpackage -rfakeroot -uc -us sudo dpkg -i ../python-ssl_1.14-1_amd64.deb }}} For complete bcfg2 goodness, you'll also want to package stdeb using stdeb: {{{ sudo aptitude install apt-file wget http://pypi.python.org/packages/source/s/stdeb/stdeb-0.3.tar.gz#md5=e692f745597dcdd9343ce133e3b910d0 tar xvfz stdeb-0.3.tar.gz cd stdeb-0.3 stdeb_run_setup cd deb_dist/stdeb-0.3 dpkg-buildpackage -rfakeroot -uc -us sudo dpkg -i ../python-stdeb_0.3-1_all.deb }}}