# Contributor: Thomas Kienlen <kommander@laposte.net>
# Maintainer: Thomas Kienlen <kommander@laposte.net>
pkgname=spotifyd
pkgver=0.4.1
pkgrel=0
pkgdesc="Open source Spotify client running as a UNIX daemon"
url="https://github.com/Spotifyd/spotifyd"
# rust-ring
# loongarch64: blocked by nix crate
arch="all !ppc64le !riscv64 !s390x !loongarch64"
license="GPL-3.0-or-later"
makedepends="
	alsa-lib-dev
	cargo
	cargo-auditable
	dbus-dev
	libogg-dev
	openssl-dev>3
	pulseaudio-dev
	"
pkgusers="spotifyd"
pkggroups="spotifyd"
install="spotifyd.pre-install"
subpackages="$pkgname-openrc"

case "$CARCH" in
arm*|x86) makedepends="cmake clang-dev $makedepends" ;;
esac

source="https://github.com/Spotifyd/spotifyd/archive/v$pkgver/spotifyd-$pkgver.tar.gz
	spotifyd.initd
	spotifyd.conf
	"

prepare() {
	default_prepare

	cargo fetch --target=$CTARGET --locked
}

build() {
	cargo auditable build --release --frozen --features pulseaudio_backend,dbus_mpris,rodio_backend
}

check() {
	cargo test --locked --target-dir=target
}

package() {
	install -D -m 755 target/release/spotifyd "$pkgdir/usr/bin/spotifyd"
	install -D -m 755 "$srcdir/spotifyd.initd" "$pkgdir/etc/init.d/spotifyd"
	install -D -m 660 -o spotifyd -g spotifyd "$srcdir/spotifyd.conf" "$pkgdir/etc/spotifyd.conf"
}

sha512sums="
8a0305dd4ad203747fe3728b092049f7581bf0417ac4622e8806a590fe3fd85d969f09e971d4e267bcfe56ece5bd499e8cb90d3272718d5b311bb702b95e5b5f  spotifyd-0.4.1.tar.gz
dd4664c5818af8de3439deedfecb2a9d6bd70ab41c3db57cf659d42d4071ffe47d137fa55d94009022472d5927668978df2e6236c574bbe35596fb386ef274a2  spotifyd.initd
4fdc103d29d0caa1644d7280e17ccff265ce660f51dfc53d7975a30fb7cf139b98ed72545e91c536cac7e2b222cd22ac9622bf07158c27edb4f9eccd1496fab9  spotifyd.conf
"
