From e3435def6a29154e436cbc7f93983ba740fdfc81 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Wed, 16 Oct 2019 02:46:17 +0000 Subject: [PATCH] added extra/appstream --- ...001-Remove-Wno-error-deprecated-copy.patch | 25 +++++++ extra/appstream/PKGBUILD | 67 +++++++++++++++++++ extra/appstream/update-appstream-cache.hook | 17 +++++ 3 files changed, 109 insertions(+) create mode 100644 extra/appstream/0001-Remove-Wno-error-deprecated-copy.patch create mode 100644 extra/appstream/PKGBUILD create mode 100644 extra/appstream/update-appstream-cache.hook diff --git a/extra/appstream/0001-Remove-Wno-error-deprecated-copy.patch b/extra/appstream/0001-Remove-Wno-error-deprecated-copy.patch new file mode 100644 index 000000000..30bc11d78 --- /dev/null +++ b/extra/appstream/0001-Remove-Wno-error-deprecated-copy.patch @@ -0,0 +1,25 @@ +From 05e37466a1836f074ebe7601b1874762fedb9d1e Mon Sep 17 00:00:00 2001 +From: Kevin Mihelich +Date: Tue, 15 Oct 2019 20:42:47 -0600 +Subject: [PATCH] Remove -Wno-error=deprecated-copy + +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 8556b544..36cef5ce 100644 +--- a/meson.build ++++ b/meson.build +@@ -54,7 +54,7 @@ endif + + # a few compiler warning flags we always want enabled + add_global_arguments('-Werror=implicit-function-declaration', '-Wno-unused-parameter', language: 'c') +-add_global_arguments('-Wno-unused-parameter', '-Wno-error=deprecated-copy', language: 'cpp') ++add_global_arguments('-Wno-unused-parameter', language: 'cpp') + add_global_arguments('-DAS_COMPILATION', language : 'c') + + # +-- +2.22.0 + diff --git a/extra/appstream/PKGBUILD b/extra/appstream/PKGBUILD new file mode 100644 index 000000000..51b9e5336 --- /dev/null +++ b/extra/appstream/PKGBUILD @@ -0,0 +1,67 @@ +# Maintainer: Antonio Rojas +# Contributor: Jameson Pugh +# Contributor: Tim Jester-Pfadt gmx.de> + +# ALARM: Kevin Mihelich +# - patch to remove invalid compiler option + +pkgbase=appstream +pkgname=(appstream appstream-qt) +pkgver=0.12.9 +pkgrel=2 +pkgdesc="Provides a standard for creating app stores across distributions" +arch=(x86_64) +url="https://distributions.freedesktop.org/wiki/AppStream" +license=(GPL) +depends=(libyaml libxml2 libstemmer glib2 lmdb) +makedepends=(meson xmlto gobject-introspection gtk-doc qt5-tools itstool vala gperf) +source=("https://www.freedesktop.org/software/appstream/releases/AppStream-$pkgver.tar.xz"{,.asc} + update-appstream-cache.hook + appstream-fix-double-free.patch::"https://github.com/ximion/appstream/commit/da9f330d.patch" + 0001-Remove-Wno-error-deprecated-copy.patch) +sha256sums=('459273e3aaaf8c393441c9532c0b808e61f0278ff6623c058563af1c904aa31d' + 'SKIP' + 'a6c42e4607ffd7d7dc931d608f1856e2ba7689d4caac0783e7100d86de0f951b' + 'fb49831d8c8353d8e634c8a68f06d62baadc70dd28c06e388d8e6270e2b55e7d' + 'e4cfc8b0f72c6a659e70dbd7dc870431faa0cf3320a64c8ca4f0df3a5e13117e') +validpgpkeys=(D33A3F0CA16B0ACC51A60738494C8A5FBF4DECEB) # Matthias Klumpp + +prepare() { + mkdir -p build + + cd AppStream-$pkgver + patch -p1 -i ../appstream-fix-double-free.patch # Fix double free when running appstream generator + patch -p1 -i ../0001-Remove-Wno-error-deprecated-copy.patch +} + +build() { + cd build + + meson ../AppStream-$pkgver \ + --prefix=/usr \ + -Dqt=true \ + -Dvapi=true + ninja +} + +package_appstream() { + cd build + + DESTDIR="$pkgdir" ninja install + +# provided by -qt subpackage + rm -r "$pkgdir"/usr/{include/AppStreamQt,lib/cmake,lib/libAppStreamQt.*} + + install -Dm644 "$srcdir"/update-appstream-cache.hook "$pkgdir"/usr/share/libalpm/hooks/update-appstream-cache.hook +} + +package_appstream-qt() { + pkgdesc='Qt5 interface for AppStream' + depends=(appstream qt5-base) + + cd build + DESTDIR="$pkgdir" ninja install + +# provided by appstream + rm -r "$pkgdir"{/etc,/usr/{bin,include/appstream,lib/{girepository-1.0,libappstream*,pkgconfig},share}} +} diff --git a/extra/appstream/update-appstream-cache.hook b/extra/appstream/update-appstream-cache.hook new file mode 100644 index 000000000..10d5027f8 --- /dev/null +++ b/extra/appstream/update-appstream-cache.hook @@ -0,0 +1,17 @@ +[Trigger] +Type = File +Operation = Install +Operation = Upgrade +Operation = Remove +Target = usr/share/app-info/* + +[Trigger] +Type = Package +Operation = Install +Operation = Upgrade +Target = appstream + +[Action] +Description = Updating the appstream cache... +When = PostTransaction +Exec = /usr/bin/appstreamcli refresh-cache --force