Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

BuddySirJava/SSH-Studio

Open more actions menu

Repository files navigation

App Icon

SSH-Studio

Persian GNOME

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.

License Flathub Installs


Preview

Main Interface Preferences Dialog

Features

  • 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_config text 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/).

Install

From AUR

You can install SSH Studio from AUR here.

From Flathub

Download on Flathub

Build from source

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-Studio

Troubleshooting Flatpak Sandbox

If "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-Studio

Finding Your App ID

If you're unsure of your app ID, list installed Flatpak apps:

flatpak list

Then 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

Project structure

  • 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.

Development

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-studio

Contributing

Contributions 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.

License

This project is licensed under the GNU GPLv3.
See LICENSE for details.


Support & Contact

Morty Proxy This is a proxified and sanitized view of the page, visit original site.