First, as always, I am not responsible for any damages done to your equipment, if you choose to jailbreak and modify your device, that is on you!!
Now, you will need to obtain a version of the 2.x firmware, and your device will need to be jailbroken. After you have jailbroken the device, you need to install ‘OpenSSH’ and ‘Mobile Terminal’ from Cydia or Installer. These allow the obvious, ssh access and a terminal on the device.
On your linux box, you will need Amarok 1.4.10 or before, sadly, Amarok 2.0 will not work yet. You will also need sshfs and fuse.
# echo "media-sound/amarok ipod" /etc/portage/package.use
# emerge sys-fs/fuse sshfs-fuse =media-sound/amarok-1.4.10-r2
Set a static ip address on the device to match your the network your linux box is on.
Now, ssh into the device, the root password is defaulted to alpine.
$ ssh root@192.168.1.110
Edit the /etc/ssh/ssh_config on the device, and add the following lines:
iTouch# nano /etc/ssh/ssh_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
Next, you need to generate a ssh key for passwordless login into the device, and copy it to the device.
$ ssh-keygen
$ ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.110
Now to make sure that your permissions are set right for passwordless login:
iTouch # cd ~
iTouch # cp .ssh/authorized_keys .ssh/authorized_keys2
iTouch # chmod 755 /var/root
iTouch # chmod 700 /var/root/.ssh
iTouch # chmod 644 /var/root/.ssh/authorized_keys
iTouch # reboot
After your device has rebooted, test your connection to make sure that you can log into your device without a password.
$ ssh root@192.168.1.110
If all is well, mount the device to your desired directory, or you can use ipod-touch-mount or iphone-mount in Ubuntu.
$ mkdir ~/itouch
$ sshfs root@192.168.1.110:/var/mobile/Media ~/itouch
Next, we have to get and set the Firewire GUID:
$ cd ~/itouch/iPod_Control/Device
$ su
# lsusb -v -d 05ac: | grep iSerial | awk '{print $3}' | cut -b1-16 | xargs printf "FirewireGuid: 0x%s\n" > SysInfo
Reboot the device. Now, before we can continue with syncing and adding music to the device, we have to modify the database version. This will allow libgpod to recognize and sync your device to Amarok. Sadly, I haven’t gotten this to work with RhythmBox or Exile.
We are going to log into the device, and edit the checkpoint.xml file…
$ ssh root@192.168.1.110
iTouch # nano /System/Library/Lockdown/Checkpoint.xml
Search for the DBVersion Key, and change the value from 4 to 2.
iTouch # reboot
The last thing we have to do is add your device to Amarok so that it will populate your music and you can sync your device.
- Launch Amarok, and go to Settings => Configure Amarok…
- Click the ‘Media Devices’ botton at the bottom
- Click ‘Add Device…’
- Select ‘Apple iPod Media Device’
- Name your Device
- The mount point should be ‘/home/$USER/itouch’ (unless you are using ipod-touch-mount, then it is /media/ipod)
- Click Ok, and your are all set. Once you are in Amarok, just go to the devices tab on the bottom left (printed sideways) and click the ‘Connect’ button on your device and your music will populate in that device window. You can drag and drop your music into that device from your Amarok music collection as well.
Comments Left