Bug#987655: sbuild: Support zstd tarballs

2021-04-27 Thread Johannes Schauer Marin Rodrigues
Hi Vagrant,

Quoting Vagrant Cascadian (2021-04-27 09:08:38)
> The attached patch adds support for using zstd compressed tarballs.
> 
> sbuild will try to use ~/.cache/sbuild/sid-amd64.tar.zst but tar may not
> know what to do with it and so errors out:
> 
>   Unpacking /home/vagrant/.cache/sbuild/sid-amd64.tar.zst to 
> /tmp/tmp.sbuild.2ilJsfh49J...
>   tar: Archive is compressed. Use --zstd option
>   tar: Error is not recoverable: exiting now
>   E: ABORT: Received PIPE signal (requesting cleanup and shutdown)
> 
> 
> The patch passes the --zstd argument to tar, which seems to be available
> in versions of tar since buster. Alternately, "--use-compress-program
> zstd" worked as well.

cool, thanks! I'll apply your patch after the bullseye release.

> Really loving "--chroot-mode=unshare" !

Wow, it's really working for you? I'm not getting any feedback for the unshare
mode and never knew whether this was because nobody is using it or because
there are no problems. XD

Since sbuild-createchroot is only needed for the schroot setup I'm using this
command these days to create chroots:

mmdebstrap --variant=buildd unstable ~/.cache/sbuild/sid-amd64.tar.gz

As of #923747 being fixed, the above command will work in "unshare" mode by
default and that way the whole sbuild machinery can now be setup and run
without being root or suid root.

Thanks!

cheers, josch

signature.asc
Description: signature


Bug#987655: sbuild: Support zstd tarballs

2021-04-27 Thread Vagrant Cascadian
Package: sbuild
Version: 0.81.2
Severity: normal
Tags: patch
X-Debbugs-Cc: vagr...@debian.org

The attached patch adds support for using zstd compressed tarballs.

sbuild will try to use ~/.cache/sbuild/sid-amd64.tar.zst but tar may not
know what to do with it and so errors out:

  Unpacking /home/vagrant/.cache/sbuild/sid-amd64.tar.zst to 
/tmp/tmp.sbuild.2ilJsfh49J...
  tar: Archive is compressed. Use --zstd option
  tar: Error is not recoverable: exiting now
  E: ABORT: Received PIPE signal (requesting cleanup and shutdown)


The patch passes the --zstd argument to tar, which seems to be available
in versions of tar since buster. Alternately, "--use-compress-program
zstd" worked as well.


Really loving "--chroot-mode=unshare" !


live well,
  vagrant
From df5ef135ae10816abe56d4de92b0214f1fb7cdd7 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian 
Date: Mon, 26 Apr 2021 23:49:40 -0700
Subject: [PATCH] lib/Sbuild/Utility.pm: Add support for zstd compression.

---
 lib/Sbuild/Utility.pm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/Sbuild/Utility.pm b/lib/Sbuild/Utility.pm
index 75864825..e56eb05b 100644
--- a/lib/Sbuild/Utility.pm
+++ b/lib/Sbuild/Utility.pm
@@ -627,6 +627,8 @@ sub get_tar_compress_options($) {
 	return ('--use-compress-program', 'lz4');
 } elsif ($filename =~ /\.(xz|txz)$/) {
 	return ('--xz');
+} elsif ($filename =~ /\.zst$/) {
+	return ('--zstd');
 }
 return ();
 }
-- 
2.30.2



signature.asc
Description: PGP signature