[GH-ISSUE #564] Crash due to dbus name collision #340

Closed
opened 2026-02-28 14:32:18 +03:00 by kerem · 20 comments
Owner

Originally created by @CodeF53 on GitHub (Dec 6, 2024).
Original GitHub issue: https://github.com/jpochyla/psst/issues/564

Describe the bug

$ RUST_BACKTRACE=1 psst-gui
...
[2024-12-06T03:42:28Z INFO  psst_core::session::access_token] access token expired, requesting
thread 'main' panicked at /home/cassie/.cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:139:29:
called `Result::unwrap()` on an `Err` value: SendError { .. }
stack backtrace:
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at library/core/src/panicking.rs:221:5:
panic in a function that cannot unwind
thread caused non-unwinding panic. aborting.
fish: Job 1, 'RUST_BACKTRACE=1 psst-gui' terminated by signal SIGABRT (Abort)

Environment

  • desktop enviroment: KDE Plasma (wayland)
  • kernel: 6.12.1-zen1-1-zen (64-bit)
  • Version: r547.0cd9904-1 (via AUR)

Additional context
Add any other context about the problem here.

Originally created by @CodeF53 on GitHub (Dec 6, 2024). Original GitHub issue: https://github.com/jpochyla/psst/issues/564 **Describe the bug** ``` $ RUST_BACKTRACE=1 psst-gui ... [2024-12-06T03:42:28Z INFO psst_core::session::access_token] access token expired, requesting thread 'main' panicked at /home/cassie/.cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:139:29: called `Result::unwrap()` on an `Err` value: SendError { .. } stack backtrace: note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. thread 'main' panicked at library/core/src/panicking.rs:221:5: panic in a function that cannot unwind thread caused non-unwinding panic. aborting. fish: Job 1, 'RUST_BACKTRACE=1 psst-gui' terminated by signal SIGABRT (Abort) ``` **Environment** - desktop enviroment: KDE Plasma (wayland) - kernel: 6.12.1-zen1-1-zen (64-bit) - Version: r547.0cd9904-1 (via [AUR](https://aur.archlinux.org/packages/psst-git)) **Additional context** Add any other context about the problem here.
kerem 2026-02-28 14:32:18 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@jacksongoode commented on GitHub (Dec 9, 2024):

Does this happen reliably? It seems to be triggered by zbus?

<!-- gh-comment-id:2529052774 --> @jacksongoode commented on GitHub (Dec 9, 2024): Does this happen reliably? It seems to be triggered by zbus?
Author
Owner

@CodeF53 commented on GitHub (Dec 15, 2024):

happened 100% reliably, I uninstalled and reinstalled and it fixed the issue

On Mon, Dec 9, 2024 at 11:37 AM Jackson @.***> wrote:

Does this happen reliably? It seems to be triggered by zbus?


Reply to this email directly, view it on GitHub
https://github.com/jpochyla/psst/issues/564#issuecomment-2529052774, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AJAZ7465WUUJXNHHBKTYI2D2EXPMNAVCNFSM6AAAAABTD3A3YOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMRZGA2TENZXGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

<!-- gh-comment-id:2543459825 --> @CodeF53 commented on GitHub (Dec 15, 2024): happened 100% reliably, I uninstalled and reinstalled and it fixed the issue On Mon, Dec 9, 2024 at 11:37 AM Jackson ***@***.***> wrote: > Does this happen reliably? It seems to be triggered by zbus? > > — > Reply to this email directly, view it on GitHub > <https://github.com/jpochyla/psst/issues/564#issuecomment-2529052774>, or > unsubscribe > <https://github.com/notifications/unsubscribe-auth/AJAZ7465WUUJXNHHBKTYI2D2EXPMNAVCNFSM6AAAAABTD3A3YOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKMRZGA2TENZXGQ> > . > You are receiving this because you authored the thread.Message ID: > ***@***.***> >
Author
Owner

@SO9010 commented on GitHub (Dec 20, 2024):

The AUR is terribly out of date. Last update in 2022.

<!-- gh-comment-id:2556041971 --> @SO9010 commented on GitHub (Dec 20, 2024): The AUR is terribly out of date. Last update in 2022.
Author
Owner

@jacksongoode commented on GitHub (Dec 20, 2024):

Can we update that? I feel like the longer term solution is the #170 #141 #530 Flatpak support which was ALMOST finished 😂 but needs a little more of a nudge.

<!-- gh-comment-id:2556162162 --> @jacksongoode commented on GitHub (Dec 20, 2024): Can we update that? I feel like the longer term solution is the #170 #141 #530 Flatpak support which was ALMOST finished 😂 but needs a little more of a nudge.
Author
Owner

@SO9010 commented on GitHub (Dec 20, 2024):

I can probably update it! I also do want to look more into the flatpak support.

<!-- gh-comment-id:2557217089 --> @SO9010 commented on GitHub (Dec 20, 2024): I can probably update it! I also do want to look more into the flatpak support.
Author
Owner

@ernstki commented on GitHub (Dec 21, 2024):

Hi all,

I have 69314f9 built in November that exhibited this same problem. The circumstances were a loss of network connectivity when my laptop went into power save mode, with a track playing, and the crash was happening only after initial startup, upon trying to resume a playlist.

Backtrace after running RUST_BACKTRACE=full psst-gui
$ RUST_BACKTRACE=full psst-gui
[2024-12-21T09:18:38Z INFO  psst_gui::data::config] loading config: "/home/me/.config/Psst/config.json"
[2024-12-21T09:18:40Z INFO  psst_core::oauth] starting OAuth listener on 127.0.0.1:8888
[2024-12-21T09:18:40Z INFO  psst_core::oauth] listener bound successfully
[2024-12-21T09:18:49Z INFO  psst_core::connection] requesting AP list from http://apresolve.spotify.com
[2024-12-21T09:18:49Z INFO  psst_core::connection] received 6 APs from server
[2024-12-21T09:18:49Z INFO  psst_core::connection] successfully resolved 6 access points
[2024-12-21T09:18:49Z INFO  psst_core::connection] attempting to connect using 6 access points
[2024-12-21T09:18:49Z INFO  psst_core::connection] Trying AP 1 of 6: ap-guc3.spotify.com:4070
[2024-12-21T09:18:50Z INFO  psst_core::connection] successfully connected to AP: ap-guc3.spotify.com:4070
[2024-12-21T09:18:50Z ERROR psst_gui::webapi::client] failed to read local tracks: No such file or directory (os error 2)
[2024-12-21T09:18:50Z INFO  psst_gui::data::config] saved config: "/home/me/.config/Psst/config.json"
[2024-12-21T09:18:50Z INFO  psst_core::audio::output::cpal] using audio device: "default"
[2024-12-21T09:18:50Z INFO  psst_core::cache] using cache: "/home/me/.cache/Psst"
[2024-12-21T09:18:50Z INFO  psst_core::audio::output::cpal] opening output stream: StreamConfig { channels: 2, sample_rate: SampleRate(44100), buffer_size: Default }
[2024-12-21T09:18:50Z INFO  psst_core::session::access_token] access token expired, requesting
[2024-12-21T09:18:50Z INFO  psst_core::connection] requesting AP list from http://apresolve.spotify.com
thread '<unnamed>' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:100:22:
called `Result::unwrap()` on an `Err` value: NameTaken
stack backtrace:
   0:     0x55b4be791b89 - <unknown>
   1:     0x55b4be34e19b - <unknown>
   2:     0x55b4be75be52 - <unknown>
   3:     0x55b4be792d88 - <unknown>
   4:     0x55b4be793c32 - <unknown>
   5:     0x55b4be793725 - <unknown>
   6:     0x55b4be793689 - <unknown>
   7:     0x55b4be793674 - <unknown>
   8:     0x55b4bdbb1062 - <unknown>
   9:     0x55b4bdbb1485 - <unknown>
  10:     0x55b4bdd313b9 - <unknown>
  11:     0x55b4bdd55a40 - <unknown>
  12:     0x55b4be79510b - <unknown>
  13:     0x7f43c6f09609 - start_thread
  14:     0x7f43c6cd7353 - clone
  15:                0x0 - <unknown>
[2024-12-21T09:18:50Z INFO  psst_core::connection] received 6 APs from server
[2024-12-21T09:18:50Z INFO  psst_core::connection] successfully resolved 6 access points
[2024-12-21T09:18:50Z INFO  psst_core::connection] attempting to connect using 6 access points
[2024-12-21T09:18:50Z INFO  psst_core::connection] Trying AP 1 of 6: ap-guc3.spotify.com:4070
[2024-12-21T09:18:50Z INFO  psst_core::connection] successfully connected to AP: ap-guc3.spotify.com:4070
[2024-12-21T09:19:13Z INFO  symphonia_format_ogg::demuxer] starting new physical stream
[2024-12-21T09:19:13Z INFO  symphonia_format_ogg::demuxer] selected vorbis mapper for stream with serial=0x0
[2024-12-21T09:19:13Z INFO  psst_core::player] starting playback
thread 'main' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:139:29:
called `Result::unwrap()` on an `Err` value: SendError { .. }
stack backtrace:
   0:     0x55b4be791b89 - <unknown>
   1:     0x55b4be34e19b - <unknown>
   2:     0x55b4be75be52 - <unknown>
   3:     0x55b4be792d88 - <unknown>
   4:     0x55b4be793c32 - <unknown>
   5:     0x55b4be793725 - <unknown>
   6:     0x55b4be793689 - <unknown>
   7:     0x55b4be793674 - <unknown>
   8:     0x55b4bdbb1062 - <unknown>
   9:     0x55b4bdbb1485 - <unknown>
  10:     0x55b4be70f073 - <unknown>
  11:     0x55b4bdc67491 - <unknown>
  12:     0x55b4bdef397e - <unknown>
  13:     0x55b4be0dff65 - <unknown>
  14:     0x55b4bdef397e - <unknown>
  15:     0x55b4bdef397e - <unknown>
  16:     0x55b4bdc758b0 - <unknown>
  17:     0x55b4be192f64 - <unknown>
  18:     0x55b4bdef397e - <unknown>
  19:     0x55b4be016759 - <unknown>
  20:     0x55b4bddfe827 - <unknown>
  21:     0x55b4bddf9c24 - <unknown>
  22:     0x55b4be1102b1 - <unknown>
  23:     0x55b4be38a509 - <unknown>
  24:     0x55b4be38a2ea - <unknown>
  25:     0x7f43c7b4e04e - g_main_context_dispatch
  26:     0x7f43c7b4e400 - <unknown>
  27:     0x7f43c7b4e4a3 - g_main_context_iteration
  28:     0x7f43c7021fe5 - g_application_run
  29:     0x55b4be2dde22 - <unknown>
  30:     0x55b4bdd33c33 - <unknown>
  31:     0x55b4be305534 - <unknown>
  32:     0x7f43c6bdc083 - __libc_start_main
  33:     0x55b4bdbd274e - <unknown>
  34:                0x0 - <unknown>
thread 'main' panicked at core/src/panicking.rs:221:5:
panic in a function that cannot unwind
stack backtrace:
   0:     0x55b4be791b89 - <unknown>
   1:     0x55b4be34e19b - <unknown>
   2:     0x55b4be75be52 - <unknown>
   3:     0x55b4be792d88 - <unknown>
   4:     0x55b4be793c32 - <unknown>
   5:     0x55b4be7936f2 - <unknown>
   6:     0x55b4be793689 - <unknown>
   7:     0x55b4be793674 - <unknown>
   8:     0x55b4bdbb15b4 - <unknown>
   9:     0x55b4bdbb1615 - <unknown>
  10:     0x55b4bdbb15d0 - <unknown>
  11:     0x55b4be38a304 - <unknown>
  12:     0x7f43c7b4e04e - g_main_context_dispatch
  13:     0x7f43c7b4e400 - <unknown>
  14:     0x7f43c7b4e4a3 - g_main_context_iteration
  15:     0x7f43c7021fe5 - g_application_run
  16:     0x55b4be2dde22 - <unknown>
  17:     0x55b4bdd33c33 - <unknown>
  18:     0x55b4be305534 - <unknown>
  19:     0x7f43c6bdc083 - __libc_start_main
  20:     0x55b4bdbd274e - <unknown>
  21:                0x0 - <unknown>
thread caused non-unwinding panic. aborting.
Aborted

After some tinkering, it appears as if just logging out and back in through the app's settings solves this (for now).

I'm not inclined to do anything about it at the moment, in terms of pulling a new version and rebuilding, because otherwise psst is working fine. However, if there's anything else I can do to help isolate which versions of which crates, or reporting a problem to some upstream crate, please let me know.

I do not know a thing about Rust myself, beyond cargo build, so be gentle.

<!-- gh-comment-id:2558065778 --> @ernstki commented on GitHub (Dec 21, 2024): Hi all, I have 69314f9 built in November that exhibited this same problem. The circumstances were a loss of network connectivity when my laptop went into power save mode, with a track playing, and the crash was happening only after initial startup, upon trying to resume a playlist. <details> <summary>Backtrace after running <code>RUST_BACKTRACE=full psst-gui</code></summary><pre><code>$ RUST_BACKTRACE=full psst-gui [2024-12-21T09:18:38Z INFO psst_gui::data::config] loading config: "/home/me/.config/Psst/config.json" [2024-12-21T09:18:40Z INFO psst_core::oauth] starting OAuth listener on 127.0.0.1:8888 [2024-12-21T09:18:40Z INFO psst_core::oauth] listener bound successfully [2024-12-21T09:18:49Z INFO psst_core::connection] requesting AP list from http://apresolve.spotify.com [2024-12-21T09:18:49Z INFO psst_core::connection] received 6 APs from server [2024-12-21T09:18:49Z INFO psst_core::connection] successfully resolved 6 access points [2024-12-21T09:18:49Z INFO psst_core::connection] attempting to connect using 6 access points [2024-12-21T09:18:49Z INFO psst_core::connection] Trying AP 1 of 6: ap-guc3.spotify.com:4070 [2024-12-21T09:18:50Z INFO psst_core::connection] successfully connected to AP: ap-guc3.spotify.com:4070 [2024-12-21T09:18:50Z ERROR psst_gui::webapi::client] failed to read local tracks: No such file or directory (os error 2) [2024-12-21T09:18:50Z INFO psst_gui::data::config] saved config: "/home/me/.config/Psst/config.json" [2024-12-21T09:18:50Z INFO psst_core::audio::output::cpal] using audio device: "default" [2024-12-21T09:18:50Z INFO psst_core::cache] using cache: "/home/me/.cache/Psst" [2024-12-21T09:18:50Z INFO psst_core::audio::output::cpal] opening output stream: StreamConfig { channels: 2, sample_rate: SampleRate(44100), buffer_size: Default } [2024-12-21T09:18:50Z INFO psst_core::session::access_token] access token expired, requesting [2024-12-21T09:18:50Z INFO psst_core::connection] requesting AP list from http://apresolve.spotify.com thread '&lt;unnamed&gt;' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:100:22: called `Result::unwrap()` on an `Err` value: NameTaken stack backtrace: 0: 0x55b4be791b89 - &lt;unknown&gt; 1: 0x55b4be34e19b - &lt;unknown&gt; 2: 0x55b4be75be52 - &lt;unknown&gt; 3: 0x55b4be792d88 - &lt;unknown&gt; 4: 0x55b4be793c32 - &lt;unknown&gt; 5: 0x55b4be793725 - &lt;unknown&gt; 6: 0x55b4be793689 - &lt;unknown&gt; 7: 0x55b4be793674 - &lt;unknown&gt; 8: 0x55b4bdbb1062 - &lt;unknown&gt; 9: 0x55b4bdbb1485 - &lt;unknown&gt; 10: 0x55b4bdd313b9 - &lt;unknown&gt; 11: 0x55b4bdd55a40 - &lt;unknown&gt; 12: 0x55b4be79510b - &lt;unknown&gt; 13: 0x7f43c6f09609 - start_thread 14: 0x7f43c6cd7353 - clone 15: 0x0 - &lt;unknown&gt; [2024-12-21T09:18:50Z INFO psst_core::connection] received 6 APs from server [2024-12-21T09:18:50Z INFO psst_core::connection] successfully resolved 6 access points [2024-12-21T09:18:50Z INFO psst_core::connection] attempting to connect using 6 access points [2024-12-21T09:18:50Z INFO psst_core::connection] Trying AP 1 of 6: ap-guc3.spotify.com:4070 [2024-12-21T09:18:50Z INFO psst_core::connection] successfully connected to AP: ap-guc3.spotify.com:4070 [2024-12-21T09:19:13Z INFO symphonia_format_ogg::demuxer] starting new physical stream [2024-12-21T09:19:13Z INFO symphonia_format_ogg::demuxer] selected vorbis mapper for stream with serial=0x0 [2024-12-21T09:19:13Z INFO psst_core::player] starting playback thread 'main' panicked at /cargo/registry/src/index.crates.io-6f17d22bba15001f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:139:29: called `Result::unwrap()` on an `Err` value: SendError { .. } stack backtrace: 0: 0x55b4be791b89 - &lt;unknown&gt; 1: 0x55b4be34e19b - &lt;unknown&gt; 2: 0x55b4be75be52 - &lt;unknown&gt; 3: 0x55b4be792d88 - &lt;unknown&gt; 4: 0x55b4be793c32 - &lt;unknown&gt; 5: 0x55b4be793725 - &lt;unknown&gt; 6: 0x55b4be793689 - &lt;unknown&gt; 7: 0x55b4be793674 - &lt;unknown&gt; 8: 0x55b4bdbb1062 - &lt;unknown&gt; 9: 0x55b4bdbb1485 - &lt;unknown&gt; 10: 0x55b4be70f073 - &lt;unknown&gt; 11: 0x55b4bdc67491 - &lt;unknown&gt; 12: 0x55b4bdef397e - &lt;unknown&gt; 13: 0x55b4be0dff65 - &lt;unknown&gt; 14: 0x55b4bdef397e - &lt;unknown&gt; 15: 0x55b4bdef397e - &lt;unknown&gt; 16: 0x55b4bdc758b0 - &lt;unknown&gt; 17: 0x55b4be192f64 - &lt;unknown&gt; 18: 0x55b4bdef397e - &lt;unknown&gt; 19: 0x55b4be016759 - &lt;unknown&gt; 20: 0x55b4bddfe827 - &lt;unknown&gt; 21: 0x55b4bddf9c24 - &lt;unknown&gt; 22: 0x55b4be1102b1 - &lt;unknown&gt; 23: 0x55b4be38a509 - &lt;unknown&gt; 24: 0x55b4be38a2ea - &lt;unknown&gt; 25: 0x7f43c7b4e04e - g_main_context_dispatch 26: 0x7f43c7b4e400 - &lt;unknown&gt; 27: 0x7f43c7b4e4a3 - g_main_context_iteration 28: 0x7f43c7021fe5 - g_application_run 29: 0x55b4be2dde22 - &lt;unknown&gt; 30: 0x55b4bdd33c33 - &lt;unknown&gt; 31: 0x55b4be305534 - &lt;unknown&gt; 32: 0x7f43c6bdc083 - __libc_start_main 33: 0x55b4bdbd274e - &lt;unknown&gt; 34: 0x0 - &lt;unknown&gt; thread 'main' panicked at core/src/panicking.rs:221:5: panic in a function that cannot unwind stack backtrace: 0: 0x55b4be791b89 - &lt;unknown&gt; 1: 0x55b4be34e19b - &lt;unknown&gt; 2: 0x55b4be75be52 - &lt;unknown&gt; 3: 0x55b4be792d88 - &lt;unknown&gt; 4: 0x55b4be793c32 - &lt;unknown&gt; 5: 0x55b4be7936f2 - &lt;unknown&gt; 6: 0x55b4be793689 - &lt;unknown&gt; 7: 0x55b4be793674 - &lt;unknown&gt; 8: 0x55b4bdbb15b4 - &lt;unknown&gt; 9: 0x55b4bdbb1615 - &lt;unknown&gt; 10: 0x55b4bdbb15d0 - &lt;unknown&gt; 11: 0x55b4be38a304 - &lt;unknown&gt; 12: 0x7f43c7b4e04e - g_main_context_dispatch 13: 0x7f43c7b4e400 - &lt;unknown&gt; 14: 0x7f43c7b4e4a3 - g_main_context_iteration 15: 0x7f43c7021fe5 - g_application_run 16: 0x55b4be2dde22 - &lt;unknown&gt; 17: 0x55b4bdd33c33 - &lt;unknown&gt; 18: 0x55b4be305534 - &lt;unknown&gt; 19: 0x7f43c6bdc083 - __libc_start_main 20: 0x55b4bdbd274e - &lt;unknown&gt; 21: 0x0 - &lt;unknown&gt; thread caused non-unwinding panic. aborting. Aborted</code></pre> </details> After some tinkering, it appears as if just logging out and back in through the app's settings solves this (for now). I'm not inclined to _do_ anything about it at the moment, in terms of pulling a new version and rebuilding, because otherwise psst is working fine. However, if there's anything else I can do to help isolate which versions of which crates, or reporting a problem to some upstream crate, please let me know. I do not know a thing about Rust myself, beyond `cargo build`, so be gentle.
Author
Owner

@ernstki commented on GitHub (Dec 21, 2024):

The AUR is terribly out of date. Last update in 2022.

I don't know that much about Arch and the AUR, but I don't think the psst PKGBUILD script builds a specific version, just pulls from GitHub and reports its version as whatever HEAD was at build time.

If 0cd9904 from the OP's report is the Git commit ID, then that's from September 2024, a mere 20 commits behind the version I built. Not sure AUR is strictly to blame here is all I'm saying.

<!-- gh-comment-id:2558073643 --> @ernstki commented on GitHub (Dec 21, 2024): > The AUR is terribly out of date. Last update in 2022. I don't know _that_ much about Arch and the AUR, but I don't think [the psst PKGBUILD script](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=psst-git#n16) builds a specific version, just pulls from GitHub and [reports its version](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=psst-git#n19) as whatever `HEAD` was at build time. If `0cd9904` from the OP's report is the Git commit ID, then that's from September 2024, a mere 20 commits behind the version I built. Not sure AUR is strictly to blame here is all I'm saying.
Author
Owner

@omartijn commented on GitHub (Feb 14, 2025):

I'm now also running into this. Tried logging out and logging in again and the problem persisted. This is with latest main on a Debian Trixie system. x86_64 architecture.

Edit: Actually, just realized this happens when you open a second instance of Psst. The second instance is non-functional.

<!-- gh-comment-id:2659160578 --> @omartijn commented on GitHub (Feb 14, 2025): I'm now also running into this. Tried logging out and logging in again and the problem persisted. This is with latest `main` on a Debian Trixie system. x86_64 architecture. Edit: Actually, just realized this happens when you open a _second_ instance of Psst. The second instance is non-functional.
Author
Owner

@winteriscariot commented on GitHub (Mar 12, 2025):

Edit: Actually, just realized this happens when you open a second instance of Psst. The second instance is non-functional.

Thanks for this, I ran into this issue cuz I had a zombie psst-gui process that had no gui element and was causing new instances to immediately crash when trying to play a song. killing that orphaned process fixed the issue.

<!-- gh-comment-id:2718693178 --> @winteriscariot commented on GitHub (Mar 12, 2025): > Edit: Actually, just realized this happens when you open a _second_ instance of Psst. The second instance is non-functional. Thanks for this, I ran into this issue cuz I had a zombie psst-gui process that had no gui element and was causing new instances to immediately crash when trying to play a song. killing that orphaned process fixed the issue.
Author
Owner

@petermolnar commented on GitHub (Apr 24, 2025):

And indeed, there was a zombie running, which caused my problem as well. Interesting.

<!-- gh-comment-id:2828150493 --> @petermolnar commented on GitHub (Apr 24, 2025): And indeed, there was a zombie running, which caused my problem as well. Interesting.
Author
Owner

@omartijn commented on GitHub (May 2, 2025):

I just realized that the reason this happens to me sometimes is that I have omitted the StartupWMClass=psst-gui option in my local .desktop file. After adding this, I just get the existing window to the foreground when I try to open psst again.

<!-- gh-comment-id:2847261868 --> @omartijn commented on GitHub (May 2, 2025): I just realized that the reason this happens to me sometimes is that I have omitted the `StartupWMClass=psst-gui` option in my local .desktop file. After adding this, I just get the existing window to the foreground when I try to open psst again.
Author
Owner

@SO9010 commented on GitHub (May 4, 2025):

Does this fix the issue for others as well?

<!-- gh-comment-id:2849472798 --> @SO9010 commented on GitHub (May 4, 2025): Does this fix the issue for others as well?
Author
Owner

@ernstki commented on GitHub (May 5, 2025):

Does this fix the issue for others as well?

Running two instances and then attempting to play in the second instance, while the first one is already playing, seems to cause this crash repeatably. Can the GUI app ensure that there's only one instance of itself running, to maybe avoid this?

I'm git pulling the current version of the code to see if this still happens. I was running a slightly older build on the workstation I'm using at the moment.

Edit: Confirmed, can still reproduce as described above with 78e7dbb, current main as of this writing.

Backtrace
thread '<unnamed>' panicked at /home/me/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:100:22:
called `Result::unwrap()` on an `Err` value: NameTaken
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
⋮
[2025-05-05T20:41:31Z INFO  psst_core::connection] successfully connected to AP: ap-gew4.spotify.com:80
⋮

thread 'main' panicked at /home/me/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:139:29:
called `Result::unwrap()` on an `Err` value: SendError { .. }

thread 'main' panicked at library/core/src/panicking.rs:218:5:
panic in a function that cannot unwind
stack backtrace:
0: 0x61e384b8091f - <unknown>
1: 0x61e3846dfea3 - <unknown>
2: 0x61e384b80012 - <unknown>
3: 0x61e384b80783 - <unknown>
4: 0x61e384b7fddc - <unknown>
5: 0x61e384bb9905 - <unknown>
6: 0x61e384bb9899 - <unknown>
7: 0x61e384bb9e7c - <unknown>
8: 0x61e383efc59c - <unknown>
9: 0x61e383efc605 - <unknown>
10: 0x61e383efc5b3 - <unknown>
11: 0x61e384720a07 - <unknown>
12: 0x749742a9ec44 - g_main_context_dispatch
13: 0x749742af42b8 - <unknown>
14: 0x749742a9c3e3 - g_main_context_iteration
15: 0x749741dfffb5 - g_application_run
16: 0x61e384659c13 - <unknown>
17: 0x61e384093063 - <unknown>
18: 0x61e3846845e7 - <unknown>
19: 0x749741a29d90 - __libc_start_call_main
at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
20: 0x749741a29e40 - __libc_start_main_impl
at ./csu/../csu/libc-start.c:392:3
21: 0x61e383f1fcf5 - <unknown>
22: 0x0 - <unknown>
thread caused non-unwinding panic. aborting.
Aborted

Let me know if a full backtrace would be helpful.

<!-- gh-comment-id:2852213319 --> @ernstki commented on GitHub (May 5, 2025): > Does this fix the issue for others as well? Running two instances and then attempting to _play_ in the second instance, while the first one is already playing, seems to cause this crash repeatably. Can the GUI app ensure that there's only one instance of itself running, to maybe avoid this? I'm `git pull`ing the current version of the code to see if this still happens. I was running a slightly older build on the workstation I'm using at the moment. **Edit**: Confirmed, can still reproduce as described above with 78e7dbb, current `main` as of this writing. <details> <summary>Backtrace</summary> <pre><code>thread '&lt;unnamed&gt;' panicked at /home/me/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:100:22: called `Result::unwrap()` on an `Err` value: NameTaken note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace ⋮ [2025-05-05T20:41:31Z INFO psst_core::connection] successfully connected to AP: ap-gew4.spotify.com:80 ⋮ thread 'main' panicked at /home/me/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/souvlaki-0.7.3/src/platform/mpris/zbus.rs:139:29: called \`Result::unwrap()\` on an \`Err\` value: SendError { .. } thread 'main' panicked at library/core/src/panicking.rs:218:5: panic in a function that cannot unwind stack backtrace: 0: 0x61e384b8091f - &lt;unknown&gt; 1: 0x61e3846dfea3 - &lt;unknown&gt; 2: 0x61e384b80012 - &lt;unknown&gt; 3: 0x61e384b80783 - &lt;unknown&gt; 4: 0x61e384b7fddc - &lt;unknown&gt; 5: 0x61e384bb9905 - &lt;unknown&gt; 6: 0x61e384bb9899 - &lt;unknown&gt; 7: 0x61e384bb9e7c - &lt;unknown&gt; 8: 0x61e383efc59c - &lt;unknown&gt; 9: 0x61e383efc605 - &lt;unknown&gt; 10: 0x61e383efc5b3 - &lt;unknown&gt; 11: 0x61e384720a07 - &lt;unknown&gt; 12: 0x749742a9ec44 - g_main_context_dispatch 13: 0x749742af42b8 - &lt;unknown&gt; 14: 0x749742a9c3e3 - g_main_context_iteration 15: 0x749741dfffb5 - g_application_run 16: 0x61e384659c13 - &lt;unknown&gt; 17: 0x61e384093063 - &lt;unknown&gt; 18: 0x61e3846845e7 - &lt;unknown&gt; 19: 0x749741a29d90 - __libc_start_call_main at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16 20: 0x749741a29e40 - __libc_start_main_impl at ./csu/../csu/libc-start.c:392:3 21: 0x61e383f1fcf5 - &lt;unknown&gt; 22: 0x0 - &lt;unknown&gt; thread caused non-unwinding panic. aborting. Aborted</code></pre> </details> Let me know if a full backtrace would be helpful.
Author
Owner

@SO9010 commented on GitHub (May 5, 2025):

Thank you for this!

Good idea of having a check to see if it's already running...

We could have a simple bool in the config file which is loaded first in the program before the gui is run or anything else.

@ernstki I'll add this hopefully tomorrow and maybe you could try it to see if it fixes it for you? If yes I'll reference the PR to you here!

<!-- gh-comment-id:2852330443 --> @SO9010 commented on GitHub (May 5, 2025): Thank you for this! Good idea of having a check to see if it's already running... We could have a simple bool in the config file which is loaded first in the program before the gui is run or anything else. @ernstki I'll add this hopefully tomorrow and maybe you could try it to see if it fixes it for you? If yes I'll reference the PR to you here!
Author
Owner

@ernstki commented on GitHub (May 5, 2025):

@SO9010 Sounds good, and yes I will gladly test for you.

I also experienced a crash in the config parser in updating from whatever version I had checked out to the latest main. What is the project's policy on having the config.json be backwards-compatible?

If that sounds like a reportable bug, I'll open a new issue and try to git bisect for you to see where the bug first cropped up. Here's a diff of the changes required to avoid the crash, for context. The backtrace, unfortunately, already rolled off the end of my terminal's scrollback buffer.

diff -u of original vs. modified config.json
--- config.json.crashed	2025-05-05 16:40:27.660861223 -0400
+++ config.json	2025-05-05 16:40:34.584097626 -0400
@@ -7,29 +7,6 @@
   "audio_quality": "High",
   "theme": "Light",
   "volume": 1.0,
-  "last_route": {
-    "AlbumDetail": {
-      "id": "472IQn2kyszBiBt1fkwd2H",
-      "name": "Perplexagon",
-      "images": [
-        {
-          "url": "https://i.scdn.co/image/ab67616d0000b273de938199c03f8b7bc4536f72",
-          "width": 640,
-          "height": 640
-        },
-        {
-          "url": "https://i.scdn.co/image/ab67616d00001e02de938199c03f8b7bc4536f72",
-          "width": 300,
-          "height": 300
-        },
-        {
-          "url": "https://i.scdn.co/image/ab67616d00004851de938199c03f8b7bc4536f72",
-          "width": 64,
-          "height": 64
-        }
-      ]
-    }
-  },
   "queue_behavior": "Sequential",
   "show_track_cover": false,
   "window_size": {
<!-- gh-comment-id:2852340305 --> @ernstki commented on GitHub (May 5, 2025): @SO9010 Sounds good, and yes I will gladly test for you. I also experienced a crash in the config parser in updating from whatever version I had checked out to the latest `main`. What is the project's policy on having the `config.json` be backwards-compatible? If that sounds like a reportable bug, I'll open a new issue and try to `git bisect` for you to see where the bug first cropped up. Here's a diff of the changes required to avoid the crash, for context. The backtrace, unfortunately, already rolled off the end of my terminal's scrollback buffer. <details> <summary><code>diff -u</code> of original vs. modified <code>config.json</code></summary> <pre><code>--- config.json.crashed 2025-05-05 16:40:27.660861223 -0400 +++ config.json 2025-05-05 16:40:34.584097626 -0400 @@ -7,29 +7,6 @@ "audio_quality": "High", "theme": "Light", "volume": 1.0, - "last_route": { - "AlbumDetail": { - "id": "472IQn2kyszBiBt1fkwd2H", - "name": "Perplexagon", - "images": [ - { - "url": "https://i.scdn.co/image/ab67616d0000b273de938199c03f8b7bc4536f72", - "width": 640, - "height": 640 - }, - { - "url": "https://i.scdn.co/image/ab67616d00001e02de938199c03f8b7bc4536f72", - "width": 300, - "height": 300 - }, - { - "url": "https://i.scdn.co/image/ab67616d00004851de938199c03f8b7bc4536f72", - "width": 64, - "height": 64 - } - ] - } - }, "queue_behavior": "Sequential", "show_track_cover": false, "window_size": { </code></pre> </detail>
Author
Owner

@SO9010 commented on GitHub (May 5, 2025):

Ah yeah, it's not backwards compatible at all! Sorry about that... You can delete it that would fix it, or if you are comfortable with it go through and remove the variables that are causing the issue.

Edit: Just to clarify - are you asking whether using a config file from a newer version of Psst on an older version is supported? If so, unfortunately, it's not!

<!-- gh-comment-id:2852344246 --> @SO9010 commented on GitHub (May 5, 2025): Ah yeah, it's not backwards compatible at all! Sorry about that... You can delete it that would fix it, or if you are comfortable with it go through and remove the variables that are causing the issue. Edit: Just to clarify - are you asking whether using a config file from a newer version of Psst on an older version is supported? If so, unfortunately, it's not!
Author
Owner

@ernstki commented on GitHub (May 5, 2025):

Ah yeah, it's not backwards compatible at all! Sorry about that... You can delete it that would fix it, or if you are comfortable with it go through and remove the variables that are causing the issue.

OK, I'll still file a bug and close it (linking to your comment), just so a workaround is documented.

I seriously doubt it will be, but if when I'm bisecting there seems like an obvious fix (obvious to not-a-real-Rust-programmer), I'll do a PR for it.

<!-- gh-comment-id:2852354362 --> @ernstki commented on GitHub (May 5, 2025): > Ah yeah, it's not backwards compatible at all! Sorry about that... You can delete it that would fix it, or if you are comfortable with it go through and remove the variables that are causing the issue. OK, I'll still file a bug and close it (linking to your comment), just so a workaround is documented. I seriously doubt it will be, but if when I'm bisecting there seems like an obvious fix (obvious to not-a-real-Rust-programmer), I'll do a PR for it.
Author
Owner

@SO9010 commented on GitHub (May 5, 2025):

We could add the optional field to the deserilizing of that json, but I question how many people use older versions of rust after updating?

But if you want to have a go I'm happy to look through your PR and give some feedback!

<!-- gh-comment-id:2852366605 --> @SO9010 commented on GitHub (May 5, 2025): We could add the optional field to the deserilizing of that json, but I question how many people use older versions of rust after updating? But if you want to have a go I'm happy to look through your PR and give some feedback!
Author
Owner

@SO9010 commented on GitHub (May 5, 2025):

Update: Found the exact issue with dbus, just need to add a random uid for the dbus name so it doesn't overlap!

Should be a pretty easy fix.

<!-- gh-comment-id:2852379645 --> @SO9010 commented on GitHub (May 5, 2025): Update: Found the exact issue with dbus, just need to add a random uid for the dbus name so it doesn't overlap! Should be a pretty easy fix.
Author
Owner

@ernstki commented on GitHub (May 7, 2025):

We could add the optional field to the deserilizing of that json, but I question how many people use older versions of rust after updating?

Insert "there is newer version than Java 8?" meme here. I admit, I always grumble a bit when a toolchain in the LTS Linux repositories is too old to build a project I'm interested in, but I get it. Rust is an evolving language!

Thanks to both of you for having a look at this!

<!-- gh-comment-id:2856645974 --> @ernstki commented on GitHub (May 7, 2025): > We could add the optional field to the deserilizing of that json, but I question how many people use older versions of rust after updating? Insert "there is newer version than Java 8?" meme here. I admit, I always grumble a bit when a toolchain in the LTS Linux repositories is too old to build a project I'm interested in, but I get it. Rust is an evolving language! Thanks to both of you for having a look at this!
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/psst#340
No description provided.