Package: bluedevil
Version: 1.0-0.1
Severity: normal

When I try to send files from my BlueTooth phone to my netbook running
Debian testing, it doesn't work in KDE, even when I enabled "Enable
receiving files" in "Receive files configuration".

This is an upstream bug, still both found in ~rc3 and final:

Running "dbus-monitor sender=org.kde.BlueDevil.Service" showed the
following message being sent to knotify:
> method call sender=:1.117 -> dest=org.kde.knotify serial=30 path=/Notify; 
> interface=org.kde.KNotify; member=event
>  string "bluedevilIncomingFile"
>  string "bluedevilfilereceiverhelper"
>  array [ ]
>  string ""
>  string "HTC Desire PMHahn is sending you the file IMAG0042.jpg"
>  array of bytes [ ... ]
>  array [
>     string "Cancel"
>     string "Accept"
>     string "Save as..."
>  ]
>  int32 0
>  int64 0

Notice the second string specifying the sending application name being

$ qdbus org.kde.knotify /Notify | grep event
> method int org.kde.KNotify.event(QString event, QString fromApp, QVariantList 
> contexts, QString title, QString text, QByteArray pixmap, QStringList 
> actions, int timeout, qlonglong winId)

Running "strace -e t=file -s 4096 knotify4 --nofork" finally showed that
the following files are not found:
> ...
> stat64("/usr/share/desktop-base/profiles/kde-profile/share/config/bluedevilfilereceiverhelper.notifyrc",
>  0xbff5f03c) = -1 ENOENT (No such file or directory)
> stat64("/usr/share/kde4/apps/bluedevilfilereceiverhelper/bluedevilfilereceiverhelper.notifyrc",
>  0xbff5eedc) = -1 ENOENT (No such file or directory)
> stat64("/usr/share/kde4/config/bluedevilfilereceiverhelper.notifyrc", 
> 0xbff5f03c) = -1 ENOENT (No such file or directory)

But the package "bluedevil" provides the necessary definition of the
"Event/bluedevilIncomingFile" type in the file
which thus isn't found and used.

For testing I created the following symlink, after which the I was
successfully able to send files:
$ ln -s /usr/share/kde4/apps/bluedevil/bluedevil.notifyrc 

The message is generated in
The appname is automatically retrieved here:

You can simulate the message by running the following Python program:
import dbus
knotify = dbus.SessionBus().get_object("org.kde.knotify", "/Notify")
r = knotify.event("bluedevilIncomingFile", "bluedevilfilereceiverhelper", [], 
"Title", "HTC Desire PMHahn is sending you the file IMAG0042.jpg", [], 
["Cancel","Accept","Save as..."], 0, 0, dbus_interface="org.kde.KNotify")
print r

-- System Information:
Debian Release: 6.0
  APT prefers unstable
  APT policy: (990, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

pkg-kde-extras mailing list

Reply via email to