Bug 250094

Summary: ports-mgmt/pkg:pkg repo fails, when package output format tzst is used
Product: Ports & Packages Reporter: Martin <martin.jakob>
Component: Individual Port(s)Assignee: freebsd-pkg (Nobody) <pkg>
Status: Closed Overcome By Events    
Severity: Affects Only Me Flags: bugzilla: maintainer-feedback? (pkg)
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   

Description Martin 2020-10-04 15:02:36 UTC
I want to create a repository with just one file, this fails when the package output format tzst is used. It works with default format txz.

Versions:
OS: FreeBSD fbcurrent 13.0-CURRENT FreeBSD 13.0-CURRENT r364485 GENERIC-NODEBUG amd64
pkg: 1.14.5

Here are the steps i used:

package output format: tzst
pkg --option 'ABI_FILE=/usr/obj/usr/src/amd64.amd64/worldstage/usr/bin/uname' --option 'ALLOW_BASE_SHLIBS=yes' create --verbose --format tzst --level best --manifest jailpkg.ucl --plist jailpkg.plist --root-dir /usr/obj/usr/src/amd64.amd64/worldstage --out-dir /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485
file sizes/checksums [3076]: 100%
packing files [3076]: 100%
packing directories [177]: 100%

cd /usr/obj/usr/src/amd64.amd64/worldstage

pkg -d repo --list-files /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485
DBG(1)[336]> pkg initialized
pkg: No package files have been found
Cannot create repository catalogue

ls -l /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485/
total 40755
-rw-r--r-- 1 root wheel 20863888 23 Aug. 13:42 FreeBSD-jailpkg-13.0.r364485.tzst
-rw-r--r-- 1 root wheel 0 23 Aug. 13:42 filesite.yaml
-rw-r--r-- 1 root wheel 0 23 Aug. 13:42 packagesite.yaml

package output format: tzx
pkg --option 'ABI_FILE=/usr/obj/usr/src/amd64.amd64/worldstage/usr/bin/uname' --option 'ALLOW_BASE_SHLIBS=yes' create --verbose --format txz --level best --manifest jailpkg.ucl --plist jailpkg.plist --root-dir /usr/obj/usr/src/amd64.amd64/worldstage --out-dir /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485
file sizes/checksums [3076]: 100%
packing files [3076]: 100%
packing directories [177]: 100%

cd /usr/obj/usr/src/amd64.amd64/worldstage

pkg -d repo --list-files /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485
DBG(1)[58382]> pkg initialized
Creating repository in /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485: 0%
DBG(1)[58382]> checking for 1 workers

DBG(1)[59037]> start worker to parse 1 packages
DBG(1)[59037]> worker done
Creating repository in /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485: 0%
DBG(1)[58382]> checking for 1 workers
DBG(1)[58382]> finished worker, 0 remaining
Creating repository in /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485: 100%
Packing files for repository: 0%
DBG(1)[58382]> Packing to file '/usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485/meta.txz'
DBG(1)[58382]> Packing to file '/usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485/packagesite.txz'
Packing files for repository: 25%
DBG(1)[58382]> Packing to file '/usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485/filesite.txz'
Packing files for repository: 100%

ls -l /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485/
total 39237
-rw-r--r-- 1 root wheel 20021828 23 Aug. 13:54 FreeBSD-jailpkg-13.0.r364485.txz
-rw-r--r-- 1 root wheel 13616 23 Aug. 13:54 filesite.txz
-rw-r--r-- 1 root wheel 163 23 Aug. 13:54 meta.conf
-rw-r--r-- 1 root wheel 236 23 Aug. 13:54 meta.txz
-rw-r--r-- 1 root wheel 1520 23 Aug. 13:54 packagesite.txz

each try was run with a empty /usr/repo/jailpkg/FreeBSD:13:amd64/13.0.r364485/ directory.
Also: the tzst compression took longer than txz, but the resulting file is larger.
Comment 1 Baptiste Daroussin freebsd_committer freebsd_triage 2021-08-17 17:08:13 UTC
try again with pkg 1.17 :D