From 0d25cc2eefefb4764cbdae0a21ca9a080cdd4867 Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Sun, 4 Oct 2020 23:26:39 +0000
Subject: dbus: 1.12.20

---
 abs/core/dbus/PKGBUILD               | 92 ++++++++++++++++++------------------
 abs/core/dbus/dbus-reload.hook       | 13 +++++
 abs/core/dbus/dbus.sysusers          |  5 --
 abs/core/dbus/no-fatal-warnings.diff | 13 +++++
 4 files changed, 73 insertions(+), 50 deletions(-)
 create mode 100644 abs/core/dbus/dbus-reload.hook
 delete mode 100644 abs/core/dbus/dbus.sysusers
 create mode 100644 abs/core/dbus/no-fatal-warnings.diff

diff --git a/abs/core/dbus/PKGBUILD b/abs/core/dbus/PKGBUILD
index 32a2d2f..cd14468 100644
--- a/abs/core/dbus/PKGBUILD
+++ b/abs/core/dbus/PKGBUILD
@@ -1,76 +1,78 @@
-# $Id$
-# Maintainer: Jan de Groot <jgc@archlinux.org>
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
+# Contributor: Jan de Groot <jgc@archlinux.org>
 # Contributor: Tom Gundersen <teg@jklm.no>
 # Contributor: Link Dupont <link@subpop.net>
 
 pkgbase=dbus
 pkgname=(dbus dbus-docs)
-pkgver=1.12.6
+pkgver=1.12.20
 pkgrel=1
 pkgdesc="Freedesktop.org message bus system"
 url="https://wiki.freedesktop.org/www/Software/dbus/"
 arch=(x86_64)
 license=(GPL custom)
-depends=(libsystemd expat)
-makedepends=(systemd xmlto docbook-xsl python yelp-tools doxygen git autoconf-archive graphviz)
-_commit=a723baa2bc7e91fc9b1926cda1ce53e9301de4d8  # tags/dbus-1.12.6^0
-source=("git+https://anongit.freedesktop.org/git/dbus/dbus#commit=$_commit"
-        'dbus.sysusers')
+depends=(systemd-libs expat audit)
+makedepends=(systemd xmlto docbook-xsl python yelp-tools doxygen git autoconf-archive)
+source=("git+https://gitlab.freedesktop.org/dbus/dbus.git?signed#tag=dbus-$pkgver"
+        dbus-reload.hook no-fatal-warnings.diff)
 sha256sums=('SKIP'
-            'ee7a7a4b2f944cb2e64b9e760efb82589d81872b5b70268356fb73c83c394845')
-validpgpkeys=('DA98F25C0871C49A59EAFF2C4DE8FF2A63C7CC90'  # Simon McVittie <simon.mcvittie@collabora.co.uk>
-              '3C8672A0F49637FE064AC30F52A43A1E4B77B059') # Simon McVittie <simon.mcvittie@collabora.co.uk>
-
-pkgver() {
-  cd $pkgbase
-  git describe --tags | sed 's/^dbus-//;s/-/+/g'
-}
+            'd636205622d0ee3b0734360225739ef0c7ad2468a09489e6ef773d88252960f3'
+            '6958eeec07557b92a28419eb1702331ee2f0a6fd17285e37dfb6130b9fa4cf6e')
+validpgpkeys=('DA98F25C0871C49A59EAFF2C4DE8FF2A63C7CC90') # Simon McVittie <simon.mcvittie@collabora.co.uk>
 
 prepare() {
-  cd $pkgbase
+  cd dbus
 
-  # Reduce docs size
-  printf '%s\n' >>Doxyfile.in \
-    HAVE_DOT=yes DOT_IMAGE_FORMAT=svg INTERACTIVE_SVG=yes
+  # Allow us to enable checks without them being fatal
+  patch -Np1 -i ../no-fatal-warnings.diff
 
   NOCONFIGURE=1 ./autogen.sh
 }
 
 build() {
-  cd $pkgbase
-  ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
-      --libexecdir=/usr/lib/dbus-1.0 --with-dbus-user=dbus \
-      --with-system-pid-file=/run/dbus/pid \
-      --with-system-socket=/run/dbus/system_bus_socket \
-      --with-console-auth-dir=/run/console/ \
-      --enable-inotify --disable-static \
-      --disable-verbose-mode --disable-asserts \
-      --with-systemdsystemunitdir=/usr/lib/systemd/system \
-      --enable-systemd --enable-user-session
+  cd dbus
+  ./configure \
+    --prefix=/usr \
+    --sysconfdir=/etc \
+    --localstatedir=/var \
+    --libexecdir=/usr/lib/dbus-1.0 \
+    runstatedir=/run \
+    --with-console-auth-dir=/run/console/ \
+    --with-dbus-user=dbus \
+    --with-system-pid-file=/run/dbus/pid \
+    --with-system-socket=/run/dbus/system_bus_socket \
+    --with-systemdsystemunitdir=/usr/lib/systemd/system \
+    --enable-inotify \
+    --enable-libaudit \
+    --enable-systemd \
+    --enable-user-session \
+    --enable-xml-docs \
+    --enable-doxygen-docs \
+    --disable-static \
+    --without-x
   make
 }
 
 check() {
-  cd $pkgbase
-  make check
+  make -C dbus check
 }
 
 package_dbus() {
-  provides=(libdbus)
+  depends+=(libsystemd.so libaudit.so)
+  provides=(libdbus libdbus-1.so)
   conflicts=(libdbus)
   replaces=(libdbus)
 
-  cd $pkgbase
-
-  make DESTDIR="$pkgdir" install
-
-  rm -r "$pkgdir/var/run"
+  DESTDIR="$pkgdir" make -C dbus install
 
-  install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgbase/COPYING"
+  rm -r "$pkgdir"/{etc,var}
 
   # We have a pre-assigned uid (81)
-  install -m644 "$srcdir/dbus.sysusers" "$pkgdir/usr/lib/sysusers.d/dbus.conf"
+  echo 'u dbus 81 "System Message Bus"' |
+    install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/dbus.conf"
+
+  install -Dt "$pkgdir/usr/share/libalpm/hooks" -m644 *.hook
+  install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 dbus/COPYING
 
   # Split docs
   mv "$pkgdir/usr/share/doc" "$srcdir"
@@ -78,10 +80,10 @@ package_dbus() {
 
 package_dbus-docs() {
   pkgdesc+=" (documentation)"
-  depends=(dbus)
-
-  install -d "$pkgdir/usr/share/licenses"
-  ln -s dbus "$pkgdir/usr/share/licenses/dbus-docs"
+  depends=()
 
+  install -Dt "$pkgdir/usr/share/licenses/$pkgname" -m644 dbus/COPYING
   mv doc "$pkgdir/usr/share"
 }
+
+# vim:set sw=2 et:
diff --git a/abs/core/dbus/dbus-reload.hook b/abs/core/dbus/dbus-reload.hook
new file mode 100644
index 0000000..9f87829
--- /dev/null
+++ b/abs/core/dbus/dbus-reload.hook
@@ -0,0 +1,13 @@
+[Trigger]
+Type = Path
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = etc/dbus-1/system.d/*.conf
+Target = usr/share/dbus-1/system.d/*.conf
+Target = usr/share/dbus-1/system-services/*.service
+
+[Action]
+Description = Reloading system bus configuration...
+When = PostTransaction
+Exec = /usr/share/libalpm/scripts/systemd-hook reload dbus
diff --git a/abs/core/dbus/dbus.sysusers b/abs/core/dbus/dbus.sysusers
deleted file mode 100644
index c6199ed..0000000
--- a/abs/core/dbus/dbus.sysusers
+++ /dev/null
@@ -1,5 +0,0 @@
-# sysusers.d snippet for creating the D-Bus system user automatically
-# at boot on systemd-based systems that ship with an unpopulated
-# /etc. See sysusers.d(5) for details.
-
-u dbus 81 "System Message Bus"
diff --git a/abs/core/dbus/no-fatal-warnings.diff b/abs/core/dbus/no-fatal-warnings.diff
new file mode 100644
index 0000000..459da90
--- /dev/null
+++ b/abs/core/dbus/no-fatal-warnings.diff
@@ -0,0 +1,13 @@
+diff --git i/dbus/dbus-internals.c w/dbus/dbus-internals.c
+index 267aef97..b1064e85 100644
+--- i/dbus/dbus-internals.c
++++ w/dbus/dbus-internals.c
+@@ -185,7 +185,7 @@ const char *_dbus_no_memory_message = "Not enough memory";
+ 
+ static dbus_bool_t warn_initted = FALSE;
+ static dbus_bool_t fatal_warnings = FALSE;
+-static dbus_bool_t fatal_warnings_on_check_failed = TRUE;
++static dbus_bool_t fatal_warnings_on_check_failed = FALSE;
+ 
+ static void
+ init_warnings(void)
-- 
cgit v0.12

