summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lorries/diffutils-tarball.lorry8
-rwxr-xr-xlorry14
-rw-r--r--test.lorry (renamed from lorries/test.lorry)0
3 files changed, 14 insertions, 8 deletions
diff --git a/lorries/diffutils-tarball.lorry b/lorries/diffutils-tarball.lorry
deleted file mode 100644
index bf62e83..0000000
--- a/lorries/diffutils-tarball.lorry
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "diffutils-tarball": {
- "type": "tarball",
- "compression": "xz",
- "strip": 1,
- "url": "http://ftp.gnu.org/gnu/diffutils/diffutils-3.2.tar.xz"
- }
-}
diff --git a/lorry b/lorry
index 4281979..5641325 100755
--- a/lorry
+++ b/lorry
@@ -114,9 +114,23 @@ class Lorry(cliapp.Application):
quote_url(bundlename)) + '.bndl'
if not os.path.exists(path) or self.settings['bundle'] == 'always':
self.progress('.. building bundle %s' % bundlename)
+
+ # create the bundle
self.run_program(['git', 'bundle', 'create', path, '--branches',
'--tags'], cwd=gitdir)
+ # FIXME this is a hack to avoid unrecognized headers in bundles,
+ # which happens with some repositories. See
+ #
+ # http://marc.info/?l=git&m=132992959317420&w=2
+ #
+ # for more information. From the bundle's header section, the
+ # expression below will remove all garbage lines that appear
+ # between the first line (the bundle format meta comment) and
+ # the list of refs.
+ expr = '1,/^[0-9a-f]\{40\}/{ /^[0-9a-f]\{40\}/!{/^[^#]/d}}'
+ self.run_program(['sed', '-i', '-e', expr, path], cwd=gitdir)
+
def gitify(self, name, spec):
self.progress('Getting %s' % name)
table = {
diff --git a/lorries/test.lorry b/test.lorry
index 26dcef2..26dcef2 100644
--- a/lorries/test.lorry
+++ b/test.lorry