Android-Image auf SDCard
Wer keine Lust hat sich Androd zu Kompilieren kann natürlich auch ein fertiges Image entpacken und Nachbearbeiten.
Dazu wird erst mal ein Neuer Ordner erstellt, nennen wir ihn android
$ mkdir android $ cd android
dann brauchen wir noch 2 Ordner einen um das Image dorthin zu mounten und einen um es dann zu bearbeiten.
$ mkdir image && mkdir rootfs
jetzt besorgen wir uns ein kleines Skript welches uns das jffs2 Image mountet und machen es ausführbar
$ wget http://wiki.openmoko.org/images/8/82/Mntjffs.sh && chmod +x Mntjffs.sh
Wir besorgen uns einen Kernel und benennen ihn um
$ wget http://www.fragcom.de/android/uImage-v14.bin && mv uImage-v14.bin uImage-GTA02.bin
Und jetzt das jffs2 Image sowie die Mod init.rc
$ wget http://www.fragcom.de/android/freerunner-v14.jffs2 $ wget http://activationrecord.net/radekp/openmoko/android/init.rc
nachdem wir alles haben, mounten wir jetzt das jffs2 image
$ sudo ./Mntjffs.sh freerunner-v4.jffs2 image/
Jetzt beginnt die Arbeit ;D , erstellt eine Datei namens work und fügt den unten stehenden text ein und speichert sie in unserem Ordner android ab.
#!/bin/sh cp -r image/* rootfs/ mkdir rootfs/boot cp uImage-GTA02.bin rootfs/boot echo "console=tty0 loglevel=8 rootdelay=1" > rootfs/boot/append-GTA02 cp init.rc rootfs/ cd rootfs tar -czvf ../rootfs.tar.gz . cd ..
Noch geschwind ausfürbar machen mit
$ chmod +x work
mit
$ ./work
wird nun die rootfs.tar.gz erstellt.
jetzt haben wir in unserem Ordner rootfs eine neue Datei mit dem Namen rootfs.tar.gz
und können anfangen die Dateien auf unsere SD Karte zu bannen.
Dazu müssen wir wenn nicht schon geschehen die beiden Partitionen der SD Karte wieder einbinden, in meinem fall ist die Partition /dev/mmcblk0p1 nach /media/disk und die /dev/mmcblk0p2 nach /media/disk-1 gemountet worden.
Erst wird der Kernel nach /media/disk kopiert
$ cp uImage-GTA02.bin /media/disk/uImage.bin
und nun wird das rootfs nach /media/disk-1/ entpackt mit
$ tar -C /media/disk-1/ -xzvf rootfs.tar.gz
Bevor Android von der SD Karte gebootet werden kann, muss der neue Qi Bootloader auf euer Freerunner geflasht werden.
Wie das geht und woher ihr ihn bekommt erfahrt ihr hier http://wiki.openmoko.org/wiki/Qi