 
  
  
    A native GTK4 desktop app for editing and validating your ~/.ssh/config.
Search, edit, and validate SSH hosts with a clean UI — no need to touch terminal editors.
- Visual host editor – Edit common fields (Host, HostName, User, Port, IdentityFile, ForwardAgent, etc.).
- Inline validation – Field-level errors shown directly under inputs; parser checks for duplicates and invalid ports.
- Search and filter – Quickly find hosts across aliases, hostnames, users, and identities.
- Raw/Diff view – Edit raw ssh_configtext with instant diff highlighting.
- Quick actions – Copy SSH command, test connection, and revert changes.
- SSH Key Management – Import, generate, and use your keys without leaving the app.
- Safe saves – Automatic backups (configurable), atomic writes, and include support.
- Keyboard & mouse friendly – Smooth GTK 4 UI with dark theme preference.
- Translations – Ready for localization (gettext support via po/).
You can install SSH Studio from AUR here.
You can build and run with GNOME Builder or flatpak-builder:
flatpak-builder --user --force-clean --install-deps-from=flathub build-dir io.github.BuddySirJava.SSH-Studio.json --install
# Run
flatpak run io.github.BuddySirJava.SSH-StudioIf "Test SSH Connection" fails, grant the sandbox the Flatpak talk permission:
flatpak override --user --talk-name=org.freedesktop.Flatpak io.github.BuddySirJava.SSH-Studio
flatpak run io.github.BuddySirJava.SSH-StudioIf you're unsure of your app ID, list installed Flatpak apps:
flatpak listThen use the correct app ID with the override command. For example, if you have VS Code installed:
flatpak override --user --talk-name=org.freedesktop.Flatpak com.visualstudio.code- src/ssh_config_parser.py→ Parse/validate/generate SSH config safely.
- src/ui/→ Main App Components (- MainWindow,- HostList,- HostEditor,- SearchBar,- PreferencesDialog,- TestConnectionDialog,- SSH Key Manager,- Welcome View).
- data/ui/*.ui→ GTK Builder UI blueprints.
- data/ssh-studio.gresource.xml→ GResource manifest.
- data/media/→ App icon and screenshots.
- src/main.py→ Application entry point.
- meson.build,- data/meson.build,- src/meson.build→ Build and install rules.
- io.github.BuddySirJava.SSH-Studio.json→ Flatpak manifest.
- po/→ Translations.
Requirements:
- Python 3.12+
- GTK 4 / libadwaita 1.4+
- Meson & Ninja
- Flatpak / flatpak-builder
Clone and run in dev mode:
git clone https://github.com/BuddySirJava/SSH-Studio.git
cd SSH-Studio
meson setup builddir
meson compile -C builddir
./builddir/src/ssh-studioContributions are welcome!
- Report bugs or request features in the issue tracker.
- Submit pull requests with improvements, translations, or new features.
- Follow GNOME HIG for UI changes.
This project is licensed under the GNU GPLv3.
See LICENSE for details.
- Open an issue on GitHub.
- Check Flathub page.

