Tuesday, September 19, 2006

HOWTO: Banshee 0.11 + Ubuntu

Dec 9/06: Banshee 0.11.3 has been released! Updated HOWTO here.
Updated Sept 26, 2006 (Added iPod support stuff)
Updated October 16, 2006 (Minor fixes)


With the Banshee 0.11 hot off the press, and no .DEBs for Ubuntu 6.06/Dapper Drake in sight, I figured people would probably appreciate some instructions on how to install the new Banshee. Well, here we go:


IMPORTANT NOTE:
If you have the QuinnStorm repositories enabled (for Compiz/XGL stuff), you might encounter this compile error: "/bin/grep: can't read /usr/lib/libXrender.la: No such file or directory" or something along those lines. The necessary fix can be found here. (I just ended up removing the "/usr/lib/libXrender.la" part of that line and it fixed it, and I think that's probably a safer route.)
Ubuntu 6.10/Edgy Eft Users: Updated Banshee packages will probably hit the Edgy repositories, so just hold tight for a bit and hopefully an updated package will get pushed through the usual Ubuntu update notifier.

To follow this HOWTO, just punch (ie. copy and paste) the commands listed into a terminal. Good luck!

1. Install prerequisites

First, make sure you have the universe repository enabled. If you're unsure, here's instructions on how to check and enable it.
Next, install the software required to build Banshee:

sudo apt-get build-dep banshee
sudo apt-get install libavahi-cil mono
sudo apt-get build-dep libipoddevice0
sudo apt-get install libgtop2 libgtop2-dev libsgutils libsgutils-dev
wget http://banshee-project.org/files/libipoddevice/libipoddevice-0.5.0.tar.gz
wget http://banshee-project.org/files/ipod-sharp/ipod-sharp-0.6.2.tar.gz
tar -xvzf libipoddevice-0.5.0.tar.gz
tar -xvzf ipod-sharp-0.6.2.tar.gz

Now, in order to have iPod support, we're going to install libipoddevice and ipod-sharp:

cd libipoddevice-0.5.0
./configure --prefix=/usr
make
sudo make install
cd ..

cd ipod-sharp-0.6.2
./configure --prefix=/usr --disable-docs
make
sudo make install

(The above iPod steps can be safely left out if you don't need iPod support...)

2. Download Banshee 0.11

wget http://banshee-project.org/files/banshee/banshee-0.11.0.tar.gz
wget http://www.banshee-project.org/files/banshee-official\
-plugins/banshee-official-plugins-0.11.0.tar.gz

3. Extract and configure

tar -xvzf banshee-0.11.0.tar.gz
tar -xvzf banshee-official-plugins-0.11.0.tar.gz
cd banshee-0.11.0
./configure --prefix=/usr --enable-avahi --disable-docs

I suggest leaving avahi enabled here as I did so that DAAP sharing works. (It lets you share your music library with iTunes, Limewire, etc. users, as well as listen to other peoples'.) iPod support should be automatically detected if you followed the iPod steps above.

4. Build and install Banshee

make
sudo make install


5. Configure, build, and install the plugins

cd banshee-official-plugins-0.11.0
./configure --prefix=/usr
make
sudo make install


6. Run Banshee!

Either from the console run "banshee" or launch it from the "Applications->Sound & Video" menu in GNOME.

That's it! I've tested this on an "almost" fresh-install Ubuntu 6.06/Dapper Drake machine, but if this doesn't work for you, leave a comment and I can try to help you figure it out. :)

Digg!

29 comments:

Anonymous said...

Being a Gentoo user I'm not upset with the instructions how to compile this; but anyway you're a big Ubuntu fan, why not make your own DEB package file until an "official" one is released?

Albert said...

I definitely agree with silwenae. It's pretty tricky to roll your own DEB (the proper/non-checkinstall way).

We'll see what happens though... maybe it's time for me to finally learn how to properly build a package...

Anonymous said...

Nice work,
Ipodder decided to give up on me today and I've been looking forward to an offical release of 0.11 any hoo. Perfect.

Anonymous said...

Followed this tutorial (Thank you!), and I have a couple of issues.

First, I am using a laptop with wireless Internet. The CD metadata doesn't work, as there is an error stating there "is no active internet connection." However, the internet is working fine. ;-)

Secondly, I have a Creative Zen Touch. It works great with my Gnomad2, but with Banshee it crashes. When I plug in my mp3 player, Banshee recognizes it. However, as soon as I click on the icon to sync it, the program dies with the following error code:

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object
in <0x00069> <>AnonHelp<4>:<#AnonymousMethod>5 (object,System.EventArgs)
in <0x00041> (wrapper delegate-invoke) System.MulticastDelegate:invoke_void_object_EventArgs (object,System.EventArgs)
in <0x0001a> InvokeCB:Invoke ()
in <0x00037> (wrapper delegate-invoke) System.MulticastDelegate:invoke_bool ()
in <0x0002a> TimeoutProxy:Handler ()
in <0x00036> (wrapper native-to-managed) TimeoutProxy:Handler ()
in (unmanaged) 0xb7d4e4a7
in <0x00004> (wrapper managed-to-native) Gtk.Dialog:gtk_dialog_run (intptr)
in <0x0001d> Gtk.Dialog:Run ()
in <0x000ec> Banshee.Gui.CleanRoomStartup:Startup (Banshee.Gui.CleanRoomStartup/StartupInvocationHandler,string[])
in <0x00038> Banshee.BansheeEntry:Main (string[])

There is also a bit of error code at the beginning of the program when Banshee first loads:

(/usr/lib/banshee/banshee.exe:6445): GdkPixbuf-WARNING **: GdkPixbufLoader finalized without calling gdk_pixbuf_loader_close() - this is not allowed. You must explicitly end the data stream to the loader before dropping the last reference.
Debug: [9/28/2006 4:32:57 PM] (Default player engine) - GStreamer 0.10
Debug: [9/28/2006 4:32:57 PM] (Audio CD Core Initialized) -
Setting MusicBrainz proxy to www.musicbrainz.org:80
Setting MusicBrainz proxy to www.musicbrainz.org:80
Warning: [9/28/2006 4:33:01 PM] (Power Management Call Failed) - Unsupported version of GNOME Power Manager: Method "GetOnAc" with signature "" on interface "org.gnome.PowerManager" doesn't exist


(Banshee:6445): Gtk-CRITICAL **: gtk_tree_view_get_cell_area: assertion `GTK_WIDGET_REALIZED (tree_view)' failed

Sorry for the long post, and thanks for your help.

--joel

Albert said...

Hi Joel,

That CD metadata bug is odd. I think I remember reading that Banshee uses NetworkManager to see if you're connected to the internet or not, but surely it's gotta work without NM installed... Odd...

Second, does your Zen Touch use MTP or does it just look like a USB mass-storage device?
The closest thing I could find to that bug was this:
http://bugzilla.gnome.org/show_bug.cgi?id=357083

I have no idea what the problem is related to from looking at that error it spits out though, it looks pretty odd.
I'd suggest filling a new bug:
http://bugzilla.gnome.org/enter_bug.cgi

Lastly, the garbage that Banshee spits out upon startup is harmless (in your case at least), it's nothing to worry about.

Sorry I couldn't be of more use! (I think you found some genuine bugs though!)

Anonymous said...

Great how-to. Quick question...how do I go about uninstalling banshee after installing it in this way?

Albert said...

Hi Dave,

Alas, this is one of the drawbacks of installing stuff from source.

To uninstall Banshee, you have to go back to the directory you unpacked ("banshee-0.11-0") and type "make uninstall". (You need to do the same for the plugins I believe.)

If you deleted that directory, you need to download the banshee-0.11.0.tar.gz, possibly do a "./configure --prefix=/usr", then a "make uninstall".

Good luck!

(P.S. I just upgraded to Edgy and I just installed Banshee from the Ubuntu repos over top of my version without any problems...)

Anonymous said...

I have a problem:

when i'm doing

in cd ipod-sharp-0.6.2
./configure --prefix=/usr
make
sudo make install


give this

checking for mdassembler... no
configure: error: You need to install mdassembler

what can i do?

Albert said...

Hi anonymous,

To fix that problem, run this configure line instead:

./configure --prefix=/usr --disable-docs

If that doesn't work, try installing the "monodoc-base" package in Synaptic.

I think I'll update the HOWTO... thanks!

Anonymous said...

Hey there,

Just wanted to say thanks for the guide. Worked great. Banshee 0.11 is, in my opinion, the best podcast client by far.

Thanks again.

Albert said...

Thanks Colin! Glad it was useful. :)

Anonymous said...

ok, well, for one thing, when i try to build the dependencies for banshee, it says it failed, same for the libipoddevice0. Then everything goes well for a while, i can install things from the different sites, oh, and just a side note, the wget site u list for the banshee plugins gets cut off, i dunno if thats a fluke or not. The biggest problem i have, is when i go to do './configure', at the end of the configuring, it says

No package 'mono' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables MONO_CFLAGS
and MONO_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.

any idea how to fix that? that is also why i skipped the ipod support, because of this same issue

Albert said...

Hi Anonymous,

Oops - my bad! Apparently you're missing the "mono" package, which I forgot to include in the dependencies in the first step.
Typing the following in a console should allow you to continue with the compilation instructions:

sudo apt-get install mono

Good luck!
(Time to update the guide again...)

Anonymous said...

haha, funny thing about that....turns out i had installed it trying to fix it earlier today, sorry i forgot to mention that =/ ummm, yea, someone said to get the newest version of gtk-sharp or something like that, i did that too and it still didnt work -_- so if you have any suggestions, im all open to em.

Anonymous said...

oh, and i figure, while im at it, heres what the message says when getting the dependencies for banshee:

matt@matt-desktop:~/banshee-0.11.0$ sudo apt-get build-dep banshee
Reading package lists... Done
Building dependency tree... Done
E: Build-dependencies for banshee could not be satisfied.

any idea how to get it to be satisfied?

Anonymous said...

Hey GameGod,

Thanks for linking to my blog. Just wanted to let you know, I changed hosts and my new URL is techbycolin.com.

Thanks and keep up the good work.

Albert said...

Colin: The link's been updated. Thanks for linking to me too! :)

Anonymous: You're sure you have the universe and multiverse repositories enabled?
I've come across a similar problem myself once, and it turned out that the universe and multiverse _updates_ repositories weren't enabled, and this was causing the same problem (I think).
In order to enable these, look for two similar lines to the following in your /etc/apt/sources.list:

deb http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted

and change them by adding "universe multiverse" in there:

deb http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted universe multiverse
deb-src http://us.archive.ubuntu.com/ubuntu dapper-updates main restricted universe multiverse

(Then run a "sudo apt-get update", then try the build-dep thing again...)

Good luck (again, lol)! :)

Anonymous said...

lol, well, its me again, aaaannddddd, well, someone said to install libmono0 and i did, so now it sees mono, but now it cant find Mono.Cairo.dll.......heres the actual error

configure: error: missing required Mono 2.0 assembly: Mono.Cairo.dll

and do you have AIM or something related? it would make this alot easier.
Oh, and thanks for the help so far

Anonymous said...

*eye twitch* ok, so apparently i missed something, and now it says it wants sqlite3......lets see if i cant get by that one.....

Anonymous said...

lol, sry bout so many posts, now it wants libmusicbrainz....aparently i dont have any of these things, even though i do....i just dont have the dev files for em -_- so im slowly chugging now....o ya, and do u have AIM/MSN? if u do, it would be nice to talk to you and learn junk about ubuntu

Albert said...

hahah, no problem :P

When you're compiling stuff, you need to install the "-dev" packages as well for the dependencies...

For musicbrainz, the main package is "libmusicbrainz4c2a" and the development package (with the headers and stuff) is "libmusicbrainz4-dev"...

My MSN is johnrocky2NOSPAM@hotmail.com
and my ICQ number is 228344NOSPAM59.
(remove the NOSPAM from each)
Add me and I'll help you figure it out. :)

Anonymous said...

ok, so im stuck now, cuz i got everything done so far, but i hit a problem, apparently libhal-dev cant be installed because it installs a bad version or something? and if i uninstall libhal, i gotta uninstall like everything, any way around that? and my msn is bountyhunter2789NOSPAM@hotmail.com and same goes for me about the no spam thing

Albert said...

W00t!
We fixed it... :)

Turns out the libhal1 and libhal-dev conflicting versions thing was caused by a bad libhal1 package from an ntfs-3g guide.

The solution was to go into Synaptic and then do a "Force version..." on the libhal1 package and revert it to the Dapper version.
Everything was smooth sailing from there.
:)

Anonymous said...

t'was not a bad package from a bad guide, it's just the fact that ntfs-3g when u downloaded it from the repository it updated it automatically.

And for those of you who were wondering, the new version, all it was for was to make usb hdds use the ntfs-3g when plugged in automatically....aka useless cuz I personally back up everything from windows....which reminds me, i gotta do that soon.....

Todd Halfpenny said...

J O E - I also had the same problem but have got a solution. It appears that nm-applet will only look after those connections not looked after by the Network monitor. You need to simply comment out the lines relating to this in the config (sudo gedit /etc/network/interfaces) and then restart. You should then see the wireless option in the nm-applet and banshee will then 'see' the wireless connection too.

Anonymous said...

I am unable to get the ./configure to execute properly. I continually get the following error:

checking for Mono 2.0 GAC for System.Data.dll... found
checking for Mono 2.0 GAC for System.Web.dll... found
checking for Mono 2.0 GAC for System.Web.Services.dll... found
checking for Mono 2.0 GAC for Mono.Cairo.dll... not found
configure: error: missing reqired Mono 2.0 assembly: Mono.Cairo.dll

Can someone please tell me what package I need to install?

Thanks.

Albert said...

Hi Anonymous,

The package you need to install is probably:
libmono-cairo2.0-cil

Good luck!

Anonymous said...

I am trying to install Banshee on my box, running Ubuntu. When i go to install it, it keeps trying to install a macromedia file from the web and failing. The file is on my desktop, just sitting there staring me in the face...what do I do?

Anonymous said...

Don't know if they will help But I have Ubuntu 7.10 Gutsy you can just type in sudo apt-get install banshee, figured i would post that since this is one of the top searches for Banshee and Ubuntu