[Debian-ports-devel] [PATCH mini-dak] Add xz compression

James Clarke jrtc27 at debian.org
Sun Feb 19 20:44:41 UTC 2017


---
Hi,
This has been tested by running archive-setup followed by
archive-reindex-meta. It generates gzip and xz files, and they are all
referenced by (In)Release. I don't especially like the fact that
Contents-$arch is gzip'ed and then zcat'ed, so maybe you would prefer
saving the uncompressed file temporarily, but it works either way.

Regards,
James

 bin/archive-reindex-meta |  6 ++++++
 bin/archive-setup        | 10 +++++-----
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/bin/archive-reindex-meta b/bin/archive-reindex-meta
index a7f61a4..6d16f2c 100755
--- a/bin/archive-reindex-meta
+++ b/bin/archive-reindex-meta
@@ -43,6 +43,8 @@ for suite in $(echo $suite_list | sed -re 's/unreleased ?//g'); do
        $dists_dir/$suite/main/binary-$arch/.Packages
     cat $dists_dir/$suite/main/binary-$arch/.Packages \
       | gzip -9cn > $dists_dir/$suite/main/binary-$arch/.Packages.gz
+    cat $dists_dir/$suite/main/binary-$arch/.Packages \
+      | xz -c > $dists_dir/$suite/main/binary-$arch/.Packages.xz
 
     apt-sortpkgs $dists_dir/$suite/main/debian-installer/binary-all/.Packages \
         $dists_dir/$suite/main/debian-installer/binary-$arch/.Packages \
@@ -51,12 +53,16 @@ for suite in $(echo $suite_list | sed -re 's/unreleased ?//g'); do
        $dists_dir/$suite/main/debian-installer/binary-$arch/.Packages
     cat $dists_dir/$suite/main/debian-installer/binary-$arch/.Packages \
       | gzip -9cn > $dists_dir/$suite/main/debian-installer/binary-$arch/.Packages.gz
+    cat $dists_dir/$suite/main/debian-installer/binary-$arch/.Packages \
+      | xz -c > $dists_dir/$suite/main/debian-installer/binary-$arch/.Packages.xz
 
     zcat $dists_dir/$suite/.Contents-all.gz \
          $dists_dir/$suite/.Contents-$arch.gz \
       | sort | gzip -9cn > $dists_dir/$suite/.Contents-$arch.gz.new
     mv $dists_dir/$suite/.Contents-$arch.gz.new \
        $dists_dir/$suite/.Contents-$arch.gz
+    zcat $dists_dir/$suite/.Contents-$arch.gz \
+      | xz -c > $dists_dir/$suite/.Contents-$arch.xz
   done
 done
 
diff --git a/bin/archive-setup b/bin/archive-setup
index 32c71a5..a80441b 100755
--- a/bin/archive-setup
+++ b/bin/archive-setup
@@ -26,9 +26,9 @@ create_apt_config ()
   cat > $apt_config <<-HERE
         Default {
           Packages::Extensions  ".deb";
-          Packages::Compress    ". gzip";
-          Sources::Compress     ". gzip";
-          Contents::Compress    "gzip";
+          Packages::Compress    ". gzip xz";
+          Sources::Compress     ". gzip xz";
+          Contents::Compress    "gzip xz";
           MaxContentsChange     100000;
         };
 
@@ -86,8 +86,8 @@ create_apt_config_buildd ()
   cat > $apt_config_buildd <<-HERE
         Default {
           Packages::Extensions  ".deb";
-          Packages::Compress    ". gzip";
-          Sources::Compress     ". gzip";
+          Packages::Compress    ". gzip xz";
+          Sources::Compress     ". gzip xz";
         };
 
         APT::FTPArchive {
-- 
2.11.0




More information about the Debian-ports-devel mailing list