14

Every time I download a torrent file (.torrent), Firefox thinks I should open it with a text editor. How can I get it to open with Transmission? In Edit -> Preferences -> Applications, there's no setting for torrent files, and no apparent way to add a new filetype.

7
  • Are you refering to .magnet files?
    – xangua
    Nov 30, 2013 at 23:38
  • .torrent files. I'll edit the question to reflect this.
    – Jonathan
    Nov 30, 2013 at 23:49
  • 1
    With a torrent file downloaded, execute xdg-mime query filetype some.torrent
    – Braiam
    Dec 1, 2013 at 0:00
  • 2
    when you open directly(I mean from the file manager it self), does it open from Transmission ? Dec 7, 2013 at 4:49
  • 1
    interesting news (6 December, 2013)... Ubuntu to include torrent search in Dash search
    – rusty
    Dec 16, 2013 at 8:01

7 Answers 7

26
+50

Method (I): Using Firefox's Preferences menu: (preferred)

A. From Firefox's global menu, select Edit -> Preferences (or press Alt + E followed by N) to open Firefox Preferences.

(Snapshot taken in Ubuntu 12.04) 1

B. Select the Applications menu and search for BitTorrent seed file or application/x-bittorrent or torrent. Change the Always ask or Use gedit (default) to transmission-gtk by selecting Use other... and click File System in the side bar, then browse to /usr/bin.

2

C. In /usr/bin search for transmission-gtk and double click to open.

3

D. That's it! Now the .torrent files will be opened with transmission.

4


Method (2): Editing the mimeTypes.rdf file:

Step 1:

Open the mimeTypes.rdf file with text editor of your choice:

gedit ~/.mozilla/firefox/ythemo16.default/mimeTypes.rdf &

(Save a backup of this file.) Search for the container:

<RDF:Seq RDF:about="urn:mimetypes:root">
 ...
 ...

</RDF:Seq>

and insert this:

<RDF:li RDF:resource="urn:mimetype:application/x-bittorrent"/>

so that, now the container looks something like this:

<RDF:Seq RDF:about="urn:mimetypes:root">
 ...
 ...

 <RDF:li RDF:resource="urn:mimetype:application/x-bittorrent"/>
</RDF:Seq>

(step 1 snapshot) mimeType-edit-snap1

Step 2:

Now, within the container:

<RDF:RDF ... ...>
 ...
 ...
 
 ...
 ...

</RDF:RDF>

insert these:

<RDF:Description RDF:about="urn:mimetype:handler:application/x-bittorrent"
               NC:alwaysAsk="false"
               NC:saveToDisk="false">
 <NC:possibleApplication RDF:resource="urn:handler:local:/usr/bin/transmission-gtk"/>
 <NC:externalApplication RDF:resource="urn:mimetype:externalApplication:application/x-bittorrent"/>
</RDF:Description>
<RDF:Description RDF:about="urn:mimetype:externalApplication:application/x-bittorrent"
               NC:prettyName="transmission-gtk"
               NC:path="/usr/bin/transmission-gtk" />
<RDF:Description RDF:about="urn:handler:local:/usr/bin/transmission-gtk"
               NC:prettyName="transmission-gtk"
               NC:path="/usr/bin/transmission-gtk" />

<RDF:Description RDF:about="urn:mimetype:application/x-bittorrent"
               NC:fileExtensions="torrent"
               NC:description="BitTorrent seed file"
               NC:value="application/x-bittorrent"
               NC:editable="true">
    <NC:handlerProp RDF:resource="urn:mimetype:handler:application/x-bittorrent"/>
</RDF:Description>

so that the container will look something like this:

<RDF:RDF ... ...>
 ...
 ...
 
 ...
 ...

 <RDF:Description RDF:about="urn:mimetype:handler:application/x-bittorrent"
               NC:alwaysAsk="false"
               NC:saveToDisk="false">
  <NC:possibleApplication RDF:resource="urn:handler:local:/usr/bin/transmission-gtk"/>
  <NC:externalApplication RDF:resource="urn:mimetype:externalApplication:application/x-bittorrent"/>
 </RDF:Description>
 <RDF:Description RDF:about="urn:mimetype:externalApplication:application/x-bittorrent"
               NC:prettyName="transmission-gtk"
               NC:path="/usr/bin/transmission-gtk" />
 <RDF:Description RDF:about="urn:handler:local:/usr/bin/transmission-gtk"
               NC:prettyName="transmission-gtk"
               NC:path="/usr/bin/transmission-gtk" />

 <RDF:Description RDF:about="urn:mimetype:application/x-bittorrent"
               NC:fileExtensions="torrent"
               NC:description="BitTorrent seed file"
               NC:value="application/x-bittorrent"
               NC:editable="true">
    <NC:handlerProp RDF:resource="urn:mimetype:handler:application/x-bittorrent"/>
 </RDF:Description>
</RDF:RDF>

(step 2 snapshot) mimeType-edit-snap2

Step 3:

Save and close the file. Then restart firefox.

4
  • 2
    There is no type called "BitTorrent see file" in my list of content types, nor does there appear to be a way to add a new content type.
    – Jonathan
    Dec 9, 2013 at 3:59
  • @Jon, you might want to edit the mimeTypes.rdf file... updated my answer...
    – rusty
    Dec 9, 2013 at 5:54
  • I think you meant "Alt + E", not "Ctrl + E".
    – Ufoguy
    Dec 13, 2013 at 5:23
  • The first method didn't work because "BitTorrent seed file" didn't appear, but the second method worked. You can open you mimeTypes file with gedit ~/.mozilla/firefox/*.default/mimeTypes.rdf & and make sure to restart Firefox after editing.
    – Zephyrus
    Sep 19, 2014 at 0:33
5

Open the Firefox preferences window. Go to the Applications tab and you should see magnet on the list. Click on Always ask and if Transmission does not appear as an option then click on Use other and navigate to /usr/bin on your file system. Look for transmission or transmission-gtk and click that.

Source: How to make Firefox open magnet-links in Transmission

If magnet didn't show up in the applications tab, then you should do this via about:config as explained below:

  • Type about:config into the address bar and press Enter.
  • Right-click -> New -> Boolean -> Name: network.protocol-handler.external.magnet -> Value -> true
  • Right-click -> New -> String -> Name: network.protocol-handler.app.magnet -> Value -> /usr/bin/transmission
  • Ensure network.protocol-handler.expose-all is set to true

Source: Magnet links in Firefox using Transmission

2
  • 1
    I'm looking for a way to open .torrent files, not magnet files.
    – Jonathan
    Dec 9, 2013 at 3:57
  • sorry i was mistaken. but you can follow the steps, it would be same for both. Dec 9, 2013 at 6:12
4

Another more user-friendly way to add a new file type to the Edit -> Preferences -> Applications window is by downloading a file that has the file format you want to add, selecting any option, and selecting the "Do this automatically for files like this from now on." checkbox. Source: firefox doc.

2

Next time you download a torrent file, and the window pops up to ask what to do, give the path for the file to open with: /usr/bin/transmission-gtk and select it. All done.

2

The answer depends on whether the server sends you the correct mime type (not just the file with the right extension). You can check whether the server is sending the correct mime type by installing the Live HTTP Headers addon for Firefox. (Start the addon just before you click on the download link for the torrent file, and watch the response header, it should contain: Content-Type: application/x-bittorrent.) If it does, then Firefox will be able to open the file with the default application currently setup on your computer. In Ubuntu you can download a torrent file, then right click and select 'Properties', there you will find a way to select the default application.

If, however, the server sends .torrent as an octet-stream or some other weird mime, then Firefox will NOT do the stupid thing and open it by extension (like some broken browsers do), since that can lead to very bad results. But every so often you are willing to take a risk, you can try https://addons.mozilla.org/en-US/firefox/addon/force-content-type/, but keep in mind that this extension is considered buggy and may actually make the matters worse.

If the server is doing it wrongly, and you are not willing to take risks, you can simply have Transmission monitor your download folder and automatically add torrent files you place there. It can even remove the files after it added them. You will find that in the settings of Transmission.

P.S. Should you need a way to keep other application as the default when double clicking, but transmission only from firefox, you can follow instructions at http://forums.mozillazine.org/viewtopic.php?f=9&t=1706945

1

A little bit more up-to-date solution (here, specifically Ubuntu 16.04 + FireFox 51.0.1). Useful if "torrent" doesn't appear in the Applications Menu; specially if the prompt doesn't give you the "open with" option.

Two important things for torrents: Magnet Links and Torrent Files


Magnet Links: at the address bar, type about:config.

Proceed with caution, as told, and right-click > new > boolean; in the prompt type:

network.protocol-handler.expose.magnet

Set it to false (it's important).

Then, go to somewhere with magnet links and open one of them; it'll ask which program you want to use to handle the link. I haven't used windows for some time so I'll step aside, but in Ubuntu and some other distros you'll select a file like /usr/bin/transmission (if you use transmission).

Let's say you use Tixati or "pen-pineapple-appe-pen"; then, it would look, respectively, like /usr/bin/tixati or /usr/bin/pen-pineapple-appe-pen.

Set "use this always" or a similar option and probably you'll be good to go.


Torrent Files: there are some more arcane methods certainly, but a simple one that works --- if the download prompt doesn't give you an "open with" option --- is:

Download some random torrent file you'd like to use.

Go to the top-bar and File > Open file (or Ctrl+O) and open the torrent file.

Firefox, most likely will have no clue what to do with it --- well, not exactly --- and will ask you where to open it. Select the program you want (probably in the /usr/bin/ folder for most linux users), tell it to remember and you should be good to go, since from now on it'll give you the option to automatically open torrents with your desired program.

0

Unfortunately, there are no such preferences available in Firefox anymore. Mozilla has removed all such functionality.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.