Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Need to install dbus to run the daemon #490

Closed
m3at opened this issue Jan 30, 2020 · 10 comments
Closed

Need to install dbus to run the daemon #490

m3at opened this issue Jan 30, 2020 · 10 comments
Labels
bug A functionality or parts of a program that do not work as intended waiting for feedback Issues that need user feedback for e.g. log files

Comments

@m3at
Copy link

m3at commented Jan 30, 2020

Description
When following the Installation instructions on macOS, I got a core dump as dbus was not installed.
This is normal, but I think adding a line suggesting to run brew install dbus on macOS might be useful.

To Reproduce

  1. Download the latest release on a mac were dbus has not yet been installed
  2. Extract and run ./spotifyd --help

Expected behavior
(work as expected)

Logs

Click to show logs % ./spotifyd --help dyld: Library not loaded: /usr/local/opt/dbus/lib/libdbus-1.3.dylib Referenced from: /Users/paulelix/Downloads/./spotifyd Reason: image not found [1] 71816 abort (core dumped) ./spotifyd --help

Versions (please complete the following information):

  • OS: macOS Mojave, 10.14.6
  • Spotifyd: v0.2.24
  • cargo: cargo 1.40.0 (bc8e4c8be 2019-11-22)

Suggested fix
Add a line such as:

On macOS, you might need to install dbus first with `brew install dbus`.

This is a very minor nitpick, I imagine most users of spotifyd would be able to find the issue by themselves in a few minutes anyway, so feel free to discard this issue.

@m3at m3at added the bug A functionality or parts of a program that do not work as intended label Jan 30, 2020
@mainrs
Copy link
Member

mainrs commented Jan 31, 2020

Which flavor did you download, full or slim?

@mainrs mainrs added the waiting for feedback Issues that need user feedback for e.g. log files label Feb 2, 2020
@m3at
Copy link
Author

m3at commented Feb 2, 2020

I downloaded full: spotifyd-macos-full.tar.gz

@andrewkro
Copy link

I had the same as above (downloaded full on macos as well), but also needed to install portaudio

dyld: Library not loaded: /usr/local/opt/portaudio/lib/libportaudio.2.dylib
  Referenced from: /Users/akroenert/Downloads/./spotifyd
  Reason: image not found
Abort trap: 6
$ brew install portaudio

@mainrs
Copy link
Member

mainrs commented Feb 8, 2020

For macOS, portaudio is needed if you use the portaudio backend, I think rodio doesn't need it.

@jveiga
Copy link

jveiga commented Feb 27, 2020

Hi, I can't install it on macos Catalina 10.15.3
I tried compilling from tag v0.2.24
with portaudio 19.6.0 installed, I run spotifyd and it terminates with error code 0
with rodio, I see the same behaviour.
Let me know if I should create a separate issue Great project!

@mainrs
Copy link
Member

mainrs commented Feb 27, 2020

Did you use cargo build --release --no-default-features --features "portaudio_backend"?
Termination with exit code 0 sounds good. By default spotifyd will fork itself and run in the background. You can pass down --no-daemon to prevent forking, which will display log output to stdout.

@mainrs
Copy link
Member

mainrs commented Feb 27, 2020

Commenting on the original issue:
full has all optional features enabled, meaning that dbus_{keyring,mpris} are getting compiled. That's why you need dbus as well (see

feature: 'dbus_keyring,dbus_mpris' # Full version has all OS compatible features enabled
)

In theory MPRIS does work on macOS, but the media buttons on macOS do not send commands over the dbus. I was looking into adding this but couldn't find a rust library that allowed me to listen for keystrokes of those keys.

I'm open to removing the dbus_mpris feature flag from macOS full releases as they do not really serve functionality right now (at least none I am aware of). PR welcome.

@mainrs mainrs closed this as completed Feb 27, 2020
@jveiga
Copy link

jveiga commented Feb 27, 2020

with --no-daemon, I managed to understand what was wrong 👍

@xartuu
Copy link

xartuu commented Oct 11, 2023

In theory MPRIS does work on macOS, but the media buttons on macOS do not send commands over the dbus. I was looking into adding this but couldn't find a rust library that allowed me to listen for keystrokes of those keys.

Any updates?
I'm not hiding the fact that this would be a key feature - controlling music with multimedia keys from the keyboard on MacBook.

@eladyn
Copy link
Member

eladyn commented Oct 14, 2023

In theory, there are crates that offer cross-platform ways to offer media key handling (like souvlaki). Unfortunately, Windows as well as macOS seem to require an open window for media keys to work? Which obviously isn't a thing, we want to do with spotifyd.

But you have different ideas, how this could be achieved, I'm open to suggestions!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A functionality or parts of a program that do not work as intended waiting for feedback Issues that need user feedback for e.g. log files
Projects
None yet
Development

No branches or pull requests

6 participants