summaryrefslogtreecommitdiff
path: root/nonsystemd
diff options
context:
space:
mode:
authorDavid P <megver83@parabola.nu>2019-11-12 14:53:37 -0300
committerDavid P <megver83@parabola.nu>2019-11-12 14:53:37 -0300
commit5a880a90187a2615623e36cf2cc74f14734783be (patch)
tree948d4fdc315abf218e8edd06d06bc018464c1a87 /nonsystemd
parent88ecfd6d900ecc6f038aa7b785995e1bb9d777f9 (diff)
addpkg: nonsystemd/polkit 0.116-3.nonsystemd1
Signed-off-by: David P <megver83@parabola.nu>
Diffstat (limited to 'nonsystemd')
-rw-r--r--nonsystemd/polkit/99-parabola.rules21
-rw-r--r--nonsystemd/polkit/PKGBUILD70
-rw-r--r--nonsystemd/polkit/elogind-configure-fix.patch28
3 files changed, 119 insertions, 0 deletions
diff --git a/nonsystemd/polkit/99-parabola.rules b/nonsystemd/polkit/99-parabola.rules
new file mode 100644
index 000000000..22c84181b
--- /dev/null
+++ b/nonsystemd/polkit/99-parabola.rules
@@ -0,0 +1,21 @@
+polkit.addRule(function(action, subject) {
+ if (action.id.indexOf("org.freedesktop.udisks2.") == 0 && subject.isInGroup("storage")) {
+ return polkit.Result.YES;
+ }
+});
+
+polkit.addRule(function(action, subject) {
+ if (action.id == "org.freedesktop.login1.power-off" ||
+ action.id == "org.freedesktop.login1.reboot" ||
+ action.id == "org.freedesktop.login1.hibernate" ||
+ action.id == "org.freedesktop.login1.suspend") {
+ return polkit.Result.YES;
+ }
+});
+
+polkit.addRule(function(action, subject) {
+ if (action.id == "org.freedesktop.upower.hibernate" ||
+ action.id == "org.freedesktop.upower.suspend") {
+ return polkit.Result.YES;
+ }
+});
diff --git a/nonsystemd/polkit/PKGBUILD b/nonsystemd/polkit/PKGBUILD
new file mode 100644
index 000000000..b21abc1b2
--- /dev/null
+++ b/nonsystemd/polkit/PKGBUILD
@@ -0,0 +1,70 @@
+# Maintainer: David P. <megver83@parabola.nu>
+# Maintainer (Arch): Jan de Groot <jgc@archlinux.org>
+
+pkgname=polkit
+pkgver=0.116
+pkgrel=3
+pkgrel+=.nonsystemd1
+pkgdesc="Application development toolkit for controlling system-wide privileges"
+arch=(x86_64 i686 armv7h)
+license=(LGPL)
+url="https://www.freedesktop.org/wiki/Software/polkit/"
+depends=(glib2 pam expat elogind js60)
+makedepends=(intltool gtk-doc gobject-introspection git autoconf-archive)
+provides=(polkit-elogind)
+replaces=(polkit-elogind polkit-consolekit)
+_commit=941e9329f8d3d43ace8335d206365b212824e686 # tags/0.116
+source=("git+https://gitlab.freedesktop.org/polkit/polkit.git#commit=$_commit"
+ '99-parabola.rules'
+ 'elogind-configure-fix.patch')
+sha256sums=('SKIP'
+ 'd28d6ecaf7682860e2b3768bb266bd94313546b7cd0ef3c2eace7b1576c47adb'
+ 'd90b2a95aa3e9e1ebf9369c038c144e04900e095c5405bc4ba4901c31bf3f59b')
+
+pkgver() {
+ cd $pkgname
+ git describe --tags | sed 's/-/+/g'
+}
+
+prepare() {
+ cd $pkgname
+ patch -Np 1 -i ${srcdir}/elogind-configure-fix.patch
+ NOCONFIGURE=1 ./autogen.sh
+}
+
+build() {
+ cd $pkgname
+
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --libexecdir=/usr/lib \
+ --enable-libsystemd-login=no --disable-static \
+ --enable-gtk-doc --with-os-type=redhat \
+ --enable-libelogind=yes --with-systemdsystemunitdir=no
+
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+ make
+}
+
+check() {
+ cd $pkgname
+ make -k check || :
+}
+
+package() {
+ cd $pkgname
+ make DESTDIR="$pkgdir" install \
+ dbusconfdir=/usr/share/dbus-1/system.d \
+ rulesdir=/usr/share/polkit-1/rules.d
+
+ install -d -o root -g 102 -m 750 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d
+
+ install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" <<END
+u polkitd 102 "PolicyKit daemon"
+m polkitd proc
+END
+
+ install -m0644 "${srcdir}"/99-parabola.rules "${pkgdir}"/etc/polkit-1/rules.d
+}
+
+# vim: ts=2 sw=2 et:
diff --git a/nonsystemd/polkit/elogind-configure-fix.patch b/nonsystemd/polkit/elogind-configure-fix.patch
new file mode 100644
index 000000000..81db3becc
--- /dev/null
+++ b/nonsystemd/polkit/elogind-configure-fix.patch
@@ -0,0 +1,28 @@
+From 08bb656496cd3d6213bbe9473f63f2d4a110da6e Mon Sep 17 00:00:00 2001
+From: Rasmus Thomsen <cogitri@exherbo.org>
+Date: Wed, 11 Apr 2018 13:14:14 +0200
+Subject: [PATCH] configure: fix elogind support
+
+HAVE_LIBSYSTEMD is used to determine which source files to use.
+We have to check if either have_libsystemd or have_libelogind is
+true, as both of these need the source files which are used when
+HAVE_LIBSYSTEMD is true.
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 36df239..da47ecb 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -221,7 +221,7 @@ AS_IF([test "x$cross_compiling" != "xyes" ], [
+
+ AC_SUBST(LIBSYSTEMD_CFLAGS)
+ AC_SUBST(LIBSYSTEMD_LIBS)
+-AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes"], [Using libsystemd])
++AM_CONDITIONAL(HAVE_LIBSYSTEMD, [test "$have_libsystemd" = "yes" || test "$have_libelogind" = "yes" ], [Using libsystemd])
+
+ dnl ---------------------------------------------------------------------------
+ dnl - systemd unit / service files
+--
+2.17.0