Skip to content

Commit 11b4b5c

Browse files
committed
added compression option
1 parent ad98a59 commit 11b4b5c

4 files changed

Lines changed: 12 additions & 0 deletions

File tree

Sources/quickpkg/InputType.swift

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,8 @@ enum Ownership: String, ExpressibleByArgument, CaseIterable {
1818
case preserve
1919
case preserveOther = "preserve-other"
2020
}
21+
22+
enum Compression: String, ExpressibleByArgument, CaseIterable {
23+
case latest
24+
case legacy
25+
}

Sources/quickpkg/PackageBuilder.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ struct PackageBuilder: Sendable {
3535
installLocation: String,
3636
scripts: URL?,
3737
ownership: Ownership?,
38+
compression: Compression,
3839
relocatable: Bool,
3940
minOSVersion: String?,
4041
sign: String?,
@@ -76,6 +77,8 @@ struct PackageBuilder: Sendable {
7677
arguments += ["--ownership", ownership.rawValue]
7778
}
7879

80+
arguments += ["--compression", compression.rawValue]
81+
7982
if let minOSVersion = minOSVersion {
8083
arguments += ["--min-os-version", minOSVersion]
8184
logger.log("Minimum OS version: \(minOSVersion)", level: 1)

Sources/quickpkg/QuickPkg.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@ struct QuickPkg: AsyncParsableCommand {
4141
@Option(help: "Ownership setting: recommended, preserve, or preserve-other")
4242
var ownership: Ownership?
4343

44+
@Option(help: "Compression type: latest or legacy (default: latest)")
45+
var compression: Compression = .latest
46+
4447
@Option(name: [.customLong("output"), .customLong("out"), .short],
4548
help: "Output path (supports {name}, {version}, {identifier} placeholders)")
4649
var output: String?
@@ -262,6 +265,7 @@ struct QuickPkg: AsyncParsableCommand {
262265
installLocation: installLocation,
263266
scripts: scriptsDir,
264267
ownership: ownership,
268+
compression: compression,
265269
relocatable: relocatable,
266270
minOSVersion: metadata.minimumSystemVersion,
267271
sign: sign,

0 commit comments

Comments
 (0)