From 7ea4e8b643dbe4931e3cb3072d180ee066a28dd1 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Wed, 7 Jan 2026 20:18:28 +0900 Subject: [PATCH] internal/pkg: support tarball compressed via bzip2 Signed-off-by: Ophestra --- internal/pkg/tar.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/internal/pkg/tar.go b/internal/pkg/tar.go index 1ce3038..33f26f3 100644 --- a/internal/pkg/tar.go +++ b/internal/pkg/tar.go @@ -3,6 +3,7 @@ package pkg import ( "archive/tar" "bytes" + "compress/bzip2" "compress/gzip" "context" "encoding/binary" @@ -21,6 +22,8 @@ const ( TarUncompressed = iota // TarGzip denotes a tarball compressed via [gzip]. TarGzip + // TarBzip2 denotes a tarball compressed via [bzip2]. + TarBzip2 ) // A tarArtifact is an [Artifact] unpacking a tarball backed by a [File]. @@ -100,6 +103,10 @@ func (a *tarArtifact) Cure(c *CureContext) (err error) { } break + case TarBzip2: + tr = io.NopCloser(bzip2.NewReader(tr)) + break + default: return os.ErrInvalid }