summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO27
-rw-r--r--PKGBUILD52
-rw-r--r--dconf-update9
-rw-r--r--dconf-update.hook12
-rw-r--r--dconf.install11
5 files changed, 111 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..663cbb681d0e
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,27 @@
+pkgbase = dconf-git
+ pkgdesc = Configuration database system
+ pkgver = 0.38.0
+ pkgrel = 1
+ url = https://wiki.gnome.org/Projects/dconf
+ install = dconf.install
+ arch = x86_64
+ license = LGPL
+ makedepends = vala
+ makedepends = dbus
+ makedepends = git
+ makedepends = python
+ makedepends = meson
+ makedepends = bash-completion
+ depends = glib2
+ provides = libdconf.so
+ provides = dconf
+ conflicts = dconf
+ source = git+https://gitlab.gnome.org/GNOME/dconf.git
+ source = dconf-update
+ source = dconf-update.hook
+ sha256sums = SKIP
+ sha256sums = SKIP
+ sha256sums = SKIP
+
+pkgname = dconf-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..0de785103c36
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,52 @@
+# Maintainer: Vincent Grande <shoober420@gmail.com>
+# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
+# Contributor: Ionut Biru <ibiru@archlinux.org>
+
+pkgname=dconf-git
+pkgver=0.38.0
+pkgrel=1
+pkgdesc="Configuration database system"
+url="https://wiki.gnome.org/Projects/dconf"
+arch=(x86_64)
+license=(LGPL)
+depends=(glib2)
+makedepends=(vala dbus git python meson bash-completion)
+provides=(libdconf.so dconf)
+conflicts=(dconf)
+install=dconf.install
+source=("git+https://gitlab.gnome.org/GNOME/dconf.git"
+ dconf-update dconf-update.hook)
+sha256sums=('SKIP'
+ 'SKIP'
+ 'SKIP')
+
+pkgver() {
+ cd dconf
+ git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+ cd dconf
+}
+
+build() {
+ arch-meson dconf build -D gtk_doc=false
+ meson compile -C build
+}
+
+#check() {
+# meson test -C build --print-errorlogs
+#}
+
+package() {
+ DESTDIR="$pkgdir" meson install -C build
+ install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
+ install -Dt "$pkgdir/usr/share/libalpm/scripts" dconf-update
+
+ # Prevent this directory from getting removed when other
+ # packages which install files there get uninstalled
+ install -Dm644 /dev/null "$pkgdir/etc/dconf/db/.placeholder"
+}
+
+# vim:set sw=2 et:
+
diff --git a/dconf-update b/dconf-update
new file mode 100644
index 000000000000..61d48a50330e
--- /dev/null
+++ b/dconf-update
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+while read -r d; do
+ if [[ ! -d $d ]]; then
+ rm -f "${d%.d/}"
+ fi
+done
+
+dconf update
diff --git a/dconf-update.hook b/dconf-update.hook
new file mode 100644
index 000000000000..b3353c9fb861
--- /dev/null
+++ b/dconf-update.hook
@@ -0,0 +1,12 @@
+[Trigger]
+Type = Path
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = etc/dconf/db/*.d/
+
+[Action]
+Description = Updating system dconf databases...
+When = PostTransaction
+Exec = /usr/share/libalpm/scripts/dconf-update
+NeedsTargets
diff --git a/dconf.install b/dconf.install
new file mode 100644
index 000000000000..30258ff7363d
--- /dev/null
+++ b/dconf.install
@@ -0,0 +1,11 @@
+post_install() {
+ post_upgrade $1 0
+}
+
+post_upgrade() {
+ if (( $(vercmp $2 0.32.0-2) < 0 )); then
+ dconf update
+ fi
+}
+
+# vim:set sw=2 et: