panflute-applet causes error at adding to panel

Asked by zbito

I've installed panflute 0.6.1-1, and I can start panflute-daemon. I wan't to control mpd with it, but when I add panflute-applet to gnome panel I get message that it caused some error and if I wan't to remove it. It happens every time I try to do it.
Also when I trie to launch panflute-launch-player nothing happens, and after maybe 5 seconds i get back to command line.

Maybe I trie to do somethung wrong to launch it, but I have no clue what it can be.

Question information

Language:
English Edit question
Status:
Solved
For:
Panflute Edit question
Assignee:
No assignee Edit question
Solved by:
Paul Kuliniewicz
Solved:
Last query:
Last reply:
Revision history for this message
Paul Kuliniewicz (kuliniew) said :
#1

The applet writes its log files to ~/.local/share/panflute/applet.* . Is there anything in them that indicates what the cause is?

Revision history for this message
zbito (zbito) said :
#2

Unfortunately I didn't even had that folder. After creating it any file is created in.
I've tried also reinstalling panflute, and then running panflute-daemon with -v -d switches, also to no effect.

Do You have some other idea how to check what is wrong with that?

Revision history for this message
zbito (zbito) said :
#3

When I do not remove applet after crash, and run gnome-panel --replace, I get this error in console:

** (gnome-panel:10134): WARNING **: panel-applet-frame.c:1273: failed to load applet OAFIID:GNOME_Panflute_Applet:
System exception: IDL:Bonobo/GeneralError:1.0 : Proces potomny nie podał komunikatu błędu, wystąpił nieznany błąd

Maybe it will give You some more information.

Revision history for this message
Paul Kuliniewicz (kuliniew) said :
#4

The fact that it doesn't even get far enough along to start writing to its log files suggests the panflute-applet process isn't even getting launched successfully. How did you install Panflute? If you installed it from the source tarball, what prefix did you install it to?

One thing to check is to run panflute-applet from the command line before trying to add the applet to the panel. panflute-applet will be in a directory not in your $PATH but somewhere under the installation prefix, like $PREFIX/libexec/panflute-applet, so you'll need to type in the complete path to panflute-applet.

Revision history for this message
zbito (zbito) said :
#5

panflute is installed from arch repository, into /usr/lib/panflute directory. When running it manually I get:

Traceback (most recent call last):
  File "/usr/lib/panflute/panflute-applet", line 20, in <module>
    import panflute.applet.applet
  File "/usr/lib/python2.6/site-packages/panflute/applet/applet.py", line 35, in <module>
    import panflute.applet.widget
  File "/usr/lib/python2.6/site-packages/panflute/applet/widget.py", line 33, in <module>
    import gnomeapplet
ImportError: No module named gnomeapplet

I've got gnome-python-extras installed

Revision history for this message
Best Paul Kuliniewicz (kuliniew) said :
#6

It looks like there's a missing dependency on the panflute package in Arch. It needs to depend on whichever package provides the gnomeapplet Python module. In Ubuntu it's in python-gnomeapplet; I don't know what Arch's equivalent is.

Revision history for this message
zbito (zbito) said :
#7

Searching for any possible missing dependencies, I've found gnome-python-desktop package that solved problem of adding panflute-applet to panel. I've already informed package responsible of missing dependency.

I don't know if that is normal behavoiur, altough mpd is controlled correctly after, it is not listed in preferences and I cannot select another player if I wanted it to be controlled.

Revision history for this message
zbito (zbito) said :
#8

Thanks Paul Kuliniewicz, that solved my question.

Revision history for this message
Paul Kuliniewicz (kuliniew) said :
#9

I don't know why MPD wouldn't show up in the applet's list for the preferred player but would still be able to work with it. If the problem persists, try running the following command (all one line) and check if the output mentions something about mpd:

dbus-send --print-reply --session --dest=org.kuliniewicz.Panflute /connectors org.kuliniewicz.Panflute.Manager.DescribeConnectors

Revision history for this message
LagartoFlojo (lagartoflojo) said :
#10

I'm having the same problem as the OP.
I'm running Fedora 12 and installed Panflute 0.6.2 through ./configure --prefix=/usr; make; make install
Panflute-daemon runs fine, so does panflute-launch-player.
Executing panflute-applet directly only outputs:
$ /usr/libexec/panflute-applet
DEBUG [panflute] Registering with Bonobo

Adding the applet to the panel shows the message: "The panel encountered a problem while loading "OAFIID:GNOME_Panflute_Applet"."

I don't have a .local/share/panflute directory.
The only warnings shown by ./configure are about missing modules for players I don't intend to use.

Revision history for this message
Paul Kuliniewicz (kuliniew) said :
#11

I can't reproduce. On a fresh Fedora 12 install I had no problems installing and running Panflute from source, after installing the dbus-python and numpy packages.

Since you can run panflute-applet from the command line, what happens when you do that and, without quitting it, try to add it to the panel?

Revision history for this message
LagartoFlojo (lagartoflojo) said :
#12

Ok, so I could get the panel to show the applet if I ran panflute-applet first on a terminal. At first, this was the output:

$ /usr/libexec/panflute-applet
DEBUG [panflute] Registering with Bonobo
DEBUG [panflute] Initializing applet
INFO [panflute.applet.conf.Conf] GConf root is /apps/panel/applets/applet_23/prefs
DEBUG [panflute.applet.applet.LayoutManager] New first row: ['song_info']
DEBUG [panflute.applet.applet.LayoutManager] New second row: ['rating', 'time_bar', 'time_label', 'previous_button', 'playback_button', 'next_button']
DEBUG [panflute.applet.applet.Applet] Enabling notifications
DEBUG [panflute.applet.applet.Applet] Setting layout to disconnected
/usr/lib/python2.6/site-packages/panflute/applet/widget.py:309: DeprecationWarning: PyArray_FromDimsAndDataAndDescr: use PyArray_NewFromDescr.
  pixels = pixbuf.get_pixels_array ()
DEBUG [panflute.applet.applet.Applet] Applet size is 24; two-row threshold is 48
DEBUG [panflute.applet.applet.Applet] Forcing one-row layout due to size constraints
ERROR [dbus.proxies] Introspect error on org.kuliniewicz.Panflute:/connectors: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/local/bin/panflute-daemon: Success
DEBUG [dbus.proxies] Executing introspect queue due to error
ERROR [dbus.proxies] Introspect error on org.kuliniewicz.Panflute:/connectors/preferred: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/local/bin/panflute-daemon: Success
DEBUG [dbus.proxies] Executing introspect queue due to error
DEBUG [panflute.applet.applet.LaunchButton] destroy - D-Bus handlers
DEBUG [panflute.applet.applet.Applet] Setting layout to disconnected
DEBUG [panflute.applet.applet.Applet] Applet size is 24; two-row threshold is 48
DEBUG [panflute.applet.applet.Applet] Forcing one-row layout due to size constraints
ERROR [dbus.proxies] Introspect error on org.kuliniewicz.Panflute:/connectors: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/local/bin/panflute-daemon: Success
DEBUG [dbus.proxies] Executing introspect queue due to error
ERROR [dbus.proxies] Introspect error on org.kuliniewicz.Panflute:/connectors/preferred: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/local/bin/panflute-daemon: Success
DEBUG [dbus.proxies] Executing introspect queue due to error
DEBUG [panflute.applet.applet.LayoutManager] New first row: ['song_info']
DEBUG [panflute.applet.applet.LayoutManager] New second row: ['rating', 'time_bar', 'time_label', 'previous_button', 'playback_button', 'next_button']
WARNING [panflute.applet.applet.LaunchButton] org.freedesktop.DBus.Error.Spawn.ExecFailed: Failed to execute program /usr/local/bin/panflute-launch-player: Success

Since it complained about the location of the binaries, I made symbolic links to the panflute-* bins in /usr/bin from /usr/local/bin.
Now the output is the following:

$ /usr/libexec/panflute-applet
DEBUG [panflute] Registering with Bonobo
DEBUG [panflute] Initializing applet
INFO [panflute.applet.conf.Conf] GConf root is /apps/panel/applets/applet_28/prefs
DEBUG [panflute.applet.applet.LayoutManager] New first row: ['song_info']
DEBUG [panflute.applet.applet.LayoutManager] New second row: ['rating', 'time_bar', 'time_label', 'previous_button', 'playback_button', 'next_button']
DEBUG [panflute.applet.applet.Applet] Enabling notifications
DEBUG [panflute.applet.applet.Applet] Setting layout to disconnected
/usr/lib/python2.6/site-packages/panflute/applet/widget.py:309: DeprecationWarning: PyArray_FromDimsAndDataAndDescr: use PyArray_NewFromDescr.
  pixels = pixbuf.get_pixels_array ()
DEBUG [panflute.applet.applet.Applet] Applet size is 24; two-row threshold is 48
DEBUG [panflute.applet.applet.Applet] Forcing one-row layout due to size constraints
DEBUG [panflute.applet.applet.LaunchButton] destroy - D-Bus handlers
DEBUG [panflute.applet.applet.Applet] Setting layout to disconnected
DEBUG [panflute.applet.applet.Applet] Applet size is 24; two-row threshold is 48
DEBUG [panflute.applet.applet.Applet] Forcing one-row layout due to size constraints
DEBUG [panflute.applet.applet.LayoutManager] New first row: ['song_info']
DEBUG [panflute.applet.applet.LayoutManager] New second row: ['rating', 'time_bar', 'time_label', 'previous_button', 'playback_button', 'next_button']

The panel shows the applet, and I can use it to run and control Rhythmbox. But, without running panflute-applet first, I cannot add it to the panel, showing the same error as before.

Revision history for this message
Paul Kuliniewicz (kuliniew) said :
#13

Did you previously have a version of Panflute installed under /usr, then removed it and put one under /usr/local? The .service and .server files tell D-Bus and the GNOME panel where it can find panflute-daemon and panflute-applet, respectively. From what you've described, it sounds like the .service and .server files are referencing the wrong locations, which is why they aren't getting started automatically.

Revision history for this message
LagartoFlojo (lagartoflojo) said :
#14

Ah-ha! So I located those files you mention, deleted them and re-installed. Now the applet works perfectly.
Thanks for the help! =)