Skip to content

Instantly share code, notes, and snippets.

@tinywrkb
Last active January 19, 2022 18:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tinywrkb/2d6910eacca5fc685d737a3d09c76ad1 to your computer and use it in GitHub Desktop.
Save tinywrkb/2d6910eacca5fc685d737a3d09c76ad1 to your computer and use it in GitHub Desktop.
polkit-git-meson.patch
diff --git a/PKGBUILD b/PKGBUILD
index 7954f54..036a504 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,58 +1,61 @@
# Maintainer: Brian Bidulock <bidulock@openss7.org>
-# Contributor: Jan de Groot <jgc@archlinux.org>
+# Contributor: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
+# Contributor: jan de Groot <jgc@archlinux.org>
# Contributor: Aline Freitas <aline@alinefreitas.com.br>
+# Contributor: tinywrkb <tinywrkb@gmail.com>
pkgname=polkit-git
-pkgver=0.118.r12.g2c8287f
+pkgver=0.120.r2.g2ae10cb
pkgrel=1
-epoch=1
-pkgdesc="Application development toolkit for controlling system-wide privileges"
-arch=(i686 x86_64)
+pkgdesc="Application development toolkit for controlling system-wide privileges, git version"
+arch=(x86_64)
license=(LGPL)
url="https://www.freedesktop.org/wiki/Software/polkit/"
depends=(glib2 pam expat systemd js78)
-makedepends=(intltool gtk-doc gobject-introspection git autoconf-archive python-six)
-provides=('polkit')
-conflicts=('polkit')
-options=('!emptydirs')
-#source=($pkgname::git+http://anongit.freedesktop.org/git/polkit.git)
-source=($pkgname::git+https://gitlab.freedesktop.org/polkit/polkit.git)
+makedepends=(meson gtk-doc gobject-introspection git)
+checkdepends=(python-dbusmock)
+backup=(etc/pam.d/polkit-1)
+provides=(polkit)
+conflicts=(polkit)
+source=("polkit::git+https://gitlab.freedesktop.org/polkit/polkit.git")
sha256sums=('SKIP')
pkgver() {
- cd $pkgname
- git describe --tags --long|sed -r 's,([^-]*-g),r\1,;s,-,.,g'
+ cd polkit
+ git describe --tags --long | sed -r 's,([^-]*-g),r\1,;s,-,.,g'
}
-build() {
- cd $pkgname
-
- ./autogen.sh --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --libexecdir=/usr/lib \
- --enable-libsystemd-login=yes --disable-static \
- --enable-gtk-doc --with-os-type=redhat
-
- sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+prepare() {
+ cd polkit
+ # https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/99
+ git remote add upstream https://gitlab.freedesktop.org/polkit/polkit.git
+ git fetch upstream merge-requests/99/merge
+ git merge FETCH_HEAD
+}
- make
+build() {
+ local meson_options=(
+ --prefix=/usr
+ -D session_tracking=libsystemd-login
+ -D os_type=redhat
+ -D examples=true
+ -D tests=true
+ -D gtk_doc=true
+ -D man=true
+ )
+ arch-meson polkit build "${meson_options[@]}"
+ meson compile -C build
}
check() {
- cd $pkgname
- make -k check || :
+ meson test -C build --print-errorlogs
}
package() {
- cd $pkgname
- make DESTDIR="$pkgdir" install
-
- chmod 0755 "$pkgdir/etc/polkit-1/rules.d"
- chmod 0755 "$pkgdir/usr/share/polkit-1/rules.d"
+ meson install -C build --destdir "$pkgdir"
- install -Dm644 /dev/stdin "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf" <<END
-d /etc/polkit-1/rules.d 0750 root polkitd -
-d /usr/share/polkit-1/rules.d 0750 root polkitd -
-END
+ install -d -o root -g 102 -m 750 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d
+ mv "$pkgdir"/{etc,usr/share}/polkit-1/rules.d/50-default.rules
install -Dm644 /dev/stdin "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" <<END
u polkitd 102 "PolicyKit daemon"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment