All pastes #439038 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-04-14 00:31 UTC
rendered paste body
To install the kernel you need the iPod boot loader, a version of the iPod Linux Kernel (http://sourceforge.net/project/showfiles.php?group_id=73079&package_id=73283) and the iPod operating system backup created earlier in the backup process.

You are strongly encouraged to grab a nightly kernel (http://www.ipodlinux.org/builds) (get the latest), since it may contain fixes that haven't made it into a release yet.

Firstly extract the ipodloader and iPod Linux kernel archives into a working directory and check for any last minute release notes. In the examples below the make_fw tool and loader.bin file are from the ipodloader distribution (note: this means that they're quite outdated because there's a new make_fw as well as a new bootloader) and the iPod Linux kernel version is uclinux-2.4.24-ipod2.bin.

1. Extract the Apple OS from the backup image.

# ./make_fw -o apple_os.bin -e 0 ipod_os_partition_backup

If you cannot extract the Apple OS, you may have a corrupt image, possibly due to a bad hard drive. You can extract the image from the iPod updater supplied by Apple under Windows. This is useful if the hard drive is bad, but still accepts the Apple firmware without problems.

2. Create a new image including the Linux and the Apple OS.

If you have a 5G, please see the Loader 2 page.

To make the Apple firmware the default, use

# ./make_fw -g gen -o my_sw.bin -i apple_os.bin -l uclinux-2.4.24-ipod2.bin loader.bin (4g+)

To make Linux the default:

# ./make_fw -g gen -o my_sw.bin -l uclinux-2.4.24-ipod2.bin -i apple_os.bin loader.bin (4g+)

gen can be one of these:

1g, 2g, 3g, 4g (scroll, touch, dock, click), mini, photo, nano, 5g (video)

3. Copy the new image (which is about 4-5 MB in size) back to your iPod.

# dd if=my_sw.bin of=/dev/sdX1

4. Copy the kernel modules onto the iPod (note the directory /mnt/ipod must exist and should not be in use). The lib directory below refers to the directory from the kernel release and contains the modules directory.
(This step is not needed on 4G+ iPods, nor if you downloaded a nightly kernel.)

# mkdir /mnt/ipod
# mount -t ext2 /dev/sdX3 /mnt/ipod
# cp -r lib /mnt/ipod
# umount /mnt/ipod