Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
HOWTO: iPod Classic 3G / Newer iPods + Amarok + libgpod
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks
View previous topic :: View next topic  
Author Message
Doomhammer
n00b
n00b


Joined: 20 Sep 2004
Posts: 52
Location: Utah, USA

PostPosted: Sun Dec 27, 2009 8:39 pm    Post subject: HOWTO: iPod Classic 3G / Newer iPods + Amarok + libgpod Reply with quote

So the version of libgpod that's available in portage, 0.7.2, has some issues that prevent it from working correctly with newer iPods (my new iPod Classic 3G 160GB, for example). This is how to get it working such that Amarok (or, really, whatever other application that uses libgpod) can copy music to your iPod successfully.
(The problem was made apparent courtesy of this patch, this patch, and "teuf" in #amarok on irc.freenode.net)

All of these commands will need to be run as root, unless otherwise specified.

Step 1: Plug the iPod into a machine running iTunes and restore factory settings (this may or may not be necessary, but is worth a try if the rest of this doesn't work for you).

Step 2: Set up a local portage overlay (an explanation of how to do this can be found here: http://en.gentoo-wiki.com/wiki/Writing_Ebuilds).

Step 3: Put this ebuild in (your local overlay)/media-libs/libgpod/
Warning: This ebuild just installs the latest git snapshot / development tree of libgpod; it isn't exactly guaranteed to be stable and might break things. It works just fine for me, but that's no guarantee it'll be stable for everyone.

Step 4: cd into (your local overlay)/media-libs/libgpod/ and run: "ebuild libgpod-9999.ebuild manifest"

Step 5: Install the new git-based version of libgpod via "emerge -av =media-libs/libgpod-9999" (this works fine on my machine running ~amd64; if bugs are encountered let me know and I can update the ebuild or whatever else is necessary).

Step 6: Rebuild Amarok or whatever other software you use -- revdep-rebuild should be able to do this for you, or "emerge -av amarok" or whatever.

Step 7: We need to set the FWGUID on our iPod so that libgpod will work correctly. There are two different methods to do this. All of the commands for this step can be run as a non-root user or as root -- since the iPod's filesystem is FAT32 permissions aren't preserved so it makes no difference.
(This info is taken from here: http://gtkpod.wikispaces.com/Sysinfo+File#ClassicNano3g)
This step only needs to be performed once! After you set the FWGUID and create the SysInfo file, your iPod should work just fine every time you plug it in and copy songs / whatever else after that.

Method 1 (Easy / Automagic):

Step 1: After the iPod is plugged in and mounted, run: ipod-read-sysinfo-extended (ipod device) (ipod mount point)

Method 2 (Harder / Manual / Should work if Method 1 fails):

Step 1: Find out what the FWGUID is by running "lsusb -v | grep -i Serial"

Step 2: The FWGUID is a 16-character (or longer, for certain models of iPod) hex string.

Step 3: Add the following line to (ipod mount point)/iPod_Control/Device/SysInfo:
FirewireGuid: 0x[THE-FIRST-16-CHARACTERS-OF-THE-FWGUID-STRING]

If you want to test that the FWGUID is set correctly / check that libgpod can find it (this is almost certainly not necessary, especially if Method #1 didn't return any errors):
(This section can be done as a non-root user if you want to.)

Step 1: Copy /usr/portage/distfiles/git-src/libgpod to a temporary directory (~/tmp or something).

Step 2: cd into that source directory.

Step 3: Run: ./autogen.sh && make

Step 4: Run: ./tests/test-firewire-id (ipod mount point) -- this should display the 16-character FWGUID hex string if it worked correctly.

Step 8: Start up Amarok (or whatever other program you use).

Step 9: Copy tracks over / whatever else you want to do.

To safely eject the iPod:

Step 1: Click the eject button in Amarok (other programs might not have a button specific to them; if there is one, click it, if not, meh)

Step 2: Unmount the iPod.

Step 3: Run: eject (ipod device)

And you're done; all the tracks that were copied should show up just fine. If they don't for some reason, restarting the iPod (via holding the middle button + menu or whatever) might help. So far the only issue I've experienced is that album artwork doesn't get displayed on the iPod, but this might just be due to me failing / Amarok not supporting it / whatever.
Back to top
View user's profile Send private message
nixnut
Administrator
Administrator


Joined: 09 Apr 2004
Posts: 10973
Location: the dutch mountains

PostPosted: Tue Dec 29, 2009 6:04 pm    Post subject: Reply with quote

Moved from Multimedia to Documentation, Tips & Tricks.
_________________
Please add [solved] to the initial post's subject line if you feel your problem is resolved. Help answer the unanswered

talk is cheap. supply exceeds demand
Back to top
View user's profile Send private message
perga
n00b
n00b


Joined: 18 Sep 2004
Posts: 68
Location: SWEDEN

PostPosted: Sat Jan 30, 2010 2:44 pm    Post subject: Reply with quote

It seems that the latest git version of libgpod needs libplist. This is in portage, app-pda/libplist, but for some unknown reason it is keyworded only for '~amd64'. I made another overlay for this ebuild and added the '~x86' keyword. Then I emerged libplist, emerged libgpod and followed the rest of the instructions.

Everything works OK now.
_________________
perga
Back to top
View user's profile Send private message
summonbaka
n00b
n00b


Joined: 30 Jul 2009
Posts: 11
Location: Tokyo

PostPosted: Wed Oct 20, 2010 6:03 pm    Post subject: Reply with quote

Version 0.7.95 of lib gpod in portage works for my iphone 3gs. Can sync music and add new photo-folders with gtkpod. Don't remember trying access of music with amarok or rythmbox but should work also.

Most, if not all software is already in the main tree:

The ones I'm using are:

app-pda/ifuse-1.0.0
media-libs/libgpod-0.7.95
app-pda/libmobiledevice-1.0.2
app-pda/usbmuxd-1.0.5
dev-libs/libusb-1.0.8

There's also a configuration in the kernel you have to add, but I don't remember the name of the module.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Documentation, Tips & Tricks All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum