From: Daan De Meyer Date: Wed, 15 Feb 2023 15:16:55 +0000 (+0100) Subject: Simplify should_compress_output(), default to zstd and compress cpios X-Git-Tag: v15~314^2~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e55dcdcb7341bbbe6620946c418a2592161d3325;p=thirdparty%2Fmkosi.git Simplify should_compress_output(), default to zstd and compress cpios --- diff --git a/mkosi/__init__.py b/mkosi/__init__.py index 496c352dc..f384ec404 100644 --- a/mkosi/__init__.py +++ b/mkosi/__init__.py @@ -2820,7 +2820,7 @@ def print_summary(config: MkosiConfig) -> None: print(" SSH port:", config.ssh_port) print(" Incremental:", yes_no(config.incremental)) - print(" Compression:", yes_no_or(should_compress_output(config))) + print(" Compression:", should_compress_output(config) or "no") if config.output_format == OutputFormat.disk: print(" QCow2:", yes_no(config.qcow2)) diff --git a/mkosi/backend.py b/mkosi/backend.py index 3868cc6b7..a1024bf8c 100644 --- a/mkosi/backend.py +++ b/mkosi/backend.py @@ -433,19 +433,19 @@ class MkosiState: return self.workspace / "staging" -def should_compress_output(config: Union[argparse.Namespace, MkosiConfig]) -> Union[bool, str]: - """A string or False. +def should_compress_output(config: Union[argparse.Namespace, MkosiConfig]) -> Optional[str]: + """A string or None. When explicitly configured with --compress-output=, use that. Since we have complete freedom with selecting the outer compression algorithm, pick some default when True. """ c = config.compress_output - if c is None and config.output_format == OutputFormat.tar: + if c is None and config.output_format in (OutputFormat.tar, OutputFormat.cpio): c = True if c is True: - return "xz" # default compression - return False if c is None else c + return "zstd" # default compression + return c if c else None def format_rlimit(rlimit: int) -> str: