[package]
authors = ["Simon Persson <simon@flaskpost.org>", "Sven Lechner <sven.lechner@rwth-aachen.de>", "eladyn <eladyn@protonmail.com>"]
edition = "2024"
name = "spotifyd"
description = "A Spotify daemon"
repository = "https://github.com/Spotifyd/spotifyd"
license = "GPL-3.0-only"
version = "0.4.2"
resolver = "2"
rust-version = "1.88"
[dependencies]
alsa = { version = "0.10.0", optional = true }
chrono = "0.4"
dbus = { version = "0.9", optional = true }
dbus-tokio = { version = "0.7.3", optional = true }
dbus-crossroads = { version = "0.5.0", optional = true }
fern = { version = "0.7.0", features = ["syslog-7", "colored"] }
futures = "0.3.15"
gethostname = "1.0.0"
hex = "0.4"
libc = "0.2.82"
log = "0.4.6"
serde = { version = "1.0.115", features = ["derive"] }
sha-1 = "0.10"
tokio = {version = "1.44.2", features = ["signal", "rt-multi-thread", "process", "io-std"] }
tokio-stream = "0.1.7"
url = "2.2.2"
librespot-audio = { version = "0.8.0", default-features = false }
librespot-playback = { version = "0.8.0", default-features = false }
librespot-core = "0.8.0"
librespot-discovery = "0.8.0"
librespot-connect = "0.8.0"
librespot-metadata = "0.8.0"
librespot-protocol = "0.8.0"
librespot-oauth = "0.8.0"
toml = "0.9.8"
color-eyre = "0.6"
directories = "6.0.0"
thiserror = "2.0"
time = { version = "0.3.37", default-features = false, features = ["formatting"] }
clap = { version = "4.5.23", features = ["derive"] }
serde_ignored = "0.1.10"
[target.'cfg(unix)'.dependencies]
daemonize = "0.5"
syslog = "7"
[target.'cfg(target_os = "macos")'.dependencies]
whoami = "1"
[target.'cfg(target_os = "openbsd")'.dependencies]
pledge = "0.4.2"
[target.'cfg(not(any(target_arch = "aarch64", target_arch = "x86_64")))'.dependencies]
aws-lc-rs = { version = "1.12.6", features = ["bindgen"] }
[dev-dependencies]
env_logger = "0.11"
[features]
alsa_backend = ["librespot-playback/alsa-backend", "dep:alsa"]
dbus_mpris = ["dep:dbus", "dep:dbus-tokio", "dep:dbus-crossroads"]
default = ["alsa_backend", "pulseaudio_backend", "dbus_mpris"]
portaudio_backend = ["librespot-playback/portaudio-backend"]
pulseaudio_backend = ["librespot-playback/pulseaudio-backend"]
rodio_backend = ["librespot-playback/rodio-backend"]
rodiojack_backend = ["librespot-playback/rodiojack-backend"]
[package.metadata.deb]
depends = "$auto"
features = ["pulseaudio_backend", "dbus_mpris"]
assets = [
["target/release/spotifyd", "usr/bin/", "755"],
["README.md", "usr/share/doc/spotifyd/README", "644"],
["contrib/spotifyd.service", "etc/systemd/user/", "644"],
]
[package.metadata.generate-rpm]
assets = [
{ source = "target/release/spotifyd", dest = "/usr/bin/spotifyd", mode = "755" },
{ source = "README.md", dest = "/usr/share/doc/spotifyd/README", mode = "644" },
{ source = "contrib/spotifyd.service", dest = "/etc/systemd/user/spotifyd.service", mode = "644" },
]
[profile.release]
lto = true