Making the patchstick easier to update
To make it easier to update, how about creating a small base partition (with the scripts, launchd, kexts, boot.efi and kernel), and have a second partition with any additional software to copy over to the aTV's internal disk.
- great idea, whoever suggested this :) I'll get on it right away! - Mactijn 11:53, 9 April 2007 (CEST)
- is this what you meant ? :) - Mactijn 15:39, 9 April 2007 (CEST)
- Exactly what I was thinking :) That makes things far easier. I won't be able to play any more until next week though :( Good work! - dobedobedoh 16:19, 9 April 2007 (CEST)
Boot Progress Indicator
OK, the instructions have changed since I did this last weekend, but when I was running through this using my first-gen iPod Shuffle, there was no clear indicator when the process had finished and it was safe to reboot. My Apple TV showed the grey Apple logo and then the spinner progress indicator, but it never went away. I had left it for 15 minutes before I had assumed it failed or just wasn't showing something on my end. Luckily, it worked, but I had no confirmation. So, either I did something wrong or this needs to be fixed so others don't get confused.
- Apparently you didn't use the com.apple.Boot.plist on the wiki page. Also, you added a Bootlogo.png. This is a problem right now, since above is only a concept. We're still working on animated installation, but we need a way to put images on the frame buffer. - Mactijn 11:29, 14 April 2007 (CEST)
Thanks, worked great but needed a larger root partition on the stick
Thanks, i followed the procedure and it worked great. The only deviation: required a larger root partition to copy over all the extensions. I suppose your could be choose about what partitions your copy over, but i was too impatient, and just copied over everything. When copying over sshd/perian it output some errors, but they did not matter. cheers,
- The root partition size is based on copying only the .kext stuff listed on the bottom of the page. -- Mactijn 11:26, 14 April 2007 (CEST)
Patchstick hangs during boot
I have been trying to get this to work on a clean atv box for a couple of days now, and I've run into a problem. The atv is able to boot off the usb disk, but hangs after a certain point. To make matters worse, the text is half off the screen. From what I can see it doesn't appear to get past mounting the root partition Screenshot. Has anyone run into this before, or have any idea what I need to do to get this working?
- You can't seem to read any errors due to overscanning problems. These problems can be dealt with by using another video mode on startup. Change com.apple.Boot.plist and add:
<key>Graphics Mode</key> <string>1024x768x32@60</string>
Fiddle with the resolution a bit until satisfied (width x height x depth @ refresh rate). Untested, so your results may vary.
I have the exactly same problem. I found that the launchd script uses the commands sync and echo which are not copied to sbin in the procedure. This doesn't fix the problem. If the launchd file is missing there is a boot error regarding launchd and sbin/mach_int oorosh
- echo is a built-in in bash, so that shouldn't matter. sync shouldn't be a problem, although I will put it in the procedure. While building patchstick, I had some errors regarding mounting OSBoot as well (unclean journal errors), and what I did was restart my ATV normally, and reboot again with patchstick. I have no previous experience with the fake launchd not starting. please check permissions (chmod 755). -- Mactijn 23:23, 16 April 2007 (CEST)
- This problem was due to using binaries from OSX 10.4.1, when I used binaries from 10.4.9, launchd worked. --Yogibeer 00:30, 17 April 2007 (CEST)
- Great job documenting this process so far. I made a patch stick tonight and it worked once, but now when i boot it, it can not mount the OSBoot partition. The error I get is: 'volume on disk0s3 is read-only and journal is dirty. can not mount volume' I've booted back and fourth from ATV OS back to USB patchstick, but the error will not go away. Any ideas? --LiquidIce
- Mount it read/write (sudo mount -uw /), fsck it (sudo fsck_hfs -f /dev/disk0s3), then reboot cleanly (sudo shutdown -r now).
So I went ahead and followed all the steps laid out here. I plugged the drive into my AppleTV, and did the reboot thing. It restarted, spit out a bunch of text, loaded the kernel, and then spit out more text and froze up. I can't read the last line (text is too fuzzy), but the line before the last is the text output of the /System/Library/Extensions/AppleFileSystemDriver.kext/Contents/Info.plist file (or at least part of it). I can make out <string>IOResources</string><key>IOResourceMatch</key><string>boot-uuid</string><key>media-match</key><dict> then there is a bit more, and then a </dict>. Then it goes to the next line, and has an unreadable text (too small and fuzzy to make out). I have checked, and double checked my info.plist file and it looks ok (compared to what is displayed here, and what is on my machine). After waiting about 3-5 minutes, a new line "waiting for root device" appears. I already have my AppleTV "patched", I just want to put together a thumbdrive easy install for my friends aTV. Thanks for any help here guys - kupan787 (April 20th)
I have the same exact problem - hangs "waiting for root device". Tried unplugging disk and waiting 5 sec - plugging disk back in. I never see the I/O errors. -h3nrch (2007-04-28 20:13 GMT)
No problems whatsoever
This worked beautifully for me, the only thing I could suggest would be to make it disable Watchdog.
ProfessaFresh 17:21, 21 April 2007 (CEST)
Worked but one small issue
At the start of the 'aftermath' section the how-to asks for the patchstick-root partition to be unmounted, (hdiutil unmount diskXs1) but in fact diskXs2 will also need to be unmounted. If any other issues are experienced at this point try unmounting both partitions again and then trying the command which caused the error.
Illegitimate Patchstick Warnings
Its understandable that people working hard to keep this project 100% aboveboard and also stay in good graces with Apple. But these are opportunities to educate and reform the scriptkiddies, not moments to strike out at people who might be less morally upright and congradulate yourself on being both clever and holier-than-thou. Many of these "illegitimate" users are teenagers or pre-teens who will grow up to be outstanding and upright programmers and calling them names now will not reform them or help this project. There is also a legitimate issue in that one cannot (as far as I know) use the software for non-Apple hardware. (as was the case for X86 Tiger install disks) Almost all (perhaps not 100%) users of "pirate" copies of Apple Tv's boot.efi are applying it to Apple hardware and already have a legitimate, purchase of the Apple TV hardware including a copy of the modified, mutant Apple TV boot.efi. There was a similar problem years ago with Apple Boot ROMs and various flavors of Mac 680x0 Linux, and flavors of BSD. At that time Apple had long since abandoned 68k and it seemed outrageous that they would not assist un*x developers- (and in fact slowing MKlinux development and effectively killing A/UX) Right now people seem confident in their ability to work around or find a substitute for boot.efi, but it might not happen, and Apple may stonewall the mod community on this issue forever.