author | FirstAirBender
<noblechuk5@web.de> 2024-10-24 04:14:24 UTC |
committer | FirstAirBender
<noblechuk5@web.de> 2024-10-24 04:14:24 UTC |
parent | 361a58891640f8e5f674c2a27688f742b878a683 |
.SRCINFO | +9 | -11 |
PKGBUILD | +50 | -33 |
diff --git a/.SRCINFO b/.SRCINFO index c44085b..5918375 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,21 +1,19 @@ pkgbase = librespot pkgdesc = Open source client library for Spotify - pkgver = 0.4.2 + pkgver = 0.5.0 pkgrel = 1 url = https://github.com/librespot-org/librespot arch = x86_64 - arch = aarch64 license = MIT makedepends = cargo - makedepends = git depends = alsa-lib - depends = gst-plugins-base-libs - depends = jack - depends = libpulse - depends = portaudio - depends = sdl2 - source = librespot::git+https://github.com/librespot-org/librespot#commit=22f8aed?signed - validpgpkeys = EC57B7376EAFF1A0BB56BB0187F5FDE8A56219F4 - sha256sums = SKIP + optdepends = gst-plugins-base: Audio playback using GStreamer + optdepends = gst-plugins-good: Audio playback using GStreamer + optdepends = jack2: Audio playback using JACK + optdepends = libpulse: Audio playback using PulseAudio + optdepends = portaudio: Audio playback using PortAudio + optdepends = sdl2: Audio playback using SDL2 + source = librespot-0.5.0.tar.gz::https://github.com/librespot-org/librespot/archive/0.5.0.tar.gz + sha256sums = 4ea500bb5673fbf4cc9dcbb7afdc228bf0cdb434cc3a0be79afa6bb385a8b5f8 pkgname = librespot diff --git a/PKGBUILD b/PKGBUILD index 4a10228..036f4b6 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,53 +1,70 @@ -# Maintainer: Luis Martinez <luis dot martinez at disroot dot org> +# Maintainer: FirstAirBender <noblechuk5[at]gmail[dot]com> +# Contributor: Luis Martinez <luis dot martinez at disroot dot org> # Contributor: Philip Goto <philip.goto@gmail.com> -## GPG key: https://github.com/roderickvd.gpg - pkgname=librespot -pkgver=0.4.2 -_commit=22f8aed +pkgver=0.5.0 pkgrel=1 pkgdesc='Open source client library for Spotify' -arch=('x86_64' 'aarch64') +arch=('x86_64') url='https://github.com/librespot-org/librespot' license=('MIT') depends=( - 'alsa-lib' - 'gst-plugins-base-libs' - 'jack' - 'libpulse' - 'portaudio' - 'sdl2') -makedepends=('cargo' 'git') -source=("$pkgname::git+$url#commit=$_commit?signed") -sha256sums=('SKIP') -validpgpkeys=('EC57B7376EAFF1A0BB56BB0187F5FDE8A56219F4') ## Roderick van Domberg + 'alsa-lib' +) +makedepends=( + 'cargo' +) +optdepends=( + 'gst-plugins-base: Audio playback using GStreamer' + 'gst-plugins-good: Audio playback using GStreamer' + 'jack2: Audio playback using JACK' + 'libpulse: Audio playback using PulseAudio' + 'portaudio: Audio playback using PortAudio' + 'sdl2: Audio playback using SDL2' +) +source=("$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz") +sha256sums=('4ea500bb5673fbf4cc9dcbb7afdc228bf0cdb434cc3a0be79afa6bb385a8b5f8') prepare() { - cd "$pkgname" - cargo fetch --locked --target "$CARCH-unknown-linux-gnu" + cd "$pkgname-$pkgver" + export RUSTUP_TOOLCHAIN=stable + export PKG_FEATURES=alsa-backend + PKG_FEATURE_MAP=( + [jack2]='jackaudio-backend' + [gst-plugins-good]='gstreamer-backend' + [gst-plugins-base]='gstreamer-backend' + [sdl2]='sdl-backend' + [libpulse]='pulseaudio-backend' + [portaudio]='portaudio-backend' + ) + for pkg in "${!PKG_FEATURE_MAP[@]}"; do + if pacman -Qsq "$pkg" | sed -E "/^$pkg\$/b; /.+/d"; then + export PKG_FEATURES="$PKG_FEATURES,${PKG_FEATURE_MAP[$pkg]}" + fi 2>/dev/null >&2 + done + cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')" } build() { - export RUSTUP_TOOLCHAIN=stable - export CARGO_TARGET_DIR=target - cd "$pkgname" - cargo build --release --frozen --features \ - alsa-backend,portaudio-backend,pulseaudio-backend,jackaudio-backend,rodio-backend,rodiojack-backend,sdl-backend,gstreamer-backend + cd "$pkgname-$pkgver" + export RUSTUP_TOOLCHAIN=stable + export CARGO_TARGET_DIR=target + export CARGO_BUILD_JOBS="$(nproc --ignore $(($(nproc) / 2)))" + echo >&2 "Building $pkgname-$pkgver with the following features: $PKG_FEATURES" + cargo build --release --frozen --no-default-features --features "$PKG_FEATURES" } -## 0 tests # check() { -# export RUSTUP_TOOLCHAIN=stable -# cd "$pkgname" -# cargo test --frozen --features \ -# alsa-backend,portaudio-backend,pulseaudio-backend,jackaudio-backend,rodio-backend,rodiojack-backend,sdl-backend,gstreamer-backend +# cd "$pkgname-$pkgver" +# export RUSTUP_TOOLCHAIN=stable +# cargo test --frozen --no-default-features --features "$PKG_FEATURES" # } package() { - cd "$pkgname" - install -Dv "target/release/$pkgname" -t "$pkgdir/usr/bin/" - install -Dvm644 "contrib/$pkgname.service" -t "$pkgdir/usr/lib/systemd/system/" - install -Dvm644 "contrib/$pkgname.user.service" "$pkgdir/usr/lib/systemd/user/$pkgname.service" - install -Dvm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" + cd "$pkgname-$pkgver" + install -Dvm0755 -t "$pkgdir/usr/bin/" "target/release/$pkgname" + install -Dvm644 "contrib/$pkgname.service" -t "$pkgdir/usr/lib/systemd/system/" + install -Dvm644 "contrib/$pkgname.user.service" "$pkgdir/usr/lib/systemd/user/$pkgname.service" + install -Dvm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" }