Note: Please see a more recent post on Apple TV hacks.
Once SSH is enabled on your Apple TV, the world is your oyster.
Note: These steps assume that you’ve already enabled SSH on your Apple TV using the procedures in this post: Hacking The Apple TV to Enable SSH.
CouchSurfer is a web browser created to work on the Apple TV. To get CouchSurfer, point a browser on your Mac to Brandon Holland’s site for the download. By the way, this guy has done some great work here and I encourage you to support his efforts. For our purposes, you’ll want to download CouchSurfer 0.3(2.0) Installer (circled below).

Once it’s downloaded, unzip the file to reveal a CouchSurfer folder with 6 files inside. You will copy this folder over to your Apple TV before running the installer.

If you are comfortable with the UNIX command line, you can upload and tweak your Apple TV from a remote Mac using the Terminal application. I find it much easier to use an SFTP program to move files. My SFTP application of choice is Fugu. Fugu is intuitive, it’s fast, and it’s free.
Setting it up to move files back and forth from your Apple TV is easy. Enter your Apple TV’s IP address, enter “frontrow” as the Username, and check the box next to Force SSH1 connection to server. Then click the Connect button and enter “frontrow” as the password.

Copy the CouchSurfer folder to your Apple TV. It can be copied anywhere, but I suggest the home folder of the Frontrow user. Next, you will need to open the Terminal application on your Mac and type the following:
ssh frontrow@<your_apple_tv_address>
When prompted for a password, enter ‘frontrow’.
Now navigate to the directory where you copied the CouchSurfer folder on your Apple TV.
Note: Basic navigation in the command line is done with the ‘cd’ command. For example, to navigate to the CouchSurfer directory in the ‘frontrow’ home directory from root, you would type the following:
cd /User/frontrow/CouchSurfer
Once there, you can verify that you are in the right place by typing the following to see a listing of the files:
ls -al
You should see a listing similar to this:

Now type in the following command to install CouchSurfer:
sudo ./installcouchsurfer
Again, use the ‘frontrow’ password when prompted.
Once this finishes, reboot your Apple TV using this command:
sudo reboot
When your Apple TV menu reappears, you’ll notice the addition of CouchSurfer in the Menu items. Now you can surf the web freely just like on your computer!
Note: CouchSurfer is still a work in progress. The Settings menu has not been implemented yet. Brandon claims that this installation allows you to use a USB keyboard and mouse plugged into the USB port on the Apple TV. I have not tested this yet. Also, while CouchSurfer allows you to bookmark pages, I have not found a way to delete bookmarks from the user interface. For that, you’ll need to navigate to the /Users/frontrow/Documents/Bookmarks.plist directory and edit by hand.
Happy surfing!
Note: Please see a more recent post on Apple TV hacks.
After lots of research and some experimenting, I have finally hacked my Apple TV.
I read about the several ways to hack the Apple TV by cracking the case and pulling out the hard drive, but I didn’t want to go through this hassle and also void the warranty. Then I read about folks who have found a way to install software on a flash drive, called a “patchstick.” This method allows you to insert the patchstick into the USB port of the Apple TV and reboot. The patchstick installs the necessary files for enabling SSH on the Apple TV. With SSH enabled, you have the ability to install other applications from a remotely connected computer.
There are a few ways to create a patchstick. Some are quite involved, and require a comfortable familiarity with command line navigation in Terminal. Oddly enough, the easiest method I found to create a patchstick was done by some PC folks, and requires access to a machine running Windows. Since I am running Windows (via Parallels) on my MacBook Pro, this was not a problem.
For a detailed explanation on how to create a patchstick on Mac OS X (intel), go to this page on the AwkwardTV wiki: PatchStick
The above method was a bit too involved for my taste.
Creating A Take2 PatchStick
Requirements:
- Windows operating system
- DD for Windows (download here)
- PatchstickATVT2 (download here)
- StuffIt Expander (download here)
- 1GB (or more) thumb drive
Note: Make sure your Apple TV is updated to at least 2.01
Step 1
Decompress the files. The DD file is in .zip format, and the PatchstickATVT2 file is in .rar format. Both files will decompress using the StuffIt Expander by double-clicking. The PatchstickATVT2.rar file will decompress to PatchstickATVT2.img.bz2. Double-click this again to end up with the PatchstickATVT2.img file.
Step 2
Copy the PatchstickATVT2.img and dd.exe files to a folder on your Windows machine.
Step 3
In Windows, enter into a command line mode by selecting Run form the Start menu and typing “cmd”. Navigate to the folder with your files typing at the prompt:
cd C:\NameOfFolder
Insert your USB thumb drive. Then, type the following to get a list of all mounted drives:
dd --list
This will show you all drives and their drive numbers. The listing should look something like this:
\\.\Volume{e3429891-0eb9-11da-b18f-000d60dc98cd}\
link to \\?\Device\Harddisk4\DP(1)0-0 3 removable media
Mounted on \\.\d
You want to find the drive number for your thumb drive.
Note: Make sure you have the correct drive number for your thumb drive. If you get this wrong, your risk deleting your Windows hard disk partition!
Step 4
Once you have the correct drive number for your thumb drive, type the following command:
dd if=PatchstickATVT2.img of=\\?\Device\Harddisk*HARD-DISK-NUMBER-HERE*\Partition0 bs=1M --progres
For example:
dd if=PatchstickATVT2.img of=\\?\Device\Harddisk4\Partition0 bs=1M --progress
You will see the script running in the command window. It generally takes a few minutes.
Step 5
Once the script has finished, plug the thumb drive into the USB port on your Apple TV and reboot by holding down the “-” and Menu buttons simultaneously.
Once rebooted, you will be able to SSH into your Apple TV by issuing the following command in your Terminal window on a Mac:
ssh frontrow@YourAppleTV-IP-address
When prompted for a password, use “frontrow”.
SSH Is Now Enabled
With SSH now enabled, you may begin at add functionality to your AppleTV. In my next post, I will go through the steps of loading an internet browser that allows you to navigate the web freely. I will also show you how to enable the Flash and QuickTime plugins so you can watch movies from any site on the web.
OSBoot As Read-Only
One thing we’ve already learned from SSH is that the root filesystem on the Apple TV (aka OSBoot) is apparently mounted as a read-only filesystem. That means it’s not initially possible to copy any files to the root mount point (/etc, /usr, /var, for example) while it is running. You can remedy this with:
sudo mount -uw /
UPDATE:
It’s possible that this procedure can be done on a Mac using Carbon Copy Cloner to clone the PatchstickATVT2.img file onto a USB thumb drive. I will experiment with this method and report back here.
Finally, someone has figured out a way to use the USB connection on an Apple TV to connect to an external hard drive. This is good news for folks wanting to greatly increase their download capacity.
The hack is not for beginners, and requires an Intel-Mac or Intel-based *nix to run the script.
For information and tutorial help on making use of this new hack without needing your own Mac expert, see the details here: Apple TV Hack
Check out this article on hacking Apple TV to enable the SSH.

