From 3f273ca37ac9d8be9b333834a39cab3c9be0ba95 Mon Sep 17 00:00:00 2001 From: saphid <4596216+saphid@users.noreply.github.com> Date: Wed, 30 Sep 2026 12:07:39 +1000 Subject: [PATCH] Remote desktop on Windows: say to choose Connect on mstsc's file prompt Seen on Windows 11: an unsigned .rdp file makes mstsc ask about the publisher before the certificate warning. Plain '>' in the message, which a cp1252 console can print. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/test_rdp.py | 1 + ui/frame_host.py | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tests/test_rdp.py b/tests/test_rdp.py index eed2f85..814517e 100644 --- a/tests/test_rdp.py +++ b/tests/test_rdp.py @@ -66,6 +66,7 @@ class OpenRdp(unittest.TestCase): self.assertIn("steamos", message) self.assertIn("Developer Mode password", message) self.assertIn("certificate", message) + self.assertIn("Connect", message) def test_nothing_listening_says_why_and_opens_nothing(self): self.xrdp.close() diff --git a/ui/frame_host.py b/ui/frame_host.py index c5c028c..9407de9 100644 --- a/ui/frame_host.py +++ b/ui/frame_host.py @@ -298,7 +298,7 @@ def open_rdp(alias, host=None): # The client would open either way and then fail on its own, with nothing said here. if not rdp_reachable(host): raise HostError(f"The Frame isn't accepting remote desktop at {host} (nothing answered on port " - f"{RDP_PORT}). Turn on Developer Mode in Steam Settings → System on the headset, " + f"{RDP_PORT}). Turn on Developer Mode in Steam Settings > System on the headset, " "then restart it and try again.") if MAC: if subprocess.run(["open", "-a", "Windows App"], capture_output=True).returncode == 0: @@ -307,7 +307,8 @@ def open_rdp(alias, host=None): return "Windows App isn't installed; opened its App Store page" if WINDOWS: _spawn(["mstsc.exe", str(rdp_file(host))]) - return f"Opened Remote Desktop to {host}: {RDP_LOGIN}" + # Windows asks about the unsigned connection file first. + return f"Opened Remote Desktop to {host}: choose Connect, {RDP_LOGIN}" if which("remmina"): _spawn(["remmina", "-c", f"rdp://{RDP_USER}@{host}"]) return f"Opened Remmina to {host}: {RDP_LOGIN}"