From f8dc8ee6d1ae245c33ca20afefbd9740fd0144ef Mon Sep 17 00:00:00 2001 From: Jan Lindemann Date: Wed, 18 Feb 2026 13:29:43 +0100 Subject: [PATCH] jw.pkg.lib.util.run_cmd(): Honour env in PTY mode The evironment passed to run_cmd() via env is currently not honoured with mode:interactive. Fix that. Signed-off-by: Jan Lindemann --- src/python/jw/pkg/lib/util.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/python/jw/pkg/lib/util.py b/src/python/jw/pkg/lib/util.py index 9378c8a2..5cc92e4b 100644 --- a/src/python/jw/pkg/lib/util.py +++ b/src/python/jw/pkg/lib/util.py @@ -104,6 +104,15 @@ async def run_cmd( ) def _spawn(): + # Apply env in PTY mode by temporarily updating os.environ around spawn. + if env: + old_env = os.environ.copy() + try: + os.environ.update(env) + return pty.spawn(args, master_read=reader) + finally: + os.environ.clear() + os.environ.update(old_env) return pty.spawn(args, master_read=reader) __check_exit_code(await asyncio.to_thread(_spawn))