aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/patches/polkit-disable-systemd.patch
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/patches/polkit-disable-systemd.patch
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/patches/polkit-disable-systemd.patch')
-rw-r--r--gnu/packages/patches/polkit-disable-systemd.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/patches/polkit-disable-systemd.patch b/gnu/packages/patches/polkit-disable-systemd.patch
new file mode 100644
index 0000000000..551fdf7de8
--- /dev/null
+++ b/gnu/packages/patches/polkit-disable-systemd.patch
@@ -0,0 +1,30 @@
+Don't install systemd units unless using libsystemd session tracking.
+
+Submitted upstream:
+
+ https://gitlab.freedesktop.org/polkit/polkit/-/merge_requests/134
+
+diff --git a/data/meson.build b/data/meson.build
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -26,7 +26,7 @@ if enable_pam
+ )
+ endif
+
+-if enable_logind
++if session_tracking == 'libsystemd-login'
+ configure_file(
+ input: 'polkit.service.in',
+ output: '@BASENAME@',
+diff --git a/meson.build b/meson.build
+--- a/meson.build
++++ b/meson.build
+@@ -199,7 +199,7 @@ if enable_logind
+
+ # systemd unit / service files
+ systemd_systemdsystemunitdir = get_option('systemdsystemunitdir')
+- if systemd_systemdsystemunitdir == ''
++ if systemd_systemdsystemunitdir == '' and session_tracking == 'libsystemd-login'
+ systemd_dep = dependency('systemd', not_found_message: 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
+ # FIXME: systemd.pc file does not use variables with relative paths, so `define_variable` cannot be used
+ systemd_systemdsystemunitdir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir')