PDA

View Full Version : AppleTVHacks.net offline -> here is the howto


semthex
04-02-2007, 10:44 PM
Here is a transscrit of the Howto as AppleTVHacks.net is still down:

Mac OS X running on Apple TV

semthex from Hackint0sh.org, in collaboration with AppleTVHacks.net has done it again! A complete replacement to the Mac OS X kernel has been built which allows the full version of Mac OS X to be run on an Apple TV.

Semthex wrote a processor emulation for the kernel, to sidestep the hardware restrictions that previously disallowed Mac OS X from running on the Apple TV. AppleTVHacks.net was only too happy to help out, and when it turned out we needed more testers we launched a competition to get some. Within hours we had hundreds of eager Apple TV hackers submit entries.

Several hours of testing and refining later and our tester, gimli, managed to follow the steps (included below) to get Mac OS X booting on his Apple TV (click to enlarge):

The Apple TV running Mac OS X can use the mouse and keyboard normally, and you can run regular OS X apps easily. You can use either Front Row or Back Row (or Joost, or VLC, or…) to watch content, and can use it for most things you would use a Mac for.

Tester, mk500, made a video to demonstrate it all working:
How to install

This is the process that was used to turn the Apple TV into a full blown Mac OS X machine:

1) remove the drive from the Apple TV

2) back up your drive! Make an image of it (see the harddrive upgrade tutorial for this)

3) Connect the drive to a regular Mac (use a Firewire or USB drive dock)

4) Install OS X (Intel version) to the drive (we suggest a slim install - no printer drivers etc.)

5) Boot from this drive, and set it up as you would like it. Make sure you do updates so it is at least 10.4.8.

6) Reboot to your normal OS X install.

Ok, you now have your fresh OS X install which will form the base of the customised OS X you will need for the Apple TV.

7) Remove mach_kernel{...} from root of the drive {...}.

8 ) Replace it with the customised mach_kernel{...} that you’ll find on Hackint0sh.org.

9) Replace /System/Libary/Coreservices/boot.efi with the same file from your backup of the Apple TV OS drive (OSBoot partition).

10) Run bless:

bless --folder=/VolumesOSBoot/System/Library/CoreServices --file=/Volumes/OSBoot/System/Library/CoreServices/boot.efi --setBoot

11) Delete all the Nvidia kexts (all beginning with NVD, there should be 5) from the target drive (in /System/Library/Extensions).

12) Transfer the drive back to the Apple TV

13) Turn the Apple TV on and cross your fingers.

You should boot up into Mac OS X. Woo!
Now what?

This hack seriously opens up the doors with what the Apple TV could be used for; and we imagine we are going to see lots of cool hacks, additions and addons. We will do our best to keep track of them.

A big thanks again to semthex over at Hackint0sh.org; who did the majority of the work, and built the custom kernel.

The brave testers who helped make this happen: gimli, mk500, Turbo, Jonathan Bare, l0rdr0ck.

GUIDE CORRECTED THANKS FOR THE INFO, wrong parts were removed and marked {...}

ptaylor874
04-03-2007, 01:41 AM
Steps 7 & 8 don't seem quite right:

7) Remove mach_kernel.prelink from root of the drive containg the ATV install.

8 ) Replace it with the customised mach_kernel.prelink that you’ll find on Hackint0sh.org.

Not quite following this.. I'm assuming you mean to take the mach_kernel.prelink file you released and replace the mach_kernel.prelink file on the 10.4.8 copy of OS X?

Perhaps I'm not quite following because I'm trying this installation to an external drive with the idea of being able to modify my AppleTV without opening the case...

Also, when trying to copy the boot.efi file from the AppleTV's image over to the 10.4.8 install (while booted up on my iMac's internal drive), it will not allow me to... From cmd line it says "Operation not permitted". When I try the copy from Finder it says "The operation cannot be completed because the item "boot.efi" is locked. What am I missing to copy this over? I would not think that the boot.efi would be locked since I'm not booted from either of these drives..??

taylorwilsdon
04-03-2007, 01:42 AM
You can't mod the Appletv without opening the case. You'll have to break out the Appletv's drive, put it in an external drive and install OSX to the Appletv drive, then stick it back in.

ptaylor874
04-03-2007, 01:47 AM
Just because no one has done it yet doesn't mean it can't be done.. :)

From my reading, you can boot from an external drive... Now, you can run Mac OS X.. It doesn't seem to be much of a stretch to boot from the external drive (running OS X w/ the Ethernet hack and SSH enabled), remote in from another machine and modify the built-in hard drive...

ptaylor874
04-03-2007, 02:42 AM
Steps 7 & 8 don't seem quite right:

7) Remove mach_kernel.prelink from root of the drive containg the ATV install.

8 ) Replace it with the customised mach_kernel.prelink that you’ll find on Hackint0sh.org.

Not quite following this.. I'm assuming you mean to take the mach_kernel.prelink file you released and replace the mach_kernel.prelink file on the 10.4.8 copy of OS X?

Perhaps I'm not quite following because I'm trying this installation to an external drive with the idea of being able to modify my AppleTV without opening the case...

Also, when trying to copy the boot.efi file from the AppleTV's image over to the 10.4.8 install (while booted up on my iMac's internal drive), it will not allow me to... From cmd line it says "Operation not permitted". When I try the copy from Finder it says "The operation cannot be completed because the item "boot.efi" is locked. What am I missing to copy this over? I would not think that the boot.efi would be locked since I'm not booted from either of these drives..??

Ok - Figured out the locked thing... Just uncheck "Locked" under Get Info for the destination file...

taylorwilsdon
04-03-2007, 05:00 AM
Just because no one has done it yet doesn't mean it can't be done.. :)

From my reading, you can boot from an external drive... Now, you can run Mac OS X.. It doesn't seem to be much of a stretch to boot from the external drive (running OS X w/ the Ethernet hack and SSH enabled), remote in from another machine and modify the built-in hard drive...

Re-read the wiki. The USB bus is not activated until after boot, so it cannot complete a boot from USB. Yes, something may happen in the future, but my guess that somebody asking a "stupid" question is not the one who will figure it out.

I'm having a problem though. Terminal throws an error when I try to bless the OSBoot file.

taylorwilsdon
04-03-2007, 05:53 AM
Never mind that, I've got it running!

WOW! Its not even that slow - I could totally see this as a simple replacement for a computer.

ptaylor874
04-03-2007, 06:06 AM
Yes, something may happen in the future, but my guess that somebody asking a "stupid" question is not the one who will figure it out.


Hey! Play nice now!

davelikescheese
04-03-2007, 11:18 AM
www.appletvproject.com are also hosting a (re-written) copy of this How-To (although I don't know if they have permission - they do link to this forum).

semthex
04-03-2007, 12:16 PM
I just checked back to their site in the guide they provide now there are links to my site, the forum and ATVhacks. That is ok. Would have been nice if the hadded forum to links as well but we don't want to get too strict :D

sidechain
04-04-2007, 10:53 PM
the command
bless --folder=/Volumes/OSBoot/System/Library/CoreServices --file=/Volumes/OSBoot/System/Library/CoreServices/boot.efi --setBoot

I get authourization required how do I get around this?

semthex
04-04-2007, 11:25 PM
do "sudo" in front of it :) or do a "sudo -s" before.

dancameron
04-11-2007, 12:28 AM
I'm getting the error,
~ cameron_dan$ bless --folder=/Volumes/AppleTV/System/Library/CoreServices/ --file=/Volumes/AppleTV/System/Library/CoreServices/boot.efi --setBoot
Could not set boot device property: 0xe00002bc

dancameron
04-11-2007, 12:30 AM
Got it working with a sudo command.

Sorry.

CArringt
04-29-2007, 09:30 AM
Steps 7 & 8 don't seem quite right:

7) Remove mach_kernel.prelink from root of the drive containg the ATV install.

8 ) Replace it with the customised mach_kernel.prelink that you’ll find on Hackint0sh.org.

Not quite following this.. I'm assuming you mean to take the mach_kernel.prelink file you released and replace the mach_kernel.prelink file on the 10.4.8 copy of OS X?


This is what I don't get either. can some one please clarify.

I have an apple tv drive that I have formatted and install a slim version of mac os x, but I can't get any farther