aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/polkit.scm
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2022-09-05 18:48:21 +0200
committerMarius Bakke <marius@gnu.org>2022-09-06 23:43:40 +0200
commit92fdda5a6351dd5246b65165547d50d0b827cef3 (patch)
treee7cef4a9c550445fd37c88621ef37e6a508cf267 /gnu/packages/polkit.scm
parentc7032683a5ce8ec3b28c935efb00e238d28a5e19 (diff)
downloadguix-92fdda5a6351dd5246b65165547d50d0b827cef3.tar
guix-92fdda5a6351dd5246b65165547d50d0b827cef3.tar.gz
gnu: polkit: Look up polkit rules under /etc, and enable session tracking.
This is a follow-up to commit 290ac5cd1e67d99b4d704603c1559dfb72f542c2. * gnu/packages/polkit.scm (polkit-mozjs)[source](snippet): Add substitutions. [source](patches): New field. [arguments]: Pass --sysconfdir and -Dsession_tracking in #:configure-flags. * gnu/packages/patches/polkit-disable-systemd.patch: New file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly.
Diffstat (limited to 'gnu/packages/polkit.scm')
-rw-r--r--gnu/packages/polkit.scm15
1 files changed, 12 insertions, 3 deletions
diff --git a/gnu/packages/polkit.scm b/gnu/packages/polkit.scm
index 18d299bbd1..a5c1b0dc98 100644
--- a/gnu/packages/polkit.scm
+++ b/gnu/packages/polkit.scm
@@ -63,6 +63,7 @@
(uri (string-append
"https://www.freedesktop.org/software/polkit/releases/"
name "-" version ".tar.gz"))
+ (patches (search-patches "polkit-disable-systemd.patch"))
(sha256
(base32
"1apz3bh7nbpmlp1cr00pb8z8wp0c7yb23ninb959jz3r38saxiwx"))
@@ -75,11 +76,17 @@
(substitute* "test/meson.build"
(("subdir\\('polkitbackend'\\)")
""))
- ;; Guix System's polkit
- ;; service stores actions under /etc/polkit-1/actions.
+ ;; Look up actions and rules from /etc/polkit ...
+ (substitute* "src/polkitbackend/meson.build"
+ (("'-DPACKAGE_SYSCONF_DIR=.*,")
+ "'-DPACKAGE_SYSCONF_DIR=\"/etc\"',"))
(substitute* "src/polkitbackend/polkitbackendinteractiveauthority.c"
(("PACKAGE_DATA_DIR \"/polkit-1/actions\"")
"PACKAGE_SYSCONF_DIR \"/polkit-1/actions\""))
+ ;; ... but install package files below the prefix.
+ (substitute* "meson.build"
+ (("pk_sysconfdir = get_option\\('sysconfdir'\\)")
+ "pk_sysconfdir = get_option('prefix') + '/etc'"))
;; Set the setuid helper's real location.
(substitute* "src/polkitagent/polkitagentsession.c"
(("PACKAGE_PREFIX \"/lib/polkit-1/polkit-agent-helper-1\"")
@@ -104,7 +111,9 @@
docbook-xsl)) ;for man page generation
(arguments
(list #:configure-flags
- #~'("-Dman=true"
+ #~'("--sysconfdir=/etc"
+ "-Dsession_tracking=libelogind"
+ "-Dman=true"
"-Dtests=true"
"-Djs_engine=mozjs"
;; Work around broken gobject-introspection detection when