summary refs log tree commit diff
diff options
context:
space:
mode:
authorLiliana Marie Prikler <liliana.prikler@gmail.com>2022-04-17 12:01:47 +0200
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2022-05-21 10:00:32 +0200
commita3759646031f067a85b833f8ffd228c742f1b8f6 (patch)
treefb8593dffd4dc058775e8f824cd9f1d479ac260e
parent39a9404c996e5e686ab2d8745a4bbc5597430289 (diff)
downloadguix-a3759646031f067a85b833f8ffd228c742f1b8f6.tar.gz
gnu: mpd: Add support for socket activation.
* gnu/packages/mpd.scm (mpd)[#:configure-flags]: Convert to G-Expression.
Add “-Dsystemd=enabled”.
[#:phases]: New argument.
[inputs]: Add elogind.
-rw-r--r--gnu/packages/mpd.scm19
1 files changed, 18 insertions, 1 deletions
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index dde233b337..541326d5d3 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -47,6 +47,7 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages cdrom)
   #:use-module (gnu packages cmake) ;for MPD
+  #:use-module (gnu packages freedesktop) ;elogind
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gnupg)
@@ -119,12 +120,28 @@ interfacing MPD in the C, C++ & Objective C languages.")
                 "04c2fr4akiylafb7wdjzn7r7d90rmzilbnagrifqyf3wf6ncn3cn"))))
     (build-system meson-build-system)
     (arguments
-     `(#:configure-flags '("-Ddocumentation=enabled")))
+     (list
+      #:configure-flags #~(list "-Ddocumentation=enabled"
+                                "-Dsystemd=enabled")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'enable-elogind
+            (lambda _
+              (substitute* "src/lib/systemd/meson.build"
+                (("libsystemd") "libelogind"))
+              ;; XXX: systemd dependency overwritten internally, leads to bad
+              ;;      errors
+              (substitute* "src/lib/systemd/meson.build"
+                (("systemd_dep = declare_dependency" all)
+                 (string-append "_" all)))
+              (substitute* "meson.build"
+                (("systemd_dep,") "systemd_dep, _systemd_dep,")))))))
     (inputs (list ao
                   alsa-lib
                   avahi
                   boost
                   curl
+                  elogind
                   ffmpeg
                   flac
                   fmt