-   Slackware (
-   -   banshee (

thelastknowngod 02-23-2007 03:02 PM

ok so i am trying to install banshee with support for my ipod. i installed all the ipod dependencies from source as well as banshee itself. the install went fine with no hiccups at all. when i try and run banshee i get this message...


Warning: [2/22/2007 9:49:27 PM] (DBus is not available) - Your environment is not properly set up to use DBus. Please fix your environment or run Banshee through dbus-launch. Failure to do so may cause problems at a later time in Banshee during this instance.

Unable to open the system message bus.
System.Exception: Unable to open the system message bus. ---> System.IO.FileNotFoundException: No such file or directory ---> Mono.Unix.UnixIOException: No such file or directory [ENOENT].
  at Mono.Unix.UnixMarshal.ThrowExceptionForLastError () [0x00000]
  at Mono.Unix.UnixMarshal.ThrowExceptionForLastErrorIf (Int32 retval) [0x00000]
  at NDesk.DBus.Transports.UnixSocket.Connect (System.Byte[] remote_end) [0x00000]
  at NDesk.DBus.Transports.UnixNativeTransport.OpenUnix (System.String path) [0x00000]
  at NDesk.DBus.Transports.UnixNativeTransport.Open (System.String path, Boolean abstract) [0x00000]
  at NDesk.DBus.Transports.UnixTransport.Open (NDesk.DBus.AddressEntry entry) [0x00000]
  at NDesk.DBus.Transports.Transport.Create (NDesk.DBus.AddressEntry entry) [0x00000]
  at NDesk.DBus.Connection.OpenPrivate (System.String address) [0x00000]
  at NDesk.DBus.Connection..ctor (System.String address) [0x00000]
  at NDesk.DBus.Bus..ctor (System.String address) [0x00000]
  at NDesk.DBus.Bus.Open (System.String address) [0x00000]
  at NDesk.DBus.Bus.get_System () [0x00000] --- End of inner exception stack trace ---

  at NDesk.DBus.Bus.get_System () [0x00000]
  at Hal.Manager..ctor () [0x00000]
  at Banshee.Base.HalCore.Initialize () [0x00000]
  at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void ()
  at Banshee.Base.ComponentInitializer.Run () [0x00000]
Warning: [2/22/2007 9:49:27 PM] (Cannot connect to NetworkManager) - An available, working network connection will be assumed
Debug: [2/22/2007 9:49:28 PM] (Loading audio profiles) - /usr/local/share/banshee/audio-profiles
Debug: [2/22/2007 9:49:28 PM] (Default player engine) - GStreamer 0.10
System.ApplicationException: HAL is not initialized
  at Banshee.Base.AudioCdCore..ctor () [0x00000]
  at Banshee.Base.Globals+<>c__CompilerGenerated60.<>c__AnonymousMethod183 () [0x00000]
  at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void ()
  at Banshee.Base.ComponentInitializer.Run () [0x00000]
System.ApplicationException: Cannot initialize DapCore because HalCore is not initialized
  at Banshee.Dap.DapCore.Initialize () [0x00000]
  at (wrapper delegate-invoke) System.MulticastDelegate:invoke_void ()
  at Banshee.Base.ComponentInitializer.Run () [0x00000]
Segmentation fault

i would think that dbus would not be running. i have this in my .xinitrc though which (correct me if im wrong) supposed to start dbus when i startx.


if test x"$DBUS_SESSION_BUS_ADDRESS" = x""; then
        dbuslaunch=`which dbus-launch`
        if test x"$dbuslaunch" != x"" -a x"$dbuslaunch" != x"no"; then
                eval `$dbuslaunch --sh-syntax --exit-with-session`

i also tried running dbus-launch from the terminal and i got this...



im running slackware 11 with fluxbox.

hopefully this is enough info. ideas? thanks.

Crooksey 02-25-2007 10:49 AM

Are you sure dbus is running?


ps aux | grep dbus

thelastknowngod 02-25-2007 06:37 PM

hey Crooksey! haha. heres the output...


tlkg    28597  0.0  0.1  2164  752 ?        Ss  Feb24  0:00 /usr/bin/dbus-daemon --fork --print-pid 4 --print-address 6 --session
tlkg    14541  0.0  0.0  2740  360 ?        S    19:27  0:00 dbus-launch --autolaunch be99c9c7f8bcb4badb16930045e0b900 --binary-syntax
tlkg    14542  0.0  0.1  2168  748 ?        Ss  19:27  0:00 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
tlkg    29161  0.0  0.1  1876  612 pts/0    S+  19:38  0:00 grep dbus

thelastknowngod 02-26-2007 07:03 PM

anyone else have an idea?

shotwellj 02-27-2007 04:45 AM

I've never used dbus/hal, so maybe take this with a grain of salt.

The problem is that dbus-sharp (specifically, NDesk.DBus.Transports.UnixSocket.Connect) is trying to call connect(), but passing along a bad or empty path (connect() only returns ENOENT in these cases). Looking over the little bit of dbus-sharp in which the error occurs, I'm led to believe that hal is supposed to provide the information. A non-existent hal could mean that dbus-sharp is being passed an empty path, resulting in the eventual failure. Moreover, you're getting additional errors about Hal not being initialized.

I'd check to see that hal is running properly. Maybe try recompiling and downgrading/upgrading dbus-sharp, although it doesn't look like this portion of the code has changed for the last few releases. If that all fails, you could try to run strace to look for the point of failure (strace -o foo.txt banshee); maybe post it here.

If you're just looking for the really easy way out, I use amarok for my ipod and it works pretty well.


thelastknowngod 02-27-2007 10:58 AM

yeah i have been using amarok but i didnt like the way it indexed my music. i have used banshee in the past and really liked it so i thought id give it another shot.

thanks for the info. ill give it a shot.

mas7997 02-27-2007 04:25 PM

System bus vs session bus
D-Bus actually uses two different buses, a system-wide bus and a local session bus. It looks like your session bus is fine, but I didn't see any system bus running in your ps output.

Try adding a system bus to your startup by adding the following line to /etc/rc.d/rc.local


/usr/bin/dbus-daemon --system
You may have to adjust the path to dbus-daemon based on your particular setup.

Also, you'll probably want hald (the HAL daemon) running as well. I think hal is what actually sends the signals over the system bus when new hardware is plugged in or unplugged.

riyu 03-06-2007 04:51 AM

Try after restarting. If it does not work then try


#/etc/init.d/hald start
If it says dbus-daemon is already running then kill all dbus-daemon and run HAL(the above code). This should work. If you get an error message after starting banshee(saying dbus blablabal), quit banshee and run banshee from the terminal using the dbus-launch

dbus-launch banshee


/usr/bin/dbus-launch /usr/bin/banshee

For those who want to know more about D-Bus, D-Bus is a system for interprocess communication. So if you want to pass commands or get information about Banshee from say gaim you can use DBus ( which I came to know only recently... If not for the error I would have been unaware of DBus features :) ).For more information see
D-Bus Tutorial

All times are GMT -5. The time now is 10:51 AM.