diff --git a/spot-client/.SRCINFO b/spot-client/.SRCINFO new file mode 100644 index 0000000..3562867 --- /dev/null +++ b/spot-client/.SRCINFO @@ -0,0 +1,33 @@ +pkgbase = spot-client + pkgdesc = Gtk/Rust native Spotify client + pkgver = 0.3.2 + pkgrel = 1 + url = https://github.com/xou816/spot + arch = x86_64 + arch = i686 + arch = arm + arch = armv6h + arch = armv7h + arch = aarch64 + license = MIT + checkdepends = appstream-glib + makedepends = cargo + makedepends = meson>=0.50.0 + depends = alsa-lib + depends = cairo + depends = glib2 + depends = glibc + depends = graphene + depends = gtk4 + depends = libadwaita + depends = libpulse + depends = openssl + depends = pango + optdepends = org.freedesktop.secrets + options = !lto + source = spot-client-0.3.2-1.tar.gz::https://github.com/xou816/spot/archive/0.3.2.tar.gz + source = disable-clippy.patch + sha512sums = fd8b1f372b5c06d65c0d40465aff018573e913200460b48339a9e106d17a372289b67855877d8642427367fc18e5eac31f2e765e54f4889149a8b5a69cd4638d + sha512sums = 1cb0faced2e6801cb994e9af7b81411355837b2efcd9c82b82751508e0bfcc967c50b3d6296bfdb8c017bbf2e7a503a3920d36cb896e44c896c23f5b9e1d13f1 + +pkgname = spot-client diff --git a/spot-client/.editorconfig b/spot-client/.editorconfig new file mode 100644 index 0000000..a467ee9 --- /dev/null +++ b/spot-client/.editorconfig @@ -0,0 +1,8 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +indent_style = tab +tab_width = 4 diff --git a/spot-client/.gitignore b/spot-client/.gitignore new file mode 100644 index 0000000..82b3c18 --- /dev/null +++ b/spot-client/.gitignore @@ -0,0 +1,14 @@ +# from https://github.com/github/gitignore/blob/master/ArchLinuxPackages.gitignore +*.tar +*.tar.* +*.rpm +*.jar +*.exe +*.msi +*.zip +*.tgz +*.log +*.log.* +*.sig + +*/ diff --git a/spot-client/PKGBUILD b/spot-client/PKGBUILD new file mode 100644 index 0000000..2bfde9c --- /dev/null +++ b/spot-client/PKGBUILD @@ -0,0 +1,53 @@ +# Maintainer: Manuel Hüsers +# Contributor: Daniel Peukert +# Contributor: NicoHood +_projectname='spot' +pkgname="$_projectname-client" +pkgver='0.3.2' +pkgrel='1' +pkgdesc='Gtk/Rust native Spotify client' +arch=('x86_64' 'i686' 'arm' 'armv6h' 'armv7h' 'aarch64') +url="https://github.com/xou816/$_projectname" +license=('MIT') +depends=('alsa-lib' 'cairo' 'glib2' 'glibc' 'graphene' 'gtk4' 'libadwaita' 'libpulse' 'openssl' 'pango') +optdepends=('org.freedesktop.secrets') +makedepends=('cargo' 'meson>=0.50.0') +checkdepends=('appstream-glib') +options=('!lto') # build breaks with LTO enabled (https://gitlab.com/dpeukert/pkgbuilds/-/issues/38) +source=( + "$pkgname-$pkgver-$pkgrel.tar.gz::$url/archive/$pkgver.tar.gz" + 'disable-clippy.patch' +) +sha512sums=('fd8b1f372b5c06d65c0d40465aff018573e913200460b48339a9e106d17a372289b67855877d8642427367fc18e5eac31f2e765e54f4889149a8b5a69cd4638d' + '1cb0faced2e6801cb994e9af7b81411355837b2efcd9c82b82751508e0bfcc967c50b3d6296bfdb8c017bbf2e7a503a3920d36cb896e44c896c23f5b9e1d13f1') +validpgpkeys=() # waiting for https://github.com/xou816/spot/issues/283 + +_sourcedirectory="$_projectname-$pkgver" +_builddirectory='build' + +prepare() { + cd "$srcdir/$_sourcedirectory/" + + # Disable clippy tests, as they don't realy make sense for user builds (https://gitlab.com/dpeukert/pkgbuilds/-/issues/37) + patch --forward -p1 < '../disable-clippy.patch' +} + +build() { + cd "$srcdir/" + # We're not using arch-meson, because upstream recommends using --buildtype 'release' + # The offline build flag is turned off, as we're not predownloading rust dependencies + meson setup --prefix '/usr' --libexecdir 'lib' --sbindir 'bin' --buildtype 'release' --wrap-mode 'nodownload' \ + -Db_lto='true' -Db_pie='true' -Doffline='false' "$_sourcedirectory" "$_builddirectory" + meson compile -C "$_builddirectory" +} + +check() { + cd "$srcdir/" + meson test -C "$_builddirectory" --timeout-multiplier -1 +} + +package() { + cd "$srcdir/" + meson install -C "$_builddirectory" --destdir "$pkgdir" + install -Dm644 "$_sourcedirectory/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/spot-client/disable-clippy.patch b/spot-client/disable-clippy.patch new file mode 100644 index 0000000..25b9544 --- /dev/null +++ b/spot-client/disable-clippy.patch @@ -0,0 +1,19 @@ +diff --git a/src/meson.build b/src/meson.build +index 755d870..fac1b77 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -208,14 +208,3 @@ test('Unit tests', + ], + timeout: 180 + ) +- +-cargo_clippy = find_program(meson.source_root() / 'build-aux/clippy.sh') +-test('Clippy', +- cargo_clippy, +- args: [ +- meson.source_root(), +- meson.build_root(), +- get_option('offline') ? 'true' : 'false' +- ], +- timeout: 180 +-)