Somehow my Apple TV developed some issues and had to be reinstalled from scratch. Not a problem, except that I couldn’t get rtorrent to run properly on Apple TV 3 again. Since rtorrent for Apple TV development basically seems to have stopped, I decided to look around for a different solution rather than dive into rtorrent. I found a bittorrent client I had previously tried on Apple TV, the well known application named Transmission. The newer versions come with a built in web UI, and a smart guy named lfroen is distributing binaries for Apple TV. Pretty cool!
However, I had some problems getting Transmission 2 to work. Eventually I think I figured it out. Here’s what I did, I hope it helps some of you.
This article assumes you have SSH access to your Apple TV, are comfortable with doing some command line stuff on your Apple TV. If you break or brick your Apple TV while doing this, don’t blame me. I cannot guarantee this will work, however, it’s working for me. Still here? Let’s get to work!
Step 1: Prepare
You will need:
- An SSH-accessible Apple TV
- The Transmission 2 binaries for Apple TV
Step 2: Extract
Extract the files from the archive you downloaded. This will give you 2 files and a directory.
Move these to your Apple TV (I’m assuming you’ll put them in /Users/frontrow).
Step 3: Install
Make sure the permissions of the files are OK, and create the proper directory for the web folder. You can do this by executing these commands (if asked for a password, it is frontrow).
sudo chmod 755 transmission-*
sudo chown frontrow:frontrow transmission-*
mv web /Users/frontrow/Contents/Resources/
sudo chmod -R 775 /Users/frontrow/Contents/Resources/web
We also create 2 more directories because we’ll need them later. If you already have these somehow, feel free to skip this:
Step 4: Test
Execute this command:
You should see a message similar to this
Transmission 2.XX (YYYY) started
Port Forwarding: ...
If you don’t, you did something wrong. Start again!
Quit Transmission with Ctrl-C.
Step 5: Adjust settings
When Transmission started, it created a default settings file. We’ll need to adjust that file. The file is located at:
You can find the various settings in Transmission’s documentation. I recommand you edit the file, and change these settings (you may need to add some settings if they are not yet present in your settings.json). Leave all other settings intact!
You can set the speed limits to what you prefer yourself of course. Also, Set rpc-whitelist to a mask that suits your home network, or read the Transmission documentation if you want a more complex setup.
Note that we keep incomplete files in the Downloads folder, store complete files in the Movies folder, and watch the Torrents folder for new torrents.
You can test the new settings by running the test from step 4 again. If your settings are wrong, Transmission will tell you.
If you have succesfully set the rpc-whitelist mask, you will be able to see the web interface by visiting http://appletv.local:9091
Step 6: Load automatically
Now we will make sure that your perfectly working Transmission will start whenever the Apple TV boots. Again, we need to make sure a directory exists:
And in this directory we create a LaunchAgent file:
nano -w /Users/frontrow/Library/LaunchAgents/transmission.plist
The text editor nano will open, and wait for your input. Copy and paste this:
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
Save, exit and you are done! If you reboot your Apple TV (sudo reboot), you should find Transmission up and running after the reboot.