package bzr-loom tags 518097 + patch block 518097 by 518098 thanks On 04-Mar-2009, Ben Finney wrote: > Debian policy §4.9 recommends implementing a ‘get-orig-source’ target, > for automating the fetch of the corresponding source tarball when it > is not a simple matter of downloading from a URL.
Attached is a Bazaar patch bundle, implementing the above target via a shell program. The program parses the Vcs-Bzr field (so this is blocked by bug#518098) from ‘debian/control’, and the revision number from the upstream version number in the changelog. It then exports the revision to an appropriately-named tarball. The patch bundle is against the Alioth branch bzr+ssh://bzr.debian.org/bzr/pkg-bazaar/bzr-loom/experimental/ which is accessible to me only because I have an account there. -- \ “I got fired from my job the other day. They said my | `\ personality was weird. … That's okay, I have four more.” | _o__) —Bug-Eyed Earl, _Red Meat_ | Ben Finney <b...@benfinney.id.au>
# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: ben+deb...@benfinney.id.au-20090304044240-\ # f5xmek5jgvphxfp8 # target_branch: bzr+ssh://bzr.debian.org/bzr/pkg-bazaar/bzr-\ # loom/experimental/ # testament_sha1: 517eede2e310287844e42ec3ec800a947916572b # timestamp: 2009-03-04 15:43:37 +1100 # base_revision_id: jel...@samba.org-20090218185013-w1tn43kow1mwt9xy # # Begin patch === modified file 'debian/changelog' --- debian/changelog 2009-02-18 18:50:13 +0000 +++ debian/changelog 2009-03-04 04:42:40 +0000 @@ -1,3 +1,15 @@ +bzr-loom (1.4.0~bzr93-2) UNRELEASED; urgency=low + + [ Ben Finney ] + * debian/get-orig-source: + + Program to fetch source tarball from upstream VCS. + * debian/rules: + + Provide ‘get-orig-source’ target as recommended by Debian policy. + * debian/watch: + + Document the means to get the original source. + + -- + bzr-loom (1.4.0~bzr93-1) unstable; urgency=low * New upstream snapshot. === added file 'debian/get-orig-source' --- debian/get-orig-source 1970-01-01 00:00:00 +0000 +++ debian/get-orig-source 2009-03-04 04:42:40 +0000 @@ -0,0 +1,43 @@ +#! /bin/bash +# -*- coding: utf-8; -*- + +# debian/get-orig-source +# Part of ‘bzr-loom’ package +# +# Copyright © 2008–2009 Ben Finney <ben+deb...@benfinney.id.au> +# This is free software; you may copy, modify and/or distribute this work +# under the terms of the GNU General Public License, version 2 or later. +# No warranty expressed or implied. +# See the file ‘/usr/share/common-licenses/GPL-2’ for details. + +set -o errexit + +program_dir="$(dirname $(readlink --canonicalize-existing $0))" + +function changelog_field_value { + local field_name="$1" + local changelog_file="${2:-${program_dir}/changelog}" + dpkg-parsechangelog -l"${changelog_file}" --count 1 \ + | grep -i '^'"${field_name}"': ' \ + | cut -d ' ' -f 2 +} + +package_name=$(changelog_field_value Source) +package_version=$(changelog_field_value Version) +package_upstream_version=$( + echo ${package_version} \ + | sed -e 's/-[^-]\+$//' \ + ) + +vcs_url=$(grep -i '^Vcs-Bzr: ' ${program_dir}/control \ + | cut -d ' ' -f 2) +vcs_revno=$( + echo ${package_upstream_version} \ + | sed -e 's/^.*~bzr\([[:digit:]]\+\)$/\1/' \ + ) + +TARBALL_SUFFIX=".tar.gz" +tarball_name="${package_name}_${package_upstream_version}.orig${TARBALL_SUFFIX}" + +BZR_OPTS="--quiet --revision ${vcs_revno}" +bzr export ${BZR_OPTS} "${tarball_name}" "${vcs_url}" === modified file 'debian/rules' --- debian/rules 2008-06-14 15:47:29 +0000 +++ debian/rules 2009-03-04 04:42:40 +0000 @@ -7,7 +7,12 @@ DEB_INSTALL_DOCS_ALL += HOWTO CONTRIBUTORS +GET_ORIG_SOURCE = $(dir $_)get-orig-source + clean:: -rm -rf build test*.tmp find . -name "*.pyc" -print0 | xargs -0 rm -f +.PHONY: get-orig-source +get-orig-source: + $(GET_ORIG_SOURCE) === modified file 'debian/watch' --- debian/watch 2009-01-24 22:33:47 +0000 +++ debian/watch 2009-03-04 04:42:40 +0000 @@ -1,2 +1,5 @@ -# bzr-loom is maintained in bzr -# to obtain the source, run: bzr export lp:bzr-loom +# bzr-loom is maintained in a Bazaar repository. +# +# Fetching the source code for inclusion in a Debian source package is +# automated in the Debian package with ‘debian/rules get-orig-source’, +# as per Policy 3.8.0 §4.9. # Begin bundle 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 9zYOZQ046B/4u5IpwoSDfPZWEA==
signature.asc
Description: Digital signature