path: root/absurd
diff options
authorIan Jackson <>2016-12-19 14:51:48 +0000
committerIan Jackson <>2016-12-19 16:58:57 +0000
commitf39ed7a7a7cc43b0be9cf026fd94eebc0da59191 (patch)
tree279749f66948c9bb5aa5584336fbea61a79395de /absurd
parent83f9c7600efd098a5c4a5d4b1938f4df8acfd54a (diff)
absurd/git Do not fail to import certain weird .dscs
A .dsc containing patches which patch files multiple times would be rejected by dpkg-source due to #848611. Work around this by arranging for the patch of interest to never be the first patch, by introducing (and then evaporating) a dummy patch. Yuk. Closes:#848391. Signed-off-by: Ian Jackson <>
Diffstat (limited to 'absurd')
1 files changed, 17 insertions, 1 deletions
diff --git a/absurd/git b/absurd/git
index 8300b0b..7d3ff94 100755
--- a/absurd/git
+++ b/absurd/git
@@ -79,10 +79,26 @@ fi
rm -f debian/patches/series
-printf "%s\n" "$patch" >debian/patches/series
+# Work around #848611.
+# We need a stunt filename which the source package must not
+# contain. A trick is to use the commit hash of HEAD, whose
+# hash value cannot appear in any file in its own tree.
+omgwtf="dgit-omg-wtf-$(git rev-parse HEAD)"
+cat <<END >debian/patches/$omgwtf
+--- a/$omgwtf 2016-10-31 23:28:47.314155919 +0000
++++ b/$omgwtf 2016-12-18 22:40:01.870058270 +0000
+@@ -0,0 +1 @@
+printf "%s\n" "$omgwtf" >debian/patches/series
+printf "%s\n" "$patch" >>debian/patches/series
dpkg-source --before-build .
+rm -f $omgwtf debian/patches/$omgwtf
rm -rf .pc
git checkout debian/patches/series
git add -Af .