web-dev-qa-db-ja.com

Chromeマグネットリンクをどうするかを伝える方法は?

現在、Chromeはエプロンを頭の上に投げ、Firefoxを呼び出します。これにより、rtorrentでリンクが開かれます。 Firefoxの手順をなくすには何をする必要がありますか?

67
BevA

Chrome(またはChromium)プロトコルの処理は、Firefoxとは異なります。 Firefoxは基本的にすべてを追跡します。そのため、 環境設定のアプリケーション部分 でプロトコル処理(マグネットリンクなど)を設定できます。ただし、Chromeはxdg-openに依存しています。

xdg-openがマグネットリンクを適切に処理する前に行う必要があることがいくつかあります。

  1. マグネットリンクを処理するプログラムのデスクトップファイルの名前を見つけます。プログラムがTransmissionであるとします。 (通常のように)デスクトップファイルは/usr/share/applications/にあり、実際、ディレクトリのリストを熟読すると、送信のバージョンが実際にはgtkバージョンであることがわかります。そのため、デスクトップファイルはtransmission-gtk.desktopと呼ばれます。

  2. デスクトップファイルが台無しになる可能性があります。したがって、/usr/share/applications/transmission-gtk.desktopに次の行が含まれていることを確認できます。

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

    Exec行の%Uに注意してください。絶対に必要です。 MimeType行は上記のようになります。

  3. ここで、xdg-openにTransmissionを使用してマグネットリンクを開くように指示するための重要な手順があります。ターミナルで、次のように入力します。

    xdg-mime default transmission-gtk.desktop x-scheme-handler/magnet 
    
  4. Gnome、KDE、Xfce、またはLXDEを使用する場合、手順は不要です)最後に、xdg-openは、標準のデスクトップ環境(gnome、kde、xfce、およびlxde)のいずれかを実行していると想定します。そうでない場合、xdg-openはマグネットリンクでは機能しません。 Arch wikiで推奨 のように、単に/usr/bin/xdg-openを変更できます。ファイルの最後に、次で始まる部分があります。

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

    genericgnomekdexfce、またはlxdeのいずれかに変更します。 xfceを選択したのは、実際に構成して使用するXfceセッションがあるためです。

    このアプローチの欠点は、xdg-openが更新を取得した場合、これをやり直す必要があることです。 Arch wikiでは、この欠陥を回避する別のアプローチを提案しています(ただし、独自の欠点があります)。

    警告:最後のステップでの選択は、見かけよりも重要です。 lxdeを選択してもうまくいきませんでした! xdg-openでは、ヘルパー関数open_lxdepcmanfm(lxdeファイルマネージャー)に依存しており、open_lxdeのコードまたはおそらくpcmanfmのフォールトのいずれかに問題があります。

90
Chan-Ho Suh

マグネットリンクを[送信]ウィンドウにドラッグするだけで、微調整なしで正常に動作します。..Lubuntu 12.10のストックビルドを使用しています。

6
khorosho

UbuntuのqBittorrentでChromeからマグネットを開くために非常にうまく機能しました

2
Mariuz

私が見つけた他の提案はどれもうまくいきませんでしたが、これはDebian/Xfcehttp:// fluxcode。 net/archives/57 ):

/ usr/bin/xdg-openで、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"
1
Tom

xfceを使用し、何も台無しにしたくない場合は、私のソリューションを使用できます。次のようにxdg-openを手動で編集して修正しました。

まず、MIMEが関連付けられていることを確認します(前に説明したように、xdg-mimeを使用)

次に、xdg-openをルートとしてバックアップします(該当する場合はSudo)

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

最後に、ルート/ usr/bin/xdg-openとして編集し、open_xfce()を見つけて、+でマークされた行を追加します(例: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

マグネットリンクの例外を追加するだけなので、exo-openではなくgnome-openで開きます。

それが役に立てば幸い。

これは、FF(大洪水)を使用したubuntu 18で機能します。

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

私はそれが質問に答えないことを知っていますが、Chromeも使用します。これはマグネットリンクをコピーして貼り付けるよりも優れた回避策です。

0
uvasal

Alt.os.linux.slackwareの男が解決策を見つけました。

http://www.void.gr/kargig/blog/2012/01/24/open-magnet-urls-with-xdg-open/

0
BevA

XFCEでgnome-openを使用するとうまくいきました。

これは、/ usr/bin/xdg-openを編集して変更することで強制できます。

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

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