Comment dire à Chrome quoi faire avec un lien magnétique?


67

À l'heure actuelle, Chrome jette son tablier par-dessus sa tête et appelle Firefox, ce qui ouvre le lien avec rtorrent. Que dois-je faire pour éliminer l’étape Firefox?


Quelle version de Google Chrome utilisez-vous? google-chrome -version
Alvar

C'est ce qui m'est arrivé (sur Ubuntu 14.04.2 LTS) lorsque Firefox a été défini comme navigateur par défaut. Si Chromium a été défini comme navigateur par défaut, un nouvel onglet vide est disponible dans Chromium. - En fin de compte, j'ai résolu le problème en corrigeant mon message, /usr/bin/xdg-opencomme suggéré dans la réponse acceptée à la rubrique " Liens magnétiques torrent ouverts dans une nouvelle fenêtre mais sans transmission ".
Zrajm

Réponses:


90

La gestion du protocole Chrome (ou Chromium) fonctionne différemment de celle de Firefox. En gros, Firefox garde la trace de tout cela, c’est pourquoi vous pouvez configurer la gestion des protocoles (comme les liens magnétiques) dans la partie Applications des Préférences . Chrome, cependant, repose sur xdg-open.

Il y a quelques choses que vous devez faire avant de xdg-opengérer correctement les liens magnétiques.

  1. Recherchez le nom du fichier de bureau du programme avec lequel vous souhaitez gérer le lien magnétique. Supposons que le programme est Transmission. Comme d'habitude, il contient son fichier de bureau /usr/share/applications/et, en fait, en parcourant la liste du répertoire, je constate que ma version de transmission est en fait la version gtk. Son fichier de bureau est appelé transmission-gtk.desktop.

  2. Il est possible que le fichier desktop soit foiré. Donc, vous pouvez vérifier que /usr/share/applications/transmission-gtk.desktopcontient les lignes:

    Exec=transmission-gtk %U
    [some lines omitted]
    MimeType=application/x-bittorrent;x-scheme-handler/magnet;
    

    Notez le %Udans la ligne Exec. C'est absolument nécessaire. La ligne MimeType devrait ressembler à celle ci-dessus.

  3. Passons maintenant à l’étape essentielle à suivre xdg-openpour ouvrir des liaisons magnétiques à l’aide de Transmission. Dans le terminal, tapez:

    xdg-mime default transmission-gtk.desktop x-scheme-handler/magnet 
    
  4. ( Étape non nécessaire si vous utilisez Gnome, KDE, Xfce ou LXDE ) Enfin, xdg-opensupposons que vous utilisez l'un des environnements de bureau standard: gnome, kde, xfce et lxde. Si vous ne l'êtes pas, xdg-openne travaillerez pas sur les liaisons magnétiques. Comme suggéré sur le wiki Arch , vous pouvez simplement modifier /usr/bin/xdg-open. À la fin du fichier, vous trouverez une partie commençant par:

    detectDE
    if [ x"$DE" = x"" ]; then
       DE=generic
    

    modifier genericl'une de gnome, kde, xfce, ou lxde. J'ai choisi xfcedepuis que j'ai réellement une session Xfce que j'ai configurée et utilisée à l'occasion.

    L'inconvénient de cette approche est que si xdg-openvous obtenez des mises à jour, vous devrez recommencer. Arch wiki suggère une autre approche qui évite cette faille (mais a ses propres inconvénients).

    Avertissement: le choix dans la dernière étape est plus important qu'il n'y parait. La cueillette lxden'a pas fonctionné pour moi! Dans xdg-open, la fonction d'assistance open_lxdes'appuie sur pcmanfm(gestionnaire de fichiers lxde) et quelque chose ne va pas avec le code dans open_lxdeou peut-être que c'est sa pcmanfmfaute.


7
Je vous remercie! Je viens juste xdg-mime default deluge.desktop x-scheme-handler/magnetde l'associer à Deluge.
Justin Force

1
J'ai un problème (probablement) lié . J'ai essayé votre solution mais ça ne marche pas.
Quinn Culver

2
Comment Linux peut-il réussir, alors que les experts, sans parler des noobs, ne peuvent pas le faire fonctionner? J'utilise Linux de préférence tous les jours, mais l'expérience de l'ordinateur de bureau n'est pas suffisante. Bonne chance à SteamOS.
Sam Watkins

2
Je voulais aussi dire merci pour la réponse, cela a très bien fonctionné. Étant donné que je suis sous Linux Mint et que j'utilise MATE au lieu de GNOME, je devais passer à l'étape 4. Étrangement, matecela ne fonctionnait pas (ce à quoi je m'attendais depuis que j'utilise MATE), mais je l'ai gnomefait.
machineghost

1
@ machineghost merci pour votre commentaire: je suis aussi sur MATE et cette réponse + votre commentaire l'ont réglé pour moi.
Max Williams

6

Il suffit de faire glisser le lien de l’aimant dans la fenêtre Transmission et cela fonctionne pour moi sans aucun ajustement .... J'utilise une version de base de Lubuntu 12.10 rien d’extraordinaire ....


C'est une autre approche et je l'aime bien. Mais cela ne résout pas le problème lorsque le lien magnétique est ouvert automatiquement et cela nécessite beaucoup d'interaction de l'utilisateur (clics) lorsque la transmission n'est pas déjà en cours.
Joel Sjögren le

2

Très bien travaillé pour ouvrir des aimants de Chrome avec qBitorrent à Lubuntu

xdg-mime par défaut qBittorrent.desktop x-scheme-handler / magnet


1

si vous utilisez xfce et que vous ne voulez rien déranger, vous pouvez utiliser ma solution. J'ai corrigé en modifiant manuellement xdg-open comme suit:

Tout d’abord, assurez-vous d’avoir le mime associé (comme expliqué précédemment, avec xdg-mime)

Puis sauvegardez xdg-open en tant que root (sudo si cela s'applique)

# cp /usr/bin/xdg-open /usr/bin/xdg-open.old

Enfin, éditez en tant que root / usr / bin / xdg-open, recherchez open_xfce () et ajoutez les lignes marquées avec +, par exemple, avec nano

# nano /usr/bin/xdg-open

open_xfce()
+ if [ "\`echo $1 | sed -n 's/\(^[[:alnum:]+\.-]*\):.*$/\1/p'\`" == "magnet" ]; then
+     gnome-open "$1"
+ else
      exo-open "$1"
+ fi

il ajoute seulement l'exception pour les liens d'aimants, ils seront donc ouverts avec gnome-open au lieu d'exo-open.

J'espère que ça aide.


1

Aucune des autres suggestions que j'ai trouvées n'a fonctionné pour moi, mais cela a été efficace sous Debian / Xfce (extrait de http://fluxcode.net/archives/57 ):

Dans / usr / bin / xdg-open, ajoutez les lignes suivantes à open_xfce ()

open_xfce()
{
 if(echo "$1" | grep -q '^magnet:'); then
    transmission-gtk "$1" 
    if [ $? -eq 0 ]; then
       exit_success
    fi
 fi

exo-open "$1"


0

Utiliser gnome-open sur XFCE a fonctionné pour moi.

Ceci peut être forcé avec l'édition / usr / bin / xdg-open et change

if [ x"$DE" = x"" ]; then
  DE=generic
fi

à

if [ x"$DE" = x"" ]; then
  DE=generic
fi
DE=gnome

0

Cela fonctionne pour moi dans Ubuntu 18 avec FF (pour le déluge):

gio mime x-scheme-handler/magnet deluge.desktop

Je sais que cela ne répond pas à la question, mais j'utilise aussi Chrome et c'est un meilleur moyen de contourner le problème que de copier et coller le lien magnétique.


-1

J'ai mélangé quelques réponses (cela n'a malheureusement pas fonctionné pour moi) et j'ai trouvé quelque chose qui l'a fait fonctionner comme un charme! De toute façon, cela fonctionnait sous Linux Mint 16 sous XFCE.

Faites une sauvegarde de xdg-open sous / usr / bin, ouvrez votre xdg-open avec sudo puis faites fonctionner open_xfce () exactement comme ceci:

open_xfce()
{    
    if (echo "$1" | grep -q '^magnet:'); then
        gnome-open "$1"
    else
        exo-open "$1"
    fi
}

C'est sale et vous devez l'éditer à chaque mise à jour de xdg-open, mais bon, ça marche!


-1

Pendant des années, j'ai essayé de résoudre ce problème et de passer à Chrome. Rien ne semble fonctionner. J'ai finalement pensé que je ne savais pas pourquoi je n'y avais pas pensé auparavant et cela fonctionne très bien. J'utilise Tixati dans Mint mais cela devrait fonctionner universellement. Les points chromés aimant liens vers usr / bin / transmission-gtk, j'ai donc renommé transmission-gtk.old et renommé tixati en transmission-gtk. Tixati comme Firefox. Problème enfin résolu!

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.