]> git.donarmstrong.com Git - neurodebian.git/blob - tools/nd_backport
Tiny script to backport source packages.
[neurodebian.git] / tools / nd_backport
1 #!/bin/bash
2
3 set -e
4 set -u
5
6 if [ -z "$3" ]; then
7 cat << EOT
8 Script to backport a source package to some target release.
9
10 Synopsis
11 --------
12
13   nd_backport <family> <codename> <dsc file>
14
15 EOT
16 exit 1
17 fi
18
19 . /home/cowbuilder/neurodebian.git/tools/nd_cmdsettings.sh
20
21 DEBEMAIL="pkg-exppsy-maintainers@lists.alioth.debian.org"
22 DEBFULLNAME="NeuroDebian Maintainers"
23 export DEBEMAIL DEBFULLNAME
24
25 dscfile=$3
26 srcname=${dscfile%%_*}
27 srcversion=${dscfile#*_}
28 srcversion=${srcversion%%.dsc}
29 wdir=$(mktemp -d -t nd_backport.XXXXXX)
30 sdir=$wdir/${srcname}-${srcversion}
31
32 echo "Source package name: $srcname"
33 echo "Source package version: $srcversion"
34 echo "Extracting source package to: $sdir"
35
36 dpkg-source -x $dscfile $sdir
37
38 echo "Backporting to: $family $dist"
39
40 changelog_entry="Backport of Debian package version $srcversion for \
41 NeuroDebian. Problems with the backport should be reported to the
42 NeuroDebian maintainers and not to the original Debian maintainer."
43
44 echo | debchange \
45          --noconf --force-bad-version \
46          -c $sdir/debian/changelog \
47          -D neurodebian \
48          -b -l "~${dist}.nd" \
49          $changelog_entry
50
51 dpkg-source -b $sdir
52
53 # cleanup
54 rm -rf $wdir