paul@5 | 1 | Shed Skin Packaging for Debian
|
paul@5 | 2 | ==============================
|
paul@5 | 3 |
|
paul@49 | 4 | Firstly, download the latest upstream source release. Although it might be
|
paul@49 | 5 | desirable to get the latest code from the repository, Debian will eventually
|
paul@59 | 6 | be using the actual source releases specified in the watch file. Here's how
|
paul@59 | 7 | to download using the watch file:
|
paul@59 | 8 |
|
paul@59 | 9 | uscan --force-download --destdir=..
|
paul@49 | 10 |
|
paul@59 | 11 | The --force-download option is required when --download indicates that the
|
paul@59 | 12 | package is up-to-date. This will make the necessary symbolic link for the
|
paul@59 | 13 | shedskin_0.9.orig.tar.gz archive that must be present when building the
|
paul@59 | 14 | package.
|
paul@59 | 15 |
|
paul@59 | 16 | Using the Upstream Repository
|
paul@59 | 17 | -----------------------------
|
paul@59 | 18 |
|
paul@59 | 19 | One can also try and persuade Gitorious to yield a file by visiting the
|
paul@49 | 20 | following address:
|
paul@5 | 21 |
|
paul@60 | 22 | http://gitorious.org/shedskin/mainline/archive-tarball/30ac2af
|
paul@19 | 23 |
|
paul@54 | 24 | The digest string can be replaced with a tag:
|
paul@54 | 25 |
|
paul@54 | 26 | http://gitorious.org/shedskin/mainline/archive-tarball/0.9
|
paul@54 | 27 |
|
paul@19 | 28 | The idea is then to combine the snapshot with this packaging infrastructure.
|
paul@5 | 29 |
|
paul@38 | 30 | Unpack the archive:
|
paul@5 | 31 |
|
paul@25 | 32 | cd ..
|
paul@60 | 33 | tar zxf shedskin-mainline-30ac2af.tar.gz
|
paul@54 | 34 | mv shedskin-mainline shedskin_0.9
|
paul@38 | 35 |
|
paul@38 | 36 | Make a copy of the archive for Debian non-native packaging purposes:
|
paul@38 | 37 |
|
paul@54 | 38 | tar zcf shedskin_0.9.orig.tar.gz shedskin_0.9
|
paul@38 | 39 |
|
paul@59 | 40 | Building the Package
|
paul@59 | 41 | --------------------
|
paul@59 | 42 |
|
paul@38 | 43 | Move into the sources directory:
|
paul@38 | 44 |
|
paul@54 | 45 | cd shedskin_0.9
|
paul@5 | 46 |
|
paul@5 | 47 | Now, copy the debian directory from this directory into the export directory:
|
paul@5 | 48 |
|
paul@5 | 49 | cp -R ../shedskin-packaging/debian/ .
|
paul@5 | 50 |
|
paul@40 | 51 | There are patches in debian/patches which should be applied when pbuilder is
|
paul@40 | 52 | run. These should not need to be applied manually.
|
paul@21 | 53 |
|
paul@5 | 54 | Using pbuilder, try and build the package (this example is using my signing
|
paul@5 | 55 | key):
|
paul@5 | 56 |
|
paul@5 | 57 | pdebuild --auto-debsign --debsign-k 9F308B3C
|
paul@5 | 58 |
|
paul@38 | 59 | Add extra options for the first packaging of a new release:
|
paul@38 | 60 |
|
paul@38 | 61 | pdebuild --auto-debsign --debsign-k 9F308B3C --debbuildopts -sa
|
paul@38 | 62 |
|
paul@38 | 63 | This makes sure that the original source archive is produced and referenced in
|
paul@38 | 64 | the changes file (used by dput when uploading a package to a Debian package
|
paul@38 | 65 | repository/archive).
|
paul@38 | 66 |
|
paul@40 | 67 | For a different distribution:
|
paul@40 | 68 |
|
paul@40 | 69 | pdebuild --auto-debsign --debsign-k 9F308B3C --debbuildopts -sa \
|
paul@40 | 70 | -- --distribution squeeze
|
paul@40 | 71 |
|
paul@5 | 72 | Some files will appear in /var/cache/pbuilder/result/ (such as the binary
|
paul@5 | 73 | package files), whereas others will appear in the parent directory.
|
paul@10 | 74 |
|
paul@62 | 75 | Uploading the Package
|
paul@62 | 76 | ---------------------
|
paul@62 | 77 |
|
paul@62 | 78 | With an appropriate .dput.cf file, the following command can be used to upload
|
paul@62 | 79 | package files to the Debian Mentors service:
|
paul@62 | 80 |
|
paul@62 | 81 | dput debexpo /var/cache/pbuilder/result/shedskin_0.9-1_i386.changes
|
paul@62 | 82 |
|
paul@21 | 83 | Maintenance Notes
|
paul@21 | 84 | -----------------
|
paul@21 | 85 |
|
paul@21 | 86 | When packaging a new release, update the release history below along with the
|
paul@21 | 87 | debian/changelog file:
|
paul@21 | 88 |
|
paul@49 | 89 | debchange -v 0.9-1 -D unstable
|
paul@38 | 90 |
|
paul@38 | 91 | The "-n" part of the version number causes a non-native Debian package to be
|
paul@38 | 92 | produced.
|
paul@21 | 93 |
|
paul@21 | 94 | Shed Skin Release History
|
paul@21 | 95 | =========================
|
paul@10 | 96 |
|
paul@25 | 97 | Release Git Changeset
|
paul@25 | 98 | ------- -------------
|
paul@60 | 99 | 0.9-1 30ac2afab36d38c0574124ca029e0cd2bfe023ae
|
paul@58 | 100 | 0.9 31b8214b451d87fae5ec7194a7b4430daa3f49ce
|
paul@43 | 101 | 0.8-1 d7cf784f5e12952a5630f6b78b3155995c825a38
|
paul@36 | 102 | 0.8 7f7388c3dfab40dc1776cfd6334dd41bdaa62beb
|
paul@34 | 103 | 0.7.1 d35a07c99c29618e0dad6d31a3cf01599c0d758a
|
paul@31 | 104 | 0.7 8fc85b49137a79ca9acc5e63fa9fdfbb50751907
|
paul@25 | 105 | 0.6 1e6708d49e9092a7949ed74b7e339c5245bb6661
|
paul@25 | 106 |
|
paul@10 | 107 | Release Subversion Revision
|
paul@10 | 108 | ------- -------------------
|
paul@21 | 109 | 0.5 1507
|
paul@19 | 110 | 0.4 1363
|
paul@14 | 111 | 0.3-2 1165
|
paul@10 | 112 | 0.3-1 1165
|