paul@5 | 1 | Shed Skin Packaging for Debian
|
paul@5 | 2 | ==============================
|
paul@5 | 3 |
|
paul@31 | 4 | Firstly, download the latest upstream source release. For example, try and
|
paul@31 | 5 | persuade Gitorious to yield a file by visiting the following address:
|
paul@5 | 6 |
|
paul@36 | 7 | http://gitorious.org/shedskin/mainline/archive-tarball/7f7388c
|
paul@19 | 8 |
|
paul@19 | 9 | The idea is then to combine the snapshot with this packaging infrastructure.
|
paul@5 | 10 |
|
paul@38 | 11 | Unpack the archive:
|
paul@5 | 12 |
|
paul@25 | 13 | cd ..
|
paul@36 | 14 | tar zxf shedskin-mainline-7f7388c.tar.gz
|
paul@38 | 15 | mv shedskin-mainline shedskin_0.8
|
paul@38 | 16 |
|
paul@38 | 17 | Make a copy of the archive for Debian non-native packaging purposes:
|
paul@38 | 18 |
|
paul@38 | 19 | tar zcf shedskin_0.8.orig.tar.gz shedskin_0.8
|
paul@38 | 20 |
|
paul@38 | 21 | Move into the sources directory:
|
paul@38 | 22 |
|
paul@38 | 23 | cd shedskin_0.8
|
paul@5 | 24 |
|
paul@5 | 25 | Now, copy the debian directory from this directory into the export directory:
|
paul@5 | 26 |
|
paul@5 | 27 | cp -R ../shedskin-packaging/debian/ .
|
paul@5 | 28 |
|
paul@21 | 29 | Since some problems have arisen in Shed Skin 0.5 with distutils, package data
|
paul@21 | 30 | installation and byte-compilation performed by Debian's python-central post-
|
paul@21 | 31 | installation scripts, the setup script needs to be patched:
|
paul@21 | 32 |
|
paul@21 | 33 | cp ../shedskin-packaging/setup.py.diff .
|
paul@21 | 34 | patch -p0 < setup.py.diff
|
paul@21 | 35 |
|
paul@21 | 36 | The shedskin.shared module also needs to be patched:
|
paul@21 | 37 |
|
paul@21 | 38 | cp ../shedskin-packaging/shared.py.diff .
|
paul@21 | 39 | patch -p0 < shared.py.diff
|
paul@21 | 40 |
|
paul@5 | 41 | Using pbuilder, try and build the package (this example is using my signing
|
paul@5 | 42 | key):
|
paul@5 | 43 |
|
paul@5 | 44 | pdebuild --auto-debsign --debsign-k 9F308B3C
|
paul@5 | 45 |
|
paul@38 | 46 | Add extra options for the first packaging of a new release:
|
paul@38 | 47 |
|
paul@38 | 48 | pdebuild --auto-debsign --debsign-k 9F308B3C --debbuildopts -sa
|
paul@38 | 49 |
|
paul@38 | 50 | This makes sure that the original source archive is produced and referenced in
|
paul@38 | 51 | the changes file (used by dput when uploading a package to a Debian package
|
paul@38 | 52 | repository/archive).
|
paul@38 | 53 |
|
paul@5 | 54 | Some files will appear in /var/cache/pbuilder/result/ (such as the binary
|
paul@5 | 55 | package files), whereas others will appear in the parent directory.
|
paul@10 | 56 |
|
paul@21 | 57 | Maintenance Notes
|
paul@21 | 58 | -----------------
|
paul@21 | 59 |
|
paul@21 | 60 | When packaging a new release, update the release history below along with the
|
paul@21 | 61 | debian/changelog file:
|
paul@21 | 62 |
|
paul@38 | 63 | debchange -v 0.8-1 -D unstable
|
paul@38 | 64 |
|
paul@38 | 65 | The "-n" part of the version number causes a non-native Debian package to be
|
paul@38 | 66 | produced.
|
paul@21 | 67 |
|
paul@21 | 68 | Shed Skin Release History
|
paul@21 | 69 | =========================
|
paul@10 | 70 |
|
paul@25 | 71 | Release Git Changeset
|
paul@25 | 72 | ------- -------------
|
paul@36 | 73 | 0.8 7f7388c3dfab40dc1776cfd6334dd41bdaa62beb
|
paul@34 | 74 | 0.7.1 d35a07c99c29618e0dad6d31a3cf01599c0d758a
|
paul@31 | 75 | 0.7 8fc85b49137a79ca9acc5e63fa9fdfbb50751907
|
paul@25 | 76 | 0.6 1e6708d49e9092a7949ed74b7e339c5245bb6661
|
paul@25 | 77 |
|
paul@10 | 78 | Release Subversion Revision
|
paul@10 | 79 | ------- -------------------
|
paul@21 | 80 | 0.5 1507
|
paul@19 | 81 | 0.4 1363
|
paul@14 | 82 | 0.3-2 1165
|
paul@10 | 83 | 0.3-1 1165
|