szclsya/mpdris2-rs

Kills plasmashell [under wayland]

Closed this issue · 6 comments

After launching and getting stuff back from mpd it kills my desktop shell.

./mpdris2-rs  --host 192.168.1.7 -v
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: status
DEBUG [mpdris2_rs::mpd::client] Command status returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: currentsong
DEBUG [mpdris2_rs::mpd::client] Command currentsong returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: readpicture "somafm:channel:/defcon" 0
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: ping
DEBUG [mpdris2_rs::mpd::client] Command ping returned
DEBUG [mpdris2_rs::mpd::stateserver] Entering idle...
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: idle stored_playlist playlist player mixer options
 INFO [mpdris2_rs] Notification enabled, starting notification sender...
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: status
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::mpd::client] Command status returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: currentsong
DEBUG [mpdris2_rs::mpd::client] Command currentsong returned
 INFO [mpdris2_rs] Service started.
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: status
DEBUG [mpdris2_rs::mpd::client] Command status returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: currentsong
DEBUG [mpdris2_rs::mpd::client] Command currentsong returned
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: playlistinfo
DEBUG [mpdris2_rs::mpd::client] Command playlistinfo returned
DEBUG [mpdris2_rs::plugins::mpris2::notifier] Waiting for MPD state change from org.mpris2.MediaPlayer2...
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: status
DEBUG [mpdris2_rs::mpd::client] Command status returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: currentsong
DEBUG [mpdris2_rs::mpd::client] Command currentsong returned
ERROR [mpdris2_rs::plugins::fdo_notification] NotificationRelay dead, restarting. Reason: org.freedesktop.DBus.Error.NoReply: Message recipient disconnected from message bus without replying
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: status
DEBUG [mpdris2_rs::mpd::client] Command status returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: currentsong
DEBUG [mpdris2_rs::mpd::client] Command currentsong returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: status
DEBUG [mpdris2_rs::mpd::client] Command status returned
DEBUG [mpdris2_rs::mpd::client] Issuing command to MPD: currentsong
DEBUG [mpdris2_rs::mpd::client] Command currentsong returned
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...
DEBUG [mpdris2_rs::plugins::fdo_notification] Waiting for MPD state change from NotificationRelay...

Hmm that's weird. Any crashes on KDE side? (they should appear under systemd journal)

No longer crashes session but now dies after starting with:

 INFO [mpdris2_rs] Notification enabled, starting notification sender...
 INFO [mpdris2_rs] Service started.
ERROR [mpdris2_rs::plugins::fdo_notification] NotificationRelay dead, restarting. Reason: org.freedesktop.Notifications.Error.ExcessNotificationGeneration: Created too many similar notifications in quick succession

I've added a rate-limiter at 46c2b6f. Have a try!

I've added a rate-limiter at 46c2b6f. Have a try!

Now it doesn't crash, I get notification with proper meta and cover when song changes.
There's another issue though, while it activates plasma media applet [plasma6] it is empty; no meta and controls are disabled, like nothing is playing.

it starts with:

 INFO [mpdris2_rs] Notification enabled, starting notification sender...
ERROR [mpdris2_rs::plugins::fdo_notification] Notification timeout: 5
 INFO [mpdris2_rs] Service started.

Fixed in 98bfbd6.

Fixed in 98bfbd6.

Thanks! Seems to be working great so far. The main bug is fixed so I'm going to close.