From: Daan De Meyer Date: Sat, 2 Mar 2024 13:26:29 +0000 (+0100) Subject: Get rid of line_join_tree_list() X-Git-Tag: v21~21^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f6821162ce1d6f6fa12f9c75df6dfee3f5f192e0;p=thirdparty%2Fmkosi.git Get rid of line_join_tree_list() --- diff --git a/mkosi/__init__.py b/mkosi/__init__.py index 74e20fe30..27786d617 100644 --- a/mkosi/__init__.py +++ b/mkosi/__init__.py @@ -40,7 +40,6 @@ from mkosi.config import ( Verb, __version__, format_bytes, - format_tree, parse_config, summary, systemd_tool_version, @@ -1577,7 +1576,7 @@ def build_default_initrd(context: Context) -> Path: *(["--mirror", context.config.mirror] if context.config.mirror else []), "--repository-key-check", str(context.config.repository_key_check), "--repositories", ",".join(context.config.repositories), - "--package-manager-tree", ",".join(format_tree(t) for t in context.config.package_manager_trees), + "--package-manager-tree", ",".join(str(t) for t in context.config.package_manager_trees), # Note that when compress_output == Compression.none == 0 we don't pass --compress-output which means the # default compression will get picked. This is exactly what we want so that initrds are always compressed. *(["--compress-output", str(context.config.compress_output)] if context.config.compress_output else []), diff --git a/mkosi/config.py b/mkosi/config.py index a82c30122..d5fc961b8 100644 --- a/mkosi/config.py +++ b/mkosi/config.py @@ -124,6 +124,9 @@ class ConfigTree: def with_prefix(self, prefix: Path = Path("/")) -> tuple[Path, Path]: return (self.source, prefix / os.fspath(self.target).lstrip("/") if self.target else prefix) + def __str__(self) -> str: + return f"{self.source}:{self.target}" if self.target else f"{self.source}" + @dataclasses.dataclass(frozen=True) class QemuDrive: @@ -3431,24 +3434,8 @@ def none_to_default(s: Optional[object]) -> str: return "default" if s is None else str(s) -def line_join_list(array: Iterable[PathString]) -> str: - if not array: - return "none" - - items = (str(none_to_none(cast(Path, item))) for item in array) - return "\n ".join(items) - - -def format_tree(tree: ConfigTree) -> str: - return f"{tree.source}:{tree.target}" if tree.target else f"{tree.source}" - - -def line_join_tree_list(array: Sequence[ConfigTree]) -> str: - if not array: - return "none" - - items = [format_tree(tree) for tree in array] - return "\n ".join(items) +def line_join_list(array: Iterable[object]) -> str: + return "\n ".join(str(item) for item in array) if array else "none" def format_bytes(num_bytes: int) -> str: @@ -3493,7 +3480,7 @@ def summary(config: Config) -> str: Repo Signature/Key check: {yes_no(config.repository_key_check)} Repositories: {line_join_list(config.repositories)} Use Only Package Cache: {config.cacheonly} - Package Manager Trees: {line_join_tree_list(config.package_manager_trees)} + Package Manager Trees: {line_join_list(config.package_manager_trees)} {bold("OUTPUT")}: Output Format: {config.output_format} @@ -3522,8 +3509,8 @@ def summary(config: Config) -> str: With Documentation: {yes_no(config.with_docs)} Base Trees: {line_join_list(config.base_trees)} - Skeleton Trees: {line_join_tree_list(config.skeleton_trees)} - Extra Trees: {line_join_tree_list(config.extra_trees)} + Skeleton Trees: {line_join_list(config.skeleton_trees)} + Extra Trees: {line_join_list(config.extra_trees)} Remove Packages: {line_join_list(config.remove_packages)} Remove Files: {line_join_list(config.remove_files)} @@ -3535,7 +3522,7 @@ def summary(config: Config) -> str: Build Scripts: {line_join_list(config.build_scripts)} Postinstall Scripts: {line_join_list(config.postinst_scripts)} Finalize Scripts: {line_join_list(config.finalize_scripts)} - Build Sources: {line_join_tree_list(config.build_sources)} + Build Sources: {line_join_list(config.build_sources)} Build Sources Ephemeral: {yes_no(config.build_sources_ephemeral)} Script Environment: {line_join_list(env)} Environment Files: {line_join_list(config.environment_files)} @@ -3609,7 +3596,7 @@ def summary(config: Config) -> str: Tools Tree Release: {none_to_none(config.tools_tree_release)} Tools Tree Mirror: {none_to_default(config.tools_tree_mirror)} Tools Tree Packages: {line_join_list(config.tools_tree_packages)} - Runtime Trees: {line_join_tree_list(config.runtime_trees)} + Runtime Trees: {line_join_list(config.runtime_trees)} Runtime Size: {format_bytes_or_none(config.runtime_size)} Runtime Scratch: {config.runtime_scratch} SSH Signing Key: {none_to_none(config.ssh_key)}