[Bug 1923845] Re: Please compress packages with zstd by default

Balint Reczey 1923845 at bugs.launchpad.net
Wed Apr 21 13:38:56 UTC 2021


** Description changed:

  https://people.canonical.com/~rbalint/zstd-debs/ contains a .deb built
  on Hirsute having both data and control members of the .deb being
  compressed with zstd. It can be handy for testing various tools.
  
  [dpkg]
  Decompression support in dpkg landed first in Bionic and is being SRUd to Xenial in LP: #1764220 enable Launchpad's Xenial systems to process the zstd-compressed binary packages.
  From dpkg's perspective the upgrade path is cleared.
  
  The original plan was compressing only the internal data.tar .deb
  member, but dpkg uses uniform compression by default since dpkg 1.19.0
  thus I'm collecting all the changes to support control.tar.zst, too, in
  this bug.
  
- TODO:
- Process:
+ Reviewed packages from:
  https://codesearch.debian.net/search?q=data.tar.xz&literal=1&perpkg=1
  https://codesearch.debian.net/search?q=control.tar.xz&literal=1&perpkg=1
  
- $ comm packages-with-data.tar.xz packages-with-control.tar.xz 
- 		acr
- 		alien
- ansible
- anthy
- appstream-glib
- 		apt
- 		aptly
- boinc
- 		busybox
- cdebootstrap
- 		cdist
- ceph
- circlator
- cowdancer
- 		debdelta
- debian-el
- 		debian-handbook
- 		debootstrap
- 		debsigs
- 		debsig-verify
- 		diffoscope
- 		dpkg
- 		dpkg-sig
- dpmb
- eccodes
- eckit
- elfutils
- 	file
- firefox
- firefox-esr
- galculator
- grads
- gvmd
- insighttoolkit4
- jdeb
- jmol
- jq
- libldm
- 	libsolv
- lintian
- linux
- lutris
- mate-common
- megaglest
- metview
- mir
- multiqc
- naev
- nanofilt
- 		obs-build
- 	osc
- 	python-apt
- python-dendropy
- python-gear
- python-x2go
- 		radare2
- reprepro
- 	salt
- 	streamlink
- thunderbird
- velvet
- veyon
- 		victoriametrics
- 		vim-scripts
- 		winetricks
- wlcs
- wpa
- zeroinstall-injector
+ appstream-glib  - needs fix: libappstream-builder/asb-package-deb.c
+ aptly           - needs fix: deb/deb.go
+ boinc           - needs fix: debian/fetch_example_applications.sh
+ busybox         - needs fix: archival/dpkg_deb.c archival/dpkg.c
+ cdebootstrap    - needs fix: src/package.c
+ cdist           - may need fix, can use dpkg-deb: cdist/preos/debootstrap/files/devuan-debootstrap/functions
+ debdelta        - needs fix: debdelta debpatch.sh
+ debian-el       - needs fix: deb-view.el
+ debian-handbook - needs fix, maybe later, for Debian
+ debootstrap     - needs fix, https://salsa.debian.org/installer-team/debootstrap/-/merge_requests/54
+ debsigs         - needs fix, debsigs
+ debsig-verify   - needs fix, src/debsig-verify.c
+ diffoscope      - needs fix, diffoscope/comparators/deb.py
+ dpkg            - needs fix, change default
+ dpkg-sig        - needs fix, dpkg-sig
+ dpmb            - needs fix, maybe later, for Debian
+ elfutils        - may need fix, uses dpkg-deb if it is available, does not handle .gz either
+ file            - needs fix, magic/Magdir/archive
+ libsolv         - needs fix, ext/repo_deb.c
+ lintian         - needs fix malformed-deb-archive
+ lutris          - needs fix, lutris/util/extract.py
+ obs-build       - needs fix Build/Deb.pm
+ osc             - needs fix osc/util/debquery.py control.tar.zst only
+ python-apt      - needs fix apt_inst.DebFile("glibc-doc-reference_2.33-0ubuntu2~zstd1_all.deb").control.extractall()
+ radare2         - needs fix
+ reprepro        - needs fix, debfile.c
+ vim-scripts     - needs fix debPlugin/autoload/deb.vim
+ winetricks      - needs fix when Debian switches src/winetricks
+ zeroinstall-injector - needs fix src/zeroinstall/archive.ml
+ 
+ acr             - skip, does not _have to_ be fixed, just creates packages, see dist/deb_hand.mak
+ alien           - skip, uses dpkg-deb to extract .deb
+ ansible         - not affected, just test data in dbdata.tar.xz
+ anthy           - not affected, just changelog entry
+ apt             - seems fixed already
+ ceph            - not affected in Ubuntu's version
+ circlator       - not affected, just test data
+ cowdancer       - not affected, just documentation
+ eccodes         - skip, just orig-data.tar.xz
+ eckit           - skip, just ...orig-data.tar.xz
+ firefox         - skip, profdata.tar.xz
+ firefox-esr     - skip, profdata.tar.xz
+ galculator      - skip, just changelog
+ grads           - skip, ...orig-data.tar.xz
+ gvmd            - skip, just creates xz compressed .deb
+ insighttoolkit4 - skip, ...orig-data.tar.xz
+ jdeb            - skip, just creates compressed .deb packages
+ jmol            - skip, just local data archive
+ jq              - skip, extracting .deb in Tracis CI only
+ libldm          - skip, just local data archive
+ linux           - skip, just local data archive
+ mate-common     - skip, just changelog
+ megaglest       - skip, just local data archive
+ metview         - skip, ...orig-data.tar.xz
+ mir             - skip, .gitignore
+ multiqc         - skip, false hit
+ naev            - skip, local data tarball
+ nanofilt        - skip, local data tarball
+ python-dendropy - skip, just local data archive
+ python-gear     - skip, just changelog
+ python-x2go     - skip, just changelog
+ salt            - skip, extracts only a fixture
+ streamlink      - skip, changelog only
+ thunderbird     - skip, local data tarballs
+ velvet          - skip, changelog only
+ veyon           - skip, just changelog
+ victoriametrics - skip, just assembles .deb
+ wlcs            - skip, Travis CI only
+ wpa             - skip, changelog only

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to dpkg in Ubuntu.
https://bugs.launchpad.net/bugs/1923845

Title:
  Please compress packages with zstd by default

Status in dpkg package in Ubuntu:
  New

Bug description:
  https://people.canonical.com/~rbalint/zstd-debs/ contains a .deb built
  on Hirsute having both data and control members of the .deb being
  compressed with zstd. It can be handy for testing various tools.

  [dpkg]
  Decompression support in dpkg landed first in Bionic and is being SRUd to Xenial in LP: #1764220 enable Launchpad's Xenial systems to process the zstd-compressed binary packages.
  From dpkg's perspective the upgrade path is cleared.

  The original plan was compressing only the internal data.tar .deb
  member, but dpkg uses uniform compression by default since dpkg 1.19.0
  thus I'm collecting all the changes to support control.tar.zst, too,
  in this bug.

  Reviewed packages from:
  https://codesearch.debian.net/search?q=data.tar.xz&literal=1&perpkg=1
  https://codesearch.debian.net/search?q=control.tar.xz&literal=1&perpkg=1

  appstream-glib  - needs fix: libappstream-builder/asb-package-deb.c
  aptly           - needs fix: deb/deb.go
  boinc           - needs fix: debian/fetch_example_applications.sh
  busybox         - needs fix: archival/dpkg_deb.c archival/dpkg.c
  cdebootstrap    - needs fix: src/package.c
  cdist           - may need fix, can use dpkg-deb: cdist/preos/debootstrap/files/devuan-debootstrap/functions
  debdelta        - needs fix: debdelta debpatch.sh
  debian-el       - needs fix: deb-view.el
  debian-handbook - needs fix, maybe later, for Debian
  debootstrap     - needs fix, https://salsa.debian.org/installer-team/debootstrap/-/merge_requests/54
  debsigs         - needs fix, debsigs
  debsig-verify   - needs fix, src/debsig-verify.c
  diffoscope      - needs fix, diffoscope/comparators/deb.py
  dpkg            - needs fix, change default
  dpkg-sig        - needs fix, dpkg-sig
  dpmb            - needs fix, maybe later, for Debian
  elfutils        - may need fix, uses dpkg-deb if it is available, does not handle .gz either
  file            - needs fix, magic/Magdir/archive
  libsolv         - needs fix, ext/repo_deb.c
  lintian         - needs fix malformed-deb-archive
  lutris          - needs fix, lutris/util/extract.py
  obs-build       - needs fix Build/Deb.pm
  osc             - needs fix osc/util/debquery.py control.tar.zst only
  python-apt      - needs fix apt_inst.DebFile("glibc-doc-reference_2.33-0ubuntu2~zstd1_all.deb").control.extractall()
  radare2         - needs fix
  reprepro        - needs fix, debfile.c
  vim-scripts     - needs fix debPlugin/autoload/deb.vim
  winetricks      - needs fix when Debian switches src/winetricks
  zeroinstall-injector - needs fix src/zeroinstall/archive.ml

  acr             - skip, does not _have to_ be fixed, just creates packages, see dist/deb_hand.mak
  alien           - skip, uses dpkg-deb to extract .deb
  ansible         - not affected, just test data in dbdata.tar.xz
  anthy           - not affected, just changelog entry
  apt             - seems fixed already
  ceph            - not affected in Ubuntu's version
  circlator       - not affected, just test data
  cowdancer       - not affected, just documentation
  eccodes         - skip, just orig-data.tar.xz
  eckit           - skip, just ...orig-data.tar.xz
  firefox         - skip, profdata.tar.xz
  firefox-esr     - skip, profdata.tar.xz
  galculator      - skip, just changelog
  grads           - skip, ...orig-data.tar.xz
  gvmd            - skip, just creates xz compressed .deb
  insighttoolkit4 - skip, ...orig-data.tar.xz
  jdeb            - skip, just creates compressed .deb packages
  jmol            - skip, just local data archive
  jq              - skip, extracting .deb in Tracis CI only
  libldm          - skip, just local data archive
  linux           - skip, just local data archive
  mate-common     - skip, just changelog
  megaglest       - skip, just local data archive
  metview         - skip, ...orig-data.tar.xz
  mir             - skip, .gitignore
  multiqc         - skip, false hit
  naev            - skip, local data tarball
  nanofilt        - skip, local data tarball
  python-dendropy - skip, just local data archive
  python-gear     - skip, just changelog
  python-x2go     - skip, just changelog
  salt            - skip, extracts only a fixture
  streamlink      - skip, changelog only
  thunderbird     - skip, local data tarballs
  velvet          - skip, changelog only
  veyon           - skip, just changelog
  victoriametrics - skip, just assembles .deb
  wlcs            - skip, Travis CI only
  wpa             - skip, changelog only

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1923845/+subscriptions



More information about the foundations-bugs mailing list