Sort of fixed the versioning issue by updating it in the PKGBUILD. However this does disable validating the hashes in the prepare function (though i could fix this to work properly i am still quite new to PKGBUILD files so i just commented out the check). This is only a temporary fix until the maintainers fix it!
# Maintainer: NicoHood <archlinux {cat} nicohood {dog} de>
# PGP ID: 97312D5EB9D7AE7D0BD4307351DAE9B7C1AE9161
# Contributor: TobFromme < TobFromme {hat} pm {dont} me >
# Contributor: Ashley Whetter <(firstname) @ awhetter.co.uk>
# Contributor: Eothred <yngve.levinsen@gmail.com>
pkgname=spotify
pkgver='1.2.8.923'
epoch=1
_commit=g4f94bf0d
pkgrel=1
pkgdesc='A proprietary music streaming service'
arch=('x86_64')
license=('custom')
url='https://www.spotify.com'
depends=('alsa-lib>=1.0.14' 'gtk3' 'libxss' 'desktop-file-utils' 'openssl' 'nss' 'at-spi2-atk' 'libcurl-gnutls' 'libsm')
optdepends=('ffmpeg4.4: Adds support for playback of local files'
'zenity: Adds support for importing local files'
'libnotify: Desktop notifications')
options=('!strip')
# NOTE: We switched from stable to testing on 18th march, as the spotify
# stable repository is always outdated. Testing seems to be in sync with snap:
# https://snapcraft.io/spotify
# http://repository.spotify.com/dists/testing/Release
# http://repository.spotify.com/dists/testing/non-free/binary-amd64/Packages
# http://repository.spotify.com/dists/testing/Release.gpg
source=('spotify.protocol'
'LICENSE'
"${pkgname}-${pkgver}-${_commit}-x86_64.deb::http://repository.spotify.com/pool/non-free/s/spotify-client/spotify-client_${pkgver}.${_commit}_amd64.deb"
# GPG signature check
"${pkgname}-${pkgver}-${pkgrel}-Release::http://repository.spotify.com/dists/testing/Release"
"${pkgname}-${pkgver}-${pkgrel}-Release.sig::http://repository.spotify.com/dists/testing/Release.gpg"
"${pkgname}-${pkgver}-${pkgrel}-x86_64-Packages::http://repository.spotify.com/dists/testing/non-free/binary-amd64/Packages")
sha512sums=('999abe46766a4101e27477f5c9f69394a4bb5c097e2e048ec2c6cb93dfa1743eb436bde3768af6ba1b90eaac78ea8589d82e621f9cbe7d9ab3f41acee6e8ca20'
'2e16f7c7b09e9ecefaa11ab38eb7a792c62ae6f33d95ab1ff46d68995316324d8c5287b0d9ce142d1cf15158e61f594e930260abb8155467af8bc25779960615'
'd4bc076d87018c851f851cc8b65e05b1611701994a97963bd63aa816518b1f5fa4d89956fea8ef234a41f1c4d6f8a3aa2bfc4fbd3b39f58f0bed5aec79c60edc'
'SKIP'
'SKIP'
'SKIP')
# Import key with:
# curl -sS https://download.spotify.com/debian/pubkey_7A3A762FAFD4A51F.gpg | gpg --import -
validpgpkeys=('E27409F51D1B66337F2D2F417A3A762FAFD4A51F') # Spotify Public Repository Signing Key <tux@spotify.com>
# Old Keys:
# F9A211976ED662F00E59361E5E3C45D7B312C643
# 8FD3D9A8D3800305A9FFF259D1742AD60D811D58
# 931FF8E79F0876134EDDBDCCA87FF9DF48BF1C90
# 2EBF997C15BDA244B6EBF5D84773BD5E130D1D45
prepare() {
# Validate hashes from the PGP signed "Release" file
# echo "$(grep non-free/binary-amd64/Packages ${pkgname}-${pkgver}-${pkgrel}-Release | tail -n 2 | head -n 1 | awk '{print $1}') ${pkgname}-${pkgver}-${pkgrel}-x86_64-Packages" \
# > "${pkgname}-${pkgver}-x86_64-Packages.sha256"
# sha256sum -c "${pkgname}-${pkgver}-x86_64-Packages.sha256"
#
# echo "$(grep SHA512 ${pkgname}-${pkgver}-${pkgrel}-x86_64-Packages | head -n 1 | awk '{print $2}') ${pkgname}-${pkgver}-${_commit}-x86_64.deb" \
# > "${pkgname}-${pkgver}-x86_64.deb.sha512"
# sha512sum -c "${pkgname}-${pkgver}-x86_64.deb.sha512"
echo "imagine tests here"
}
package() {
cd "${srcdir}"
tar -xzf data.tar.gz --no-same-owner -C "${pkgdir}"
# Enable spotify to open URLs from the webapp
sed -i 's/^Exec=.*/Exec=spotify --uri=%U/' "${pkgdir}"/usr/share/spotify/spotify.desktop
install -Dm644 "${pkgdir}"/usr/share/spotify/spotify.desktop "${pkgdir}"/usr/share/applications/spotify.desktop
install -Dm644 "${pkgdir}"/usr/share/spotify/icons/spotify-linux-512.png "${pkgdir}"/usr/share/pixmaps/spotify-client.png
for size in 22 24 32 48 64 128 256 512; do
install -Dm644 "${pkgdir}/usr/share/spotify/icons/spotify-linux-$size.png" \
"${pkgdir}/usr/share/icons/hicolor/${size}x${size}/apps/spotify.png"
done
# Move spotify binary to its proper location
mkdir -p "${pkgdir}"/opt/spotify
mv "${pkgdir}/usr/share/spotify" "${pkgdir}/opt/"
# Symlink spotify binary which is located in /opt
ln -sf /opt/spotify/spotify "${pkgdir}/usr/bin/spotify"
# Copy protocol file for KDE
install -Dm644 "${srcdir}/spotify.protocol" "${pkgdir}/usr/share/kservices5/spotify.protocol"
# Install license
# https://www.spotify.com/legal/end-user-agreement
install -Dm 644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
# Fix permissions
chmod -R go-w "${pkgdir}"
}
Pinned Comments
gromit commented on 2024-01-24 14:22 (UTC) (edited on 2024-02-22 23:00 (UTC) by gromit)
Please make sure to import the correct GPG key first:
And always build in a clean chroot. It is as easy as:
It is expected that the package will break now and then, as spotify continuously changes download binaries, gpg keys etc (which is not appropriate, but we cannot change this). Please be patient if an update does not occur the next day, you can still use an existing spotify install or update the version yourself.
Antiz commented on 2023-09-13 13:21 (UTC)
@lightofpast Just pushed
v1:1.2.20.1210-2
that now allows you to set custom launch flags in aspotify-flags.conf
file under$XDG_CONFIG_HOME
or~/.config
:)