From b72c417510f16a946ced2d396f7320ae663205d9 Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Thu, 16 Apr 2026 13:34:59 +0200 Subject: [PATCH] cmds.posix.CmdCopy: Support platform macros Expand platform macros (as in %{codename}) in the src and dst command arguments. Expansion can be turned off by -F --fixed-strings. Signed-off-by: Jan Lindemann --- src/python/jw/pkg/cmds/posix/CmdCopy.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/python/jw/pkg/cmds/posix/CmdCopy.py b/src/python/jw/pkg/cmds/posix/CmdCopy.py index 65b7e9c5..da819e5c 100644 --- a/src/python/jw/pkg/cmds/posix/CmdCopy.py +++ b/src/python/jw/pkg/cmds/posix/CmdCopy.py @@ -22,6 +22,13 @@ class CmdCopy(Cmd): # export parser.add_argument('-o', '--owner', default=None, help='Destination file owner') parser.add_argument('-g', '--group', default=None, help='Destination file group') parser.add_argument('-m', '--mode', default=None, help='Destination file mode') + parser.add_argument('-F', '--fixed-strings', action='store_true', + help='Don\'t expand platform info macros in and ') async def _run(self, args: Namespace) -> None: - await copy(args.src, args.dst, owner=args.owner, group=args.group, mode=args.mode) + def __expand(url: str) -> str: + if args.fixed_strings: + return url + return self.app.distro_info(url) + await copy(__expand(args.src), __expand(args.dst), + owner=args.owner, group=args.group, mode=args.mode)