Comment remplacer le gestionnaire SSH Gnome 3?


11

Je voudrais être en mesure de cliquer sur les liens SSH qui ressemblent ssh://user@servernameet ont une ouverture gnome-terminal qui exécute SSH à l' intérieur de celui - ci.

Après avoir lu les trucs XDG, j'ai fait ce qui suit:

J'ai créé un script shell dans $ HOME / bin / ssh-terminal avec ce qui suit:

#!/bin/sh
dest=${1#ssh://}
gnome-terminal -e "ssh $dest" &

Cela fonctionne à partir de la ligne de commande.

J'ai créé $ HOME / .local / share / applications / ssh-terminal.desktop avec:

[Desktop Entry]
Type=Application
Name=SSH Terminal
Exec=ssh-terminal %u
Icon=utilities-terminal
StartupNotify=false
MimeType=x-scheme-handler/ssh;

L'Iran update-desktop-database ~/.local/share/applications/

Maintenant, quand j'essaye de courir, xdg-open ssh://user@hostnamej'obtiens l'erreur suivante:

$ xdg-open ssh://buildbot@10.16.50.74
gvfs-open: sftp://buildbot@10.16.50.74/: error opening location: The specified location is not mounted

Je ne veux pas l'ouvrir en tant que montage sftp et je n'arrive pas à trouver où cela est réglé!

Où dois-je aller d'ici?

Réponses:


7

Écrire un .desktopfichier ne suffit pas. Vous devez également modifier le paramètre par défaut pour le type MIME.

Vous pouvez obtenir la valeur par défaut actuelle avec

 xdg-mime query default x-scheme-handler/ssh

et peut le changer avec

 xdg-mime default ssh-terminal.desktop x-scheme-handler/ssh

Le fichier de configuration correspondant peut être $HOME/.config/mimeapps.listou $HOME/.local/share/applications/mimeapps.listselon la version de votre système d'exploitation.


Désolé pour la fin d'accepter. Cela n'a pas fonctionné au moment où j'ai posé la question, mais je l'ai essayé récemment et c'est le cas maintenant. Merci.
Zan Lynx

Pour conserver cette excellente réponse dans le temps, dans Ubuntu 18.04 LTS, le fichier de configuration correspondant est maintenant dans $HOME/.config/mimeapps.list. Au moins pour moi, celui répertorié ici ~/.local/share/applicationsest de 0 octet.
Michael Campbell

@MichaelCampbell merci, j'ai mis à jour la réponse.
jofel

1

Rien de tout cela n'a fonctionné pour moi jusqu'à ce que j'édite le fichier suivant et supprime la SchemeAliasligne/usr/share/gvfs/mounts/sftp.mount

[Mount]
Type=sftp
Exec=/usr/lib/gvfs/gvfsd-sftp
AutoMount=false
Scheme=sftp
# SchemeAliases=ssh
DefaultPort=22
HostnameIsInetAddress=true

Pour quiconque rencontre cela (je l'ai fait), vous devez redémarrer Gnome / Unity / Cinnamon pour que cela prenne effet. Si vous ne savez pas comment, le redémarrage de votre ordinateur devrait faire l'affaire.
ocket8888
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.