Rio Karma, Banshee 1.0 and Ubuntu 8.04

Here’s a little step-by-step guide to getting your Rio Karma running on Ubuntu 8.04 with the new amazing Banshee 1.0. But first a little appetizer:

Thumb: Banshee 1.0 with Rio Karma

What we’ll do is fetch some stuff to get the compilation of Banshee working, patch up the source code, compile it and then as a last step we’ll get the kernel module for Karma up and running. So, here’s what you do:

$ sudo apt-get install libkarma0 libkarma-cil libkarma-dev omfs-source
$ sudo apt-get remove banshee
$ sudo apt-get build-dep banshee

Now we have the software from the Ubuntu repos, we’ve removed the old Banshee and installed the software needed for compiling Banshee. But we still need to get the Banshee source code. I prefer grabbing the latest version from SVN as Banshee is still under heavy development, and a lot of bug fixes will have been contributed as of writing this howto.

$ svn co http://svn.gnome.org/svn/banshee/trunk/banshee
$ cd banshee

And now the cool stuff: The patch that installs the support for Rio Karma which has not yet been committed to the trunk of the project. Bob Copeland is the maintainer so let’s all use this moment to send him our best of thoughts. He’s posted a patch here that you should download (look for the latest one). Save it in the same directory as the one with your banshee/ source dir. Now apply it like this:

$ cd banshee/
$ patch -p1 < karma.patch

After that you can compile banshee with the following commands.

$ ./configure –disable-boo
$ make
$ sudo make install

One thing we still need to do is compile the OMFS module for our Linux kernel. The source package in Ubuntu is broken, and what you basically need to do is to grab the latest version of the OMFS module and then overwrite the files provided by the Ubuntu omfs-source package. And only after that use module-assistant to install the module, otherwise the compile fails because something in the kernel API has changed.

$ sudo bash
# cd /usr/src
# tar xvfj omfs-source.tar.bz2
# tar xvfz omfs-0.8.0.tar.gz
# cp omfs-0.8.0/* modules/omfs
# module-assistant build omfs
# module-assistant install omfs
(plugin your Karma)
# modprobe usb-storage

This isn’t such a beautiful solution, but it ensures that we can still benefit from using module-assistant.

Lastly you should disable the Mass Storage plugin (it makes the Karma show up twice) and you cannot currently attach the Karma while Banshee is running.

10 Responses to “Rio Karma, Banshee 1.0 and Ubuntu 8.04”

  1. pelago Says:

    This stumped me for a while:

    patch -p1 karma.patch should be patch -p1 < karma.patch

  2. benjamin Says:

    Oh thanks! That went in the HTML escaping I guess.

  3. gaudentius Says:

    How do you download/save the patch from bugzilla? I can’t find a link there. Forgive the n00bness, please. Just got my 1525n in July. Still working out the Linuxness.

  4. morgan Says:

    Man, I’m having the worst time with omfs. module-assistant build omfs exits with:

    make[2]: Entering directory `/usr/src/modules/omfs’ ↑
    │ make -C /lib/modules/2.6.24-19-generic/build M=/usr/src/modules/omfs ▒
    │ modules ▒
    │ make[3]: Entering directory `/usr/src/linux-headers-2.6.24-19-generic’ â–’
    │ CC [M] /usr/src/modules/omfs/inode.o ▒
    │ /usr/src/modules/omfs/inode.c: In function ‘init_inodecache’: ▒
    │ /usr/src/modules/omfs/inode.c:50: warning: passing argument 5 of ▒
    │ ‘kmem_cache_create’ from incompatible pointer type ▒
    │ /usr/src/modules/omfs/inode.c:50: error: too many arguments to function ▒
    │ ‘kmem_cache_create’ ▒
    │ make[4]: *** [/usr/src/modules/omfs/inode.o] Error 1 ▒
    │ make[3]: *** [_module_/usr/src/modules/omfs] Error 2 ▒
    │ make[3]: Leaving directory `/usr/src/linux-headers-2.6.24-19-generic’ â–®
    │ make[2]: *** [modules] Error 2 ▒
    │ make[2]: Leaving directory `/usr/src/modules/omfs’
    make[1]: *** [binary-modules] Error 2 â–’
    │ make[1]: Leaving directory `/usr/src/modules/omfs’ â–®
    │ make: *** [kdist_build] Error 2

    Any idea what I’m doing wrong?

  5. benjamin Says:

    Yes. They changed something in the kernel, so now it doesn’t build anymore. Anyhow, download the omfs module directly from their sourceforge and do the make modules_install. It worked for me. But I can’t get the Karma plugin to build in the new Banshee currently. I might do an update on this, but right now I’m waiting for my new Clix2 and might opt out of the whole Karma thing :(

    http://sourceforge.net/project/showfiles.php?group_id=155788&package_id=175124

  6. Donal Says:

    I failed to get my karma working with Amarok on 8.04. Just installed Intrepid and wondering if this process will work? I haven’t used Banshee but I’ll try anything to get my Karma recognised. It’s my MAIN reason for keeping Windows! I tried the Rio Installer in WINE but no luck either. can you tell me if i should just follow the same process for 8.10?

  7. Donal Says:

    Hi, I’ve since realised that 1.4 is “supposedly” released (that said because Synaptic AND the Banshee PPA are supposed to have 1.4 but dowloading from either results in 1.2.1). Assuming i can install it, do you know does it have Rio Karma support, i.e. would this “patch” have been added to 1.4? The actual documentation on the Banshee site is very minimal.

    regards
    Donal

  8. alex Says:

    With kernel 2.6.27 omfs support has been mainlined (ie. it’s integrated in the kernel now), so there is no need to build the module yourself anymore.

    You can find out your kernel version by doing ‘uname -a’; and right now this affects intrepid users at least.

  9. Scott Says:

    So, with banshee 1.4.2 and kernel 2.6.27 what other packages need to be added to get banshee to recognize my Rio Karma?

  10. benjamin Says:

    My Karma finally broke, so I’m not really up-to-date. But doing the following yielded a positive result, so I’m quite sure, that if you can compile Banshee with libkarma support, and then you should be good to go. Try it out and tell me what Banshee says about karma support, when you do ./autogen

    $ find /lib/modules/2.6.27-11* | grep omfs
    /lib/modules/2.6.27-11-generic/kernel/fs/omfs
    /lib/modules/2.6.27-11-generic/kernel/fs/omfs/omfs.ko

Leave a Reply