Add SSH Switch v0.2.2 - #1127
nicholasyoannou wants to merge 1 commit into
Conversation
Issues FoundNo issues with your PR description were found. Next Steps
Thank you for your contribution! If you need any help, please reach out on our Discord server. ❤️ |
|
"Connect from computer" lists only IPv4 addresses (main.py:152). The mount scripts reject IPv6 addresses (mount-unix.sh:14, mount-windows.ps1:19), so the helpers fail on an IPv6-only network. Other than this, LGTM, tested on SteamOS Beta Channel |
d9bedf6 to
3eb2888
Compare
3eb2888 to
dae904e
Compare
|
@spmzt Thanks for your comment, appreciate the feedback. I've added IPv6 support to the "Connect from computer" popup displayed, and compatibility in the scripts for IPv6 also. It will only show the IPv6/IPv4 based on if it's enabled. SteamOS seemingly silently switched IPv6 back on by default for some (see ValveSoftware/SteamOS#2024) but oddly I've tested it on my own Steam Deck and the IPv6 loopback is disabled when it's already connected via IPv4 (SteamOS dual-stack network problem). Personal router supports IPv4 and IPv6 but oddly IPv6 is disabled on my Deck. I've tested this with your IPv6 enabler plugin #1130 and can verify IPv6 connectivity works as intended. I've left some feedback on your referenced PR also. Have tested #1128. I've also added a quick QOL update for the connectivity scripts to change the default |
|
Tested again on my Steamdeck, LGTM. P.S. Not related to this PR, but could you please use |
Add SSH Switch to Plugin Store
SSH Switch 0.2.1 is a simple plugin that provides SSH controls in Decky's Quick Access Menu, allowing you to control startup of the SSH service, alongside an assistant companion on PC to mount the Deck over SFTP/SSHFS (OS-dependant).
The release on the Decky SSH Switch repository also provides companion SSHFS mount and unmount helpers for Windows, Linux and macOS. These run on the user's computer, which can be used alongside the "Connect from Computer" popup for ease of connection. Windows also supports persistent drives and optional saved settings, with the saved password encrypted for that Windows account. The "Connect from Computer" popup adds SSH management alongside the interface information shown by Decky Network Info.
Task Checklist
Developer
Regarding AI Use: I've used GPT-6 Astra to assist with parts of the implementation, debugging and code review. I’ve modified and tested the Decky plugin on my Steam Deck and the Windows companion scripts on Windows 11.
Plugin
I've tested and verified the plugin on both update channels on SteamOS (Steam Deck).
Similar functionality has been proposed in Easy SSH (#1034), which remains open (but stale), and Decky SSH (#1104), which was closed without merging. Both provide SSH controls from the Quick Access Menu, and Decky SSH also includes password changes with current-password verification.
SSH Switch shares those features and adds separate control over whether SSH starts at boot, along with a “Connect from computer” screen showing the connection details, host fingerprint and available remote folders. The companion mount and unmount scripts for Windows, Linux and macOS use those details to help users access their Deck’s files from their computer, with the Windows script inspired by MonroeWorld's script as a base. This connection and file-access workflow is the main additional functionality offered by this submission.
Backend
The backend is Python and uses systemctl, sshd and chpasswd. It also dynamically loads SteamOS’s libcrypt.so.1 for password verification and hashing. The plugin does not bundle or download additional native binaries. The companion mounting scripts run separately on the user’s computer.
Community
Testing