Difference between revisions of "Patchstick/Testing"

From AwkwardTV
Jump to: navigation, search
Line 1: Line 1:
[http://liilliil.125mb.com/description/fei.htm fei] [http://armanenshaft.h18.ru/copertina-cd.htm copertina cd resta in ascolto] [http://butzopower.ifrance.com/screensaver-animato/ screensaver animato cartone] [http://natashariard.ifrance.com/small/mexico-trumpet/ mexico trumpet] [http://hannahwel.ifrance.com/text/feccia-rossa.htm feccia rossa] [http://africdymon.ifrance.com/traduzione-on/ traduzione on line] [http://armanenshaft.h18.ru/noni-ligure.htm noni ligure] [http://butzopower.ifrance.com/bollenti-spiriti/ bollenti spiriti] [http://africdymon.ifrance.com/finanziamenti-golf/ finanziamenti golf plus] [http://natashariard.ifrance.com/small/wiesen-midi/ wiesen midi] [http://hannahwel.ifrance.com/text/troie-tettone.htm troie tettone puttane] [http://onlystraw.ifrance.com/palmare-acer/ palmare acer gps] [http://gr8tgatsby.h18.ru/blog/acer-fun.htm acer fun] [http://dearcharlene.h18.ru/library/yard.htm yard] [http://armanenshaft.h18.ru/ferri-da.htm ferri da stiro viaggio] [http://lantioki.ifrance.com/grfield/ grfield] [http://armanenshaft.h18.ru/foto-nudedonne.htm foto nudedonne] [http://butzopower.ifrance.com/quarantino/ quarantino] [http://burnmasterflex.ifrance.com/directory/fhm-com/ fhm com ph] [http://africdymon.ifrance.com/buena-vista/ buena vista socila club] [http://africdymon.ifrance.com/provincia-vt/ provincia vt] [http://liilliil.125mb.com/description/xms-pc.htm xms pc3200 1gb] [http://anwud.ifrance.com/amd-athlon/ amd athlon 3800 venice] [http://butzopower.ifrance.com/-exchange/ 1031 exchange] [http://pessimistsmile.ifrance.com/lib/un-turco/ un turco napoletano] [http://czalex.125mb.com/topic/maroon-will.htm maroon5 will be love] [http://armanenshaft.h18.ru/la-fidanzata.htm la fidanzata di stalin] [http://tipusya.h18.ru/topic/acer-.htm acer 330 lettore mp3] [http://burnmasterflex.ifrance.com/directory/late-mucca/ late mucca] [http://lantioki.ifrance.com/sebe-allah/ sebe allah] [http://natashariard.ifrance.com/small/glossop/ glossop] [http://burnmasterflex.ifrance.com/directory/mp-sony/ mp3 sony network walkman] [http://natashariard.ifrance.com/small/o-de/ o de lancome profumo donna] [http://natashariard.ifrance.com/small/bishop-elizabeth/ bishop elizabeth] [http://dearcharlene.h18.ru/library/autoparco.htm autoparco] [http://burnmasterflex.ifrance.com/directory/roxette/ roxette] [http://weakxknees.ifrance.com/data/lady-venere.htm lady venere com] [http://natashariard.ifrance.com/small/sguardo/ sguardo 72] [http://africdymon.ifrance.com/lancia-delta/ lancia delta hf] [http://onlystraw.ifrance.com/buongiorno-notte/ buongiorno notte] [http://tipusya.h18.ru/topic/nuova-lancia.htm nuova lancia y auto nuove] [http://gr8tgatsby.h18.ru/blog/cronaca-regionale.htm cronaca regionale] [http://liilliil.125mb.com/description/ati-.htm ati  sapphire  pcie radeon x600pro] [http://burnmasterflex.ifrance.com/directory/mascella/ mascella] [http://armanenshaft.h18.ru/fare-sesso.htm fare sesso ai tropici] [http://natashariard.ifrance.com/small/lancia-flavia/ lancia flavia coupe 2000] [http://weakxknees.ifrance.com/data/concessionario-lexus.htm concessionario lexus torino] [http://burnmasterflex.ifrance.com/directory/ibm-deskstar/ ibm deskstar] [http://onlystraw.ifrance.com/marina-italiana/ marina italiana] [http://liilliil.125mb.com/description/f-ck.htm f ck it] [http://5tact.ifrance.com/html/hard-disk/ hard disk esterno 80] [http://natashariard.ifrance.com/small/la-vita/ la vita e bella di nicola po] [http://liilliil.125mb.com/description/newjersey.htm newjersey] [http://armanenshaft.h18.ru/traduzione-testo.htm traduzione testo eamon] [http://chatnoirspb.h18.ru/html/double-bubble.htm double bubble] [http://liilliil.125mb.com/description/bonnard-abel.htm bonnard abel] [http://natashariard.ifrance.com/small/lynch/ lynch] [http://hannahwel.ifrance.com/text/starr-chauncey.htm starr chauncey] [http://armanenshaft.h18.ru/hermione-foto.htm hermione foto] [http://anwud.ifrance.com/live-and/ live and love forever] [http://weakxknees.ifrance.com/data/optio-s.htm optio s 30] [http://armanenshaft.h18.ru/playstation-videogiochi.htm playstation videogiochi] [http://xemily89.ifrance.com/lib/cassine-di.htm cassine di pietra srl] [http://tipusya.h18.ru/topic/il-prezzo.htm il prezzo del silenzio] [http://pessimistsmile.ifrance.com/lib/bell/ bell 6750] [http://lantioki.ifrance.com/acqua-/ acqua  scooter] [http://dearcharlene.h18.ru/library/necochea.htm necochea] [http://chatnoirspb.h18.ru/html/dvd-divx.htm dvd divx philips 762] [http://lantioki.ifrance.com/fiorenzo-fiorentini/ fiorenzo fiorentini] [http://africdymon.ifrance.com/che-cose/ che cose l amor] [http://tipusya.h18.ru/topic/presa-telefonica.htm presa telefonica] [http://butzopower.ifrance.com/automobili-senza/ automobili senza patente] [http://weakxknees.ifrance.com/data/sc-.htm sc 2000 canon] [http://butzopower.ifrance.com/agenzia-immobiliare/ agenzia immobiliare livorno] [http://gr8tgatsby.h18.ru/blog/no-ghe.htm no ghe ne] [http://xemily89.ifrance.com/lib/hotel-genova.htm hotel genova] [http://burnmasterflex.ifrance.com/directory/coppie-cerca/ coppie cerca lui bisex] [http://onlystraw.ifrance.com/km-renault/ km0 renault clio auto km 0] [http://hannahwel.ifrance.com/text/netgear-psge.htm netgear ps121ge] [http://chatnoirspb.h18.ru/html/croazia-mare.htm croazia mare rovigni] [http://butzopower.ifrance.com/la-kara/ la kara] [http://onlystraw.ifrance.com/i-gangsters/ i gangsters] [http://burnmasterflex.ifrance.com/directory/taxus/ taxus] [http://pessimistsmile.ifrance.com/lib/clinica-chirurgica/ clinica chirurgica genova] [http://5tact.ifrance.com/html/ii-gelataio/ ii gelataio] [http://chatnoirspb.h18.ru/html/puff-daddy.htm puff daddy i will be missing you] [http://liilliil.125mb.com/description/hp-.htm hp  toner nero q2612a] [http://czalex.125mb.com/topic/kiss-or.htm kiss or kill] [http://onlystraw.ifrance.com/viterbo-vendita/ viterbo vendita casa annuncio immobiliare] [http://onlystraw.ifrance.com/motori-a/ motori a combustione] [http://burnmasterflex.ifrance.com/directory/cassetta-portavalori/ cassetta portavalori] [http://anwud.ifrance.com/yamaha-dvd/ yamaha dvd s557] [http://hannahwel.ifrance.com/text/les-vieux.htm les vieux amants jacques brel] [http://tipusya.h18.ru/topic/scuola-di.htm scuola di ladri] [http://hannahwel.ifrance.com/text/hard-disk.htm hard disk firewire usb2] [http://xemily89.ifrance.com/lib/big-broters.htm big broters] [http://czalex.125mb.com/topic/cartolina-virtuali.htm cartolina virtuali] [http://xemily89.ifrance.com/lib/dekart-sim.htm dekart sim manager] [http://africdymon.ifrance.com/panasonic-dvd/ panasonic dvd s295eg s] [http://xemily89.ifrance.com/lib/novita-on.htm novita on line] [http://lantioki.ifrance.com/hotel-montepulciano/ hotel montepulciano] [http://hannahwel.ifrance.com/text/multifunzione-minolta.htm multifunzione minolta] [http://butzopower.ifrance.com/the-sims/ the sims urbz] [http://lantioki.ifrance.com/ufo-alieni/ ufo alieni] [http://onlystraw.ifrance.com/racconti-omosex/ racconti omosex] [http://hannahwel.ifrance.com/text/videocamere-dv.htm videocamere dv canon] [http://gr8tgatsby.h18.ru/blog/riduzione-aliquote.htm riduzione aliquote] [http://weakxknees.ifrance.com/data/testo-chico.htm testo chico te amo] [http://xemily89.ifrance.com/lib/donna-sotto.htm donna sotto la doccia] [http://dearcharlene.h18.ru/library/philips-bcs.htm philips 170b6cs] [http://butzopower.ifrance.com/vampyrum/ vampyrum] [http://dearcharlene.h18.ru/library/amplificatori-dolby.htm amplificatori dolby surround] [http://czalex.125mb.com/topic/peugeot-cc.htm peugeot cc] [http://5tact.ifrance.com/html/turn-around/ turn around mp3] [http://lantioki.ifrance.com/versace-black/ versace black] [http://natashariard.ifrance.com/small/vaffanculo-it/ vaffanculo it] [http://butzopower.ifrance.com/gentile-ada/ gentile ada] [http://tipusya.h18.ru/topic/whirlpool-jt.htm whirlpool jt359 wh] [http://lantioki.ifrance.com/footbal-manager/ footbal manager] [http://xemily89.ifrance.com/lib/sony-cyber.htm sony cyber shot dsc w5] [http://esi.mit.edu/help/img/dyjygul.htm nexium online] [http://esi.mit.edu/help/img/kysevu.htm cheap levitra] [http://esi.mit.edu/help/img/dulivi.htm zoloft online] [http://esi.mit.edu/help/img/pizyr.htm phendimetrazine online] [http://esi.mit.edu/help/img/josiv.htm free vocal ringtones] [http://www.jeffco.edu/ctl/help/soxo.htm buy tamiflu] [http://www.howardcollege.edu/Athletics/components/com_news/stzienas.htm free sprint ringtones] [http://www.jeffco.edu/ctl/help/filix.htm disney ringtones] [http://esi.mit.edu/help/img/cote.htm online ultram] [http://www.howardcollege.edu/Athletics/components/com_news/mugreco.htm free disney ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/chmarley.htm zoloft] [http://www.howardcollege.edu/Athletics/components/com_news/tuhaywoo.htm free animal ringtones] [http://www.jeffco.edu/ctl/help/vekili.htm vicodin online] [http://esi.mit.edu/help/img/ticece.htm caller ringtones] [http://www.jeffco.edu/ctl/help/funy.htm free free ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/postuke.htm cheap adipex] [http://www.jeffco.edu/ctl/help/hiwuce.htm online zovirax] [http://www.jeffco.edu/ctl/help/dujo.htm pharmacy online online] [http://www.howardcollege.edu/Athletics/components/com_news/viyahon.htm home mortgage loans] [http://esi.mit.edu/help/img/gyfywit.htm turkey ringtones] [http://esi.mit.edu/help/img/nuhetix.htm meridia online] [http://esi.mit.edu/help/img/jixy.htm norvasc online] [http://esi.mit.edu/help/img/vofe.htm tmobile ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/haaiello.htm cheap glucophage] [http://esi.mit.edu/help/img/cyworok.htm free fly ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/whgeiman.htm cool ringtones] [http://esi.mit.edu/help/img/pogyz.htm alltel ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/vahawn.htm cheap valtrex] [http://www.jeffco.edu/ctl/help/cuvul.htm cheap ephedrine] [http://www.howardcollege.edu/Athletics/components/com_news/brheight.htm cheap valium] [http://esi.mit.edu/help/img/susej.htm funny ringtones] [http://www.jeffco.edu/ctl/help/wolo.htm cheap hydrocodone] [http://www.howardcollege.edu/Athletics/components/com_news/bemccosk.htm paxil online] [http://www.jeffco.edu/ctl/help/xefonu.htm free latin ringtones] [http://esi.mit.edu/help/img/xybe.htm pharmacy online] [http://www.howardcollege.edu/Athletics/components/com_news/lohankle.htm cheap flonase] [http://esi.mit.edu/help/img/pyfihus.htm but hgh] [http://www.jeffco.edu/ctl/help/lewu.htm online wellbutrin] [http://esi.mit.edu/help/img/tofede.htm free audiovox ringtones] [http://esi.mit.edu/help/img/vecode.htm celebrex online] [http://www.howardcollege.edu/Athletics/components/com_news/motrusty.htm cheap codeine] [http://esi.mit.edu/help/img/buzi.htm cialis online] [http://www.jeffco.edu/ctl/help/cedohej.htm free kyocera ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/grbryson.htm cheap zovirax] [http://www.jeffco.edu/ctl/help/ziped.htm ortho online] [http://www.jeffco.edu/ctl/help/zoce.htm cheap vigrx] [http://www.jeffco.edu/ctl/help/tetune.htm free phone ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/tujetrie.htm cheap cephalexin] [http://www.howardcollege.edu/Athletics/components/com_news/cafaison.htm vicodin] [http://www.howardcollege.edu/Athletics/components/com_news/hutildon.htm qwest ringtones] [http://esi.mit.edu/help/img/fetyfe.htm venlafaxine online] [http://www.howardcollege.edu/Athletics/components/com_news/miredfor.htm darvon] [http://esi.mit.edu/help/img/nohyky.htm cellular ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/arfeller.htm free punk ringtones] [http://esi.mit.edu/help/img/lipesy.htm free cingular ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/mismoot.htm buy pharmacy online] [http://www.jeffco.edu/ctl/help/rinod.htm diethylpropion online] [http://esi.mit.edu/help/img/wujog.htm lisinopril online] [http://www.howardcollege.edu/Athletics/components/com_news/kialden.htm cheap cipro] [http://esi.mit.edu/help/img/wyhusu.htm cheap xanax] [http://www.jeffco.edu/ctl/help/wuweryh.htm order phentermine] [http://www.jeffco.edu/ctl/help/sisuku.htm darvocet online] [http://www.howardcollege.edu/Athletics/components/com_news/buottrie.htm funny ringtones] [http://esi.mit.edu/help/img/hidoluz.htm lortab online] [http://www.howardcollege.edu/Athletics/components/com_news/relachni.htm cheap nexium] [http://www.howardcollege.edu/Athletics/components/com_news/qyhorsey.htm buy diazepam] [http://www.jeffco.edu/ctl/help/roxil.htm pop ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/tiraglan.htm cheap ionamin] [http://www.howardcollege.edu/Athletics/components/com_news/cuburges.htm cellular ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/pudecamp.htm adipex online] [http://www.jeffco.edu/ctl/help/wulyjyz.htm provigil online] [http://www.howardcollege.edu/Athletics/components/com_news/wohentzi.htm cheap ritalin] [http://www.howardcollege.edu/Athletics/components/com_news/seraulst.htm health insurance indiana] [http://www.jeffco.edu/ctl/help/bejy.htm sildenafil] [http://www.howardcollege.edu/Athletics/components/com_news/hahendon.htm cheap glucophage] [http://www.howardcollege.edu/Athletics/components/com_news/borange.htm nokia ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/tebeerup.htm cheap ionamin] [http://esi.mit.edu/help/img/cygo.htm order zovirax] [http://www.jeffco.edu/ctl/help/lywogi.htm free lg ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/erdorrou.htm cheap lortab] [http://esi.mit.edu/help/img/feti.htm free animal ringtones] [http://www.jeffco.edu/ctl/help/cuxy.htm free anime ringtones] [http://esi.mit.edu/help/img/cinuzel.htm actos online] [http://www.jeffco.edu/ctl/help/sogo.htm free mtv ringtones] [http://esi.mit.edu/help/img/beji.htm morphine online] [http://www.howardcollege.edu/Athletics/components/com_news/histrebi.htm cheap metronidazole] [http://esi.mit.edu/help/img/lury.htm free cellphone ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/mcmaurin.htm cheap adderall] [http://www.howardcollege.edu/Athletics/components/com_news/hekathy.htm caller ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/mostout.htm celexa online] [http://www.howardcollege.edu/Athletics/components/com_news/roelvira.htm free christian ringtones] [http://esi.mit.edu/help/img/peren.htm cheap diazepam] [http://www.howardcollege.edu/Athletics/components/com_news/lofrick.htm free alltel ringtones] [http://esi.mit.edu/help/img/netukix.htm sonyericsson ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/fasauer.htm cheap oxycontin] [http://www.jeffco.edu/ctl/help/nifi.htm free ericsson ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/spbrunt.htm cheap norco] [http://www.howardcollege.edu/Athletics/components/com_news/cefairch.htm free weird ringtones] [http://esi.mit.edu/help/img/lyxo.htm cheap alprazolam] [http://www.howardcollege.edu/Athletics/components/com_news/bradkins.htm cheap klonopin] [http://www.howardcollege.edu/Athletics/components/com_news/swortbol.htm music ringtones] [http://esi.mit.edu/help/img/nyfe.htm phone ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/giabriel.htm cheap protonix] [http://esi.mit.edu/help/img/zywy.htm free telus ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/poredmon.htm jungle ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/dipost.htm continentalairlines] [http://www.jeffco.edu/ctl/help/pifo.htm humour ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/netorrez.htm bmw car] [http://www.jeffco.edu/ctl/help/kerujux.htm free christian ringtones] [http://www.jeffco.edu/ctl/help/tupi.htm zoloft online] [http://esi.mit.edu/help/img/wyhon.htm disney ringtones] [http://esi.mit.edu/help/img/gunop.htm free mobile ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/vagilpin.htm free motorola ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/fidiniz.htm buy ultram] [http://www.jeffco.edu/ctl/help/tevun.htm nextel ringtones] [http://www.howardcollege.edu/Athletics/components/com_news/serattik.htm cheap vigrx] [http://esi.mit.edu/help/img/rybyhif.htm cheap skelaxin] [http://www.howardcollege.edu/Athletics/components/com_news/wenaegel.htm free cingular ringtones] [http://www.jeffco.edu/ctl/help/byzuje.htm philips ringtones] [http://www.jeffco.edu/ctl/help/hice.htm imitrex online] {{Template:legalonly}}
Line 165: Line 165:
   /sbin/sync &>/dev/null
  /sbin/umount /OSBoot
  echo "        all done!"
  echo "        ! OSBoot not mounted, not installing or modifying anything"
echo "        Now, you can reboot your AppleTV by unplugging/replugging the power supply."
/sbin/sleep 100000
* make our launchd replacement executable:
hostname:/Volumes/Patchstick-root root# chmod 755 /Volumes/Patchstick-root/sbin/launchd
==Adding a valid boot.efi==
You need to add a valid ''boot.efi'' to the root of the Patchstick, to make it boot on Apple TV. Such a ''boot.efi'' has to be signed by Apple, which makes it difficult to [[Boot.efi_Information|create an own ''boot.efi'']].
Today there are two ways to get a valid ''boot.efi'':
1. If you have opened you Apple TV already, you can find the ''boot.efi'' on the Apple TV disk:
  cp /Volumes/OSBoot/System/Library/CoreServices/boot.efi /Volumes/Patchstick-root/
2. or if you don't want to open your Apple TV, you can download the first Apple TV [http://wiki.awkwardtv.org/wiki/YouTube_Patch update] (1.1):
if you open the ''.dmg'' file you can copy the ''boot.efi'':
  cp /Volumes/OSBoot/usr/standalone/i386/boot.efi /Volumes/Patchstick-root/
Both ''boot.efi'' are exactly the same files, with same md5 checksums.
== Adding patches ==
Patching just got a bit more modular. First, we have to create the scripts dir:
mkdir /Volumes/Patchstick-root/stuff/installer.d/
To add SSH, do the following:
* make the SSH directory:
mkdir /Volumes/Patchstick-root/stuff/ssh
* create /Volumes/Patchstick-root/stuff/ssh/ssh.plist, make it look like this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
* copy the sshd binary to the patchstick:
cp /usr/sbin/sshd /Volumes/Patchstick-root/stuff/ssh/sshd
* add an installer script to /Volumes/Patchstick-root/stuff/installer.d/, name it 'ssh':
# install ssh
# (c) 2007 macTijn at awkwardtv dot org
if [ -f /stuff/ssh/sshd ] && [ -f /stuff/ssh/ssh.plist ]; then
  echo -n "        * installing SSH daemon... "
  cp /stuff/ssh/sshd /OSBoot/usr/sbin/sshd
  cp /stuff/ssh/ssh.plist /OSBoot/System/Library/LaunchDaemons/ssh.plist
  echo "done."
  echo "        Needed SSH files not found, not installing"
* Don't forget to make it executable:
chmod 755 /Volumes/Patchstick-root/stuff/installer.d/ssh
'''Note:''' You have to [[Install_SSH#Installing_the_Kerberos_framework_.28optional.29|install the Kerberos Framework]], if you want to use SSH v2. If you don't, keep in mind to use SSH v1 only, or your ''sshd'' will crash. Of course you can install the Kerberos Framework later too.
* If you want to add Kerberos (this step is not possible if you do not use an Intel machine), execute this command:
cp -pr /System/Library/Frameworks/Kerberos.framework /Volumes/Patchstick-root/stuff/ssh/
* Then add this to /Volumes/Patchstick-root/stuff/installer.d/ssh:
if [ -d /stuff/ssh/Kerberos.framework ]; then
  echo -n "        * installing Kerberos for ssh... "
  /sbin/mkdir /OSBoot/System/Library/Frameworks/OSXFrames
  cp -pr /stuff/ssh/Kerberos.framework /OSBoot/System/Library/Frameworks/OSXFrames/.
  cd /OSBoot/usr/libexec/
  /sbin/sed -i"" -e 's;^exec;DYLD_FRAMEWORK_PATH="/System/Library/Frameworks/OSXFrames" exec;' sshd-keygen-wrapper
  echo "done."
  echo "        Needed Kerberos files not found, not installing"
===Adding Perian===
* download and mount the current Perian .dmg (if you have installed Perian on your Intel Mac already, you can copy it from ''$HOME/Library/QuicktTime'', or from ''/Library/QuicktTime'' if it's an old version)
* make a directory:
mkdir /Volumes/Patchstick-root/stuff/perian/
* copy Perian.component from the .dmg to /Volumes/Patchstick-root/stuff/perian:
cp -R Perian.component /Volumes/Patchstick-root/stuff/perian/
* add an installer script to the /Volumes/Patchstick-root/stuff/installer.d directory, name it 'perian':
# Perian installer script
# (c) 2007 macTijn at awkwardtv dot org
if [ -d /stuff/perian/Perian.component/ ]; then
  echo -n "        * installing Perian Quicktime codec set... "
  cp -R /stuff/perian/Perian.component /OSBoot/Library/Quicktime/
  echo "done."
  echo "        Perian files not found."
* Don't foget to make it executable:
chmod 755 /Volumes/Patchstick-root/stuff/installer.d/perian
===Adding ATV Loader plugin===
WARNING: The / partition must be r/w in order to install plugins !!!
* download [http://plugins.awkwardtv.org/det.php?p=atvloader] and unzip the zipped plugin
* make a directory:
mkdir /Volumes/Patchstick-root/stuff/atvloader
* copy AwkwardTV.fappliance from the unzipped directory to /Volumes/Patchstick-root/stuff/atvloader/AwkwardTV.fappliance:
cp -R AwkwardTV.fappliance /Volumes/Patchstick-root/stuff/atvloader/AwkwardTV.fappliance
* add an installer script to the /Volumes/Patchstick-root/stuff/installer.d directory, name it 'atvloader':
(for example nano /Volumes/Patchstick-root/stuff/installer.d/atvloader )
# ATVloader plugin installer script
# (c) 2007 Galphanet (webmaster at galphanet dot com)
if [ -d /stuff/atvloader/AwkwardTV.fappliance/ ]; then
  echo -n "        * installing ATVloader plugin... "
  cp -R /stuff/atvloader/AwkwardTV.fappliance/ /OSBoot/System/Library/CoreServices/Finder.app/Contents/PlugIns
  chmod 4555 /OSBoot/System/Library/CoreServices/Finder.app/Contents/PlugIns/AwkwardTV.frappliance/Contents/Resources/SetupHelper
  echo "done."
  echo "        ATVloader plugin files not found."
* Don't foget to make it executable:
chmod 755 /Volumes/Patchstick-root/stuff/installer.d/atvloader
All done! your patchstick fully loaded now.  The next section completes the process by changing the UUID.
== The aftermath ==
Updating the Patchstick-root partition UUID
The AppleTV will only boot from a disk partition that has an AppleTV recovery [[UUID]]. There's no way to modify the UUID of a partition so you'll need to delete the boot partition (just the partition definition, not the partition data) and create another with the correct UUID in the same location. When you create the new partition, pass gpt the same -b and -s parameters that you used to create the patition you're replacing.
* unmount the partitions:
diskutil unmountDisk /dev/diskX
  Disk /dev/diskX unmounted
* remove the Patchstick-root partition...
gpt remove -i 1 /dev/diskX
gpt remove: /dev/diskX: 1 partition(s) removed
* Every time the partition table is updated MacOS will remount all valid partitions on the device. You'll need to unmount them before gpt will allow you to modify the partition table again.
* unmount all partitions:
diskutil unmountDisk /dev/diskX
  Disk /dev/diskX unmounted
* Change the Patchstick-root partition to an AppleTV recovery partition (using the -b and -s numbers recorded in the first steps on this page)
gpt add -b <font color="red">34</font> -s <font olor="red">163840</font> -i 1 -t "5265636F-7665-11AA-AA11-00306543ECAC" /dev/diskX
* unmount the partitions again.
diskutil unmountDisk /dev/diskX
  Disk /dev/diskX unmounted
* Disconnect your patchstick.
== Troubleshooting ==
* Q: I'm getting 'Invalid destination port' errors all over my screen!
** A: Yeah, I know. Ignore them. But only those!
* Q: I'm getting "master.passwd: file not found" errors!
** A: please re-mount your Patchstick-root volume to /Volumes/Patchstick-root, and type:
grep '^root:' /etc/master.passwd > /Volumes/Patchstick-root/etc/master.passwd
* Q: My patchstick keeps telling me it's "Waiting for root device". What did I do wrong?
** A: You probably forgot the step where you have to alter the plist file in the AppleFileSystemDriver kext. Please try again.
== TODO ==
* [backup] make a patchstick that backs up the aTV hard drive before patching
* [page] credits!
* [page] add links to various items (semthex's kernel, Perian, ATVFiles)
* [page] add more FAQ's (and their answers)
* [procedure] kill off unneeded kext stuff, takes too much space like this
* [script] add more optional hacks
* [script] hide patch messages, instead make animated (a la factory restore animation)
== NOTES ==
* The installer gives a lot of "bootstrap_look_up() failed (ipc/send) invalid destination port" errors. Ignoring them is safe. This is something launchd/mach_init specific which we cannot implement in a bash script.
* Sometimes the mounts go wrong. This means the journal on the filesystem it is trying to mount is dirty. Just reboot to the regular ATV OS, and retry.
* after booting to safe mode once, you don't need to do the menu & - trick again. Just plug in the USB drive, reboot by unplugging/replugging the power. Works fine here. - [[User:Mactijn|Mactijn]] 11:36, 14 April 2007 (CEST)
* so far, this list of .kext stuff is needed (based on [[Kextstat_output]]):
I used the above list to copy the kext to the USB stick and the only one missing kext to boot was:
Still a few error messages but it worked.
To copy all these including AppleIntelCPUPowerManagement.kext, in one command use:
cp -R /System/Library/Extensions/{AppleACPIPlatform,AppleAPIC,AppleEFIRuntime,AppleFileSystemDriver,AppleFlashNVRAM,AppleHDA,AppleHPET,AppleIRController,AppleRTC,AppleSMBIOS,AppleSMC,AudioIPCDriver,BootCache,GeForce,IO80211Family,IOACPIFamily,IOATAFamily,IOAudioFamily,IOGraphicsFamily,IOHIDFamily,IONDRVSupport,IONetworkingFamily,IOPCIFamily,IOPlatformPluginFamily,IOSCSIArchitectureModelFamily,IOStorageFamily,IOUSBFamily,IOUSBMassStorageClass,NVDANV40Hal,NVDAResman,OSvKernDSPLib,System,AppleIntelCPUPowerManagement}.kext /Volumes/Patchstick-root/System/Library/Extensions/

Revision as of 15:25, 13 September 2007

fei copertina cd resta in ascolto screensaver animato cartone mexico trumpet feccia rossa traduzione on line noni ligure bollenti spiriti finanziamenti golf plus wiesen midi troie tettone puttane palmare acer gps acer fun yard ferri da stiro viaggio grfield foto nudedonne quarantino fhm com ph buena vista socila club provincia vt xms pc3200 1gb amd athlon 3800 venice 1031 exchange un turco napoletano maroon5 will be love la fidanzata di stalin acer 330 lettore mp3 late mucca sebe allah glossop mp3 sony network walkman o de lancome profumo donna bishop elizabeth autoparco roxette lady venere com sguardo 72 lancia delta hf buongiorno notte nuova lancia y auto nuove cronaca regionale ati sapphire pcie radeon x600pro mascella fare sesso ai tropici lancia flavia coupe 2000 concessionario lexus torino ibm deskstar marina italiana f ck it hard disk esterno 80 la vita e bella di nicola po newjersey traduzione testo eamon double bubble bonnard abel lynch starr chauncey hermione foto live and love forever optio s 30 playstation videogiochi cassine di pietra srl il prezzo del silenzio bell 6750 acqua scooter necochea dvd divx philips 762 fiorenzo fiorentini che cose l amor presa telefonica automobili senza patente sc 2000 canon agenzia immobiliare livorno no ghe ne hotel genova coppie cerca lui bisex km0 renault clio auto km 0 netgear ps121ge croazia mare rovigni la kara i gangsters taxus clinica chirurgica genova ii gelataio puff daddy i will be missing you hp toner nero q2612a kiss or kill viterbo vendita casa annuncio immobiliare motori a combustione cassetta portavalori yamaha dvd s557 les vieux amants jacques brel scuola di ladri hard disk firewire usb2 big broters cartolina virtuali dekart sim manager panasonic dvd s295eg s novita on line hotel montepulciano multifunzione minolta the sims urbz ufo alieni racconti omosex videocamere dv canon riduzione aliquote testo chico te amo donna sotto la doccia philips 170b6cs vampyrum amplificatori dolby surround peugeot cc turn around mp3 versace black vaffanculo it gentile ada whirlpool jt359 wh footbal manager sony cyber shot dsc w5 nexium online cheap levitra zoloft online phendimetrazine online free vocal ringtones buy tamiflu free sprint ringtones disney ringtones online ultram free disney ringtones zoloft free animal ringtones vicodin online caller ringtones free free ringtones cheap adipex online zovirax pharmacy online online home mortgage loans turkey ringtones meridia online norvasc online tmobile ringtones cheap glucophage free fly ringtones cool ringtones alltel ringtones cheap valtrex cheap ephedrine cheap valium funny ringtones cheap hydrocodone paxil online free latin ringtones pharmacy online cheap flonase but hgh online wellbutrin free audiovox ringtones celebrex online cheap codeine cialis online free kyocera ringtones cheap zovirax ortho online cheap vigrx free phone ringtones cheap cephalexin vicodin qwest ringtones venlafaxine online darvon cellular ringtones free punk ringtones free cingular ringtones buy pharmacy online diethylpropion online lisinopril online cheap cipro cheap xanax order phentermine darvocet online funny ringtones lortab online cheap nexium buy diazepam pop ringtones cheap ionamin cellular ringtones adipex online provigil online cheap ritalin health insurance indiana sildenafil cheap glucophage nokia ringtones cheap ionamin order zovirax free lg ringtones cheap lortab free animal ringtones free anime ringtones actos online free mtv ringtones morphine online cheap metronidazole free cellphone ringtones cheap adderall caller ringtones celexa online free christian ringtones cheap diazepam free alltel ringtones sonyericsson ringtones cheap oxycontin free ericsson ringtones cheap norco free weird ringtones cheap alprazolam cheap klonopin music ringtones phone ringtones cheap protonix free telus ringtones jungle ringtones continentalairlines humour ringtones bmw car free christian ringtones zoloft online disney ringtones free mobile ringtones free motorola ringtones buy ultram nextel ringtones cheap vigrx cheap skelaxin free cingular ringtones philips ringtones imitrex online
Links to illegal warez, etc. will be removed, and your access will be blocked. (Details)

Apparently, there are some copies of patchstick images in the wild. Most likely, these will not work. Also, THEY ARE ILLEGAL! Also, some people report that the patchstick erased their AppleTV, resulting in a non-recoverable AppleTV. This is actually quite credible, since all Patchstick does is run some shell scripts as root. If this happened to you: GOOD FOR YOU!! Don't count on Apple to help you.

This page describes how to make a Patch stick using OSX/Intel binaries, and therefor is not legally distributable. Therefor, no support whatsoever is given to anyone.

However, I think this process is important enough to document, so we can see what steps are needed to build an open, free and 100% legal version of Patchstick. - Mactijn 23:56, 8 April 2007 (CEST)

Pre-requisites, All versions

  • USB flashdrive or disk (USB mass storage compatible) (for PatchStick.1.0.zip, a 512Meg stick is sufficient -- has anyone succeeded with a smaller stick?)
  • an Intel machine running Mac OS X 10.4.x (won't work on non-intel machines, kext files not compatible; have a look at Install SSH without an Intel Mac in this case)
  • boot.efi from OS.dmg, mount it from the latest software update

Pre-requisites, Manual way

Full Working Version

zip file mirrored here: Patchstick.zip

I (HenryLaxen) downloaded this on July 23, 2007, and found that this line in the createPatchstick file was commented out:

	cp /usr/sbin/sshd /Volumes/Patchstick/ssh/

which prevents sshd from working on the AppleTV. After uncommenting this line, I was able to log into my AppleTV with ssh -1 -v frontrow@xx.xx.xx.xx Also, I consistantly get a kernel panic when launchd executes /sbin/reboot, however by this time the ssh files have already been installed. Do not worry that the first time you log in via ssh that it takes a long time, as the AppleTV must generate its host keys. HenryLaxen July 25, 2007

Actually, there are three ssh-related lines commented in the createPatchstick script, and it worked well for me to uncomment all three. But the "sed" in the DYLD_FRAMEWORK_PATH mumble isn't found when booting from the stick, which is why I believe only "ssh -1" works so far. Also, I see no reason why the Perian lines are commented out, and restoring them allowed Perian to be installed, which is quite useful of course. clrelay 2007-08-06

I was able to use it free of any changes noted above. After installation, I used the Enable SSH Server item in the AwkwardTV frappliance to gain shell access. postman August 12, 2007

Manually: Partitioning and formatting the USB disk

based on Turbo's excellent guide here.

Update: Changed to use only one partition!

  • hook up the USB drive to your Mac
  • Re-partition it using DiskUtility: Format: Mac OS Extended (Journaled), Options: GUID table, Partition Name: Patchstick-root

If you only have one disk, your USB disk will be /dev/disk1, otherwise

  • check what disk it is:
hostname:~ user$ df -h
/dev/disk0s2               74G    72G   1.9G    97%    /
devfs                     100K   100K     0B   100%    /dev
fdesc                     1.0K   1.0K     0B   100%    /dev
<volfs>                   512K   512K     0B   100%    /.vol
automount -nsl [205]        0B     0B     0B   100%    /Network
automount -fstab [219]      0B     0B     0B   100%    /automount/Servers
automount -static [219]     0B     0B     0B   100%    /automount/static
/dev/diskX                499M    40K   499M     0%    /Volumes/NO NAME

NOTE: if you see something like /dev/disk1s1, /dev/diskX means /dev/disk1, not /dev/disk1s1!

  • Now get the partition information which is required later to change the GUID:
gpt -r show /dev/diskX

results in:

   start    size  index  contents
      0       1         PMBR
      1       1         Pri GPT header
      2      32         Pri GPT table
     34       6         
     40  511920      1  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
 511960       7         
 511967      32         Sec GPT table
 511999       1         Sec GPT header

Note the start and size of the partition - use this at the bottom of these instructions as the -b -s parameters (in this case -b 40 -s 511920)

Creating the patchstick boot-environment

this part is, for now, based on copying OSX binaries, and needs to be replaced ASAP

After performing the steps in the previous chapter, the USB drive's primary partition should have mounted itself as /Volumes/Patchstick-root. If you named it differently, please substitute all occurences of /Volumes/Patchstick-root with the correct one.

  • in a shell, as root, change the current directory to the patchstick root FS:
hostname:~ root# cd /Volumes/Patchstick-root
  • create the directory structure:
hostname:/Volumes/Patchstick-root root# mkdir -p sbin usr/lib/system System/Library/Extensions stuff etc dev OSBoot
hostname:/Volumes/Patchstick-root root# ln -s sbin bin
  • copy semthex's kernel (named mach_kernel) to /Volumes/Patchstick-root/
  • create /Volumes/Patchstick-root/com.apple.Boot.plist with your favourite text editor (vi/pico/joe/...) and make it look like this:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
        <key>Background Color</key>
        <key>Boot Fail Logo</key>
        <key>Boot Logo</key>
        <key>Kernel Flags</key>
  • copy over the following files:
hostname:/Volumes/Patchstick-root root# cp -R /System/Library/Extensions/{AppleACPIPlatform,AppleAPIC,AppleEFIRuntime,AppleFileSystemDriver,AppleFlashNVRAM,AppleHDA,AppleHPET,AppleIRController,AppleRTC,AppleSMBIOS,AppleSMC,AudioIPCDriver,BootCache,GeForce,IO80211Family,IOACPIFamily,IOATAFamily,IOAudioFamily,IOGraphicsFamily,IOHIDFamily,IONDRVSupport,IONetworkingFamily,IOPCIFamily,IOPlatformPluginFamily,IOSCSIArchitectureModelFamily,IOStorageFamily,IOUSBFamily,IOUSBMassStorageClass,NVDANV40Hal,NVDAResman,OSvKernDSPLib,System,AppleIntelCPUPowerManagement}.kext /Volumes/Patchstick-root/System/Library/Extensions/
hostname:/Volumes/Patchstick-root root# cp /bin/bash /bin/chmod /usr/sbin/chown /bin/cp /sbin/mount /sbin/mount_hfs /sbin/mount_devfs /bin/sleep /sbin/umount /bin/sync /bin/mkdir /usr/bin/sed /usr/sbin/installer /Volumes/Patchstick-root/sbin/
hostname:/Volumes/Patchstick-root root# cp /usr/lib/dyld /usr/lib/libSystem.B.dylib /usr/lib/libncurses.5.4.dylib /usr/lib/libgcc_s.1.dylib /Volumes/Patchstick-root/usr/lib/
hostname:/Volumes/Patchstick-root root# cp /usr/lib/system/libmathCommon.A.dylib /Volumes/Patchstick-root/usr/lib/system/
  • Patch the AppleFileSystemDriver and add the following section to the file /Volumes/Patchstick-root/System/Library/Extensions/AppleFileSystemDriver.kext/Contents/Info.plist in the IOPropertyMatch array:
                                                <key>Content Hint</key>
                                                <key>Content Hint</key>
                                                <key>Content Hint</key>

  • now, create /Volumes/Patchstick-root/sbin/launchd with your favourite text editor (vi/pico/joe/...) and make it look like this:

exec 2>/dev/console
exec 1>/dev/console

echo "        --- AppleTV Patchstick ---"
echo '        (please ignore the "invalid destination port\" errors)'

# echo "        * remounting / r/w"
# /sbin/mount -uw /

echo "        * mounting OSBoot partition r/o"
/sbin/mount -t hfs -r /dev/disk0s3 /OSBoot

echo "        * re-mounting OSBoot partition r/w"
/sbin/mount -uw /OSBoot

echo "        * mounting stuff partition r/o"
/sbin/mount -t hfs -r /dev/disk1s2 /stuff

echo "        * keeping the OSBoot partition r/w for plugins"
touch /OSBoot/.readwrite

if [ -d /OSBoot/dev/ ]; then

  for i in /stuff/installer.d/*; do
    echo "        --- ${i} ---"
    /sbin/bash "${i}"