Subject: [PATCH v8 5/7] gnu: admin: Add libseat 0.6.2 and move seatd.

From: muradm <[email-masked]>
Date: Thu, 16 Sep 2021 22:47:26 +0300

* gnu/packages/admin.scm (libseat): New variable
* gnu/packages/admin.scm (seatd): New variable
* gnu/packages/freedesktop.scm (seatd): Remove variable
---
 gnu/packages/admin.scm       | 53 ++++++++++++++++++++++++++++++++++++
 gnu/packages/freedesktop.scm | 30 --------------------
 2 files changed, 53 insertions(+), 30 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index e46d21844b..c5b719996f 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -45,6 +45,7 @@
 ;;; Copyright © 2021 Brice Waegeneire <[email-masked]>
 ;;; Copyright © 2021 Maxim Cournoyer <[email-masked]>
 ;;; Copyright © 2021 Maxime Devos <[email-masked]>
+;;; Copyright © 2021 pineapples <[email-masked]>
 ;;; Copyright © 2021 muradm <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -99,6 +100,7 @@
   #:use-module (gnu packages elf)
   #:use-module (gnu packages file)
   #:use-module (gnu packages flex)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gawk)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages gl)
@@ -4817,6 +4819,57 @@ setup, maintenance, supervision, or any long-running processes.")
 FIFO and UNIX interprocess communication.")
       (license license:bsd-2))))
 
+(define-public libseat
+  (package
+    (name "libseat")
+    (version "0.6.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://git.sr.ht/~kennylevinsen/seatd")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0c07i1nq0k60xmcsnr37ryqs7nzbg4qfq6fzbnzwbh1yhr8kypcm"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:configure-flags '("-Dlibseat-logind=elogind"
+                           "-Dserver=disabled")))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (propagated-inputs
+     `(("elogind" ,elogind)))
+    (home-page "https://sr.ht/~kennylevinsen/seatd")
+    (synopsis "Seat management library")
+    (description
+     "This package provides a universal seat management library that
+allows applications to use whatever seat management is available.")
+    (license license:expat)))
+
+(define-public seatd
+  (package
+    (inherit libseat)
+    (name "seatd")
+    (arguments
+     `(#:configure-flags '("-Dlibseat-logind=elogind")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'remove-libs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (with-directory-excursion (assoc-ref outputs "out")
+               (for-each delete-file-recursively '("lib" "include"))))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("scdoc" ,scdoc)))
+    (inputs '())
+    (synopsis "Seat management daemon")
+    (description
+     "This package provides a minimal seat management daemon whose task is to
+mediate access to shared devices, such as graphics and input, for applications
+that require it.")
+    (license license:expat)))
+
 (define-public greetd
   (package
     (name "greetd")
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 85d9697460..d7b411b5d1 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -834,36 +834,6 @@ GNOME Shell.  The @command{localectl} command-line tool allows you to interact
 with localed.  This package is extracted from the broader systemd package.")
     (license license:lgpl2.1+)))
 
-(define-public seatd
-  (package
-    (name "seatd")
-    (version "0.5.0")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://git.sr.ht/~kennylevinsen/seatd")
-                    (commit version)))
-              (file-name (git-file-name name version))
-              (sha256
-               (base32
-                "1kglq8v4rnr3415mfaghyv2s2f8mxsy5s881gmm2908ig4n4j297"))))
-    (build-system meson-build-system)
-    (arguments
-     `(#:configure-flags '("-Dlogind=enabled")))
-    (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("scdoc" ,scdoc)))
-    (inputs
-     `(("elogind" ,elogind)))
-    (home-page "https://sr.ht/~kennylevinsen/seatd")
-    (synopsis "Seat management daemon and library")
-    (description
-     "This package provides a minimal seat management daemon whose task is to
-mediate access to shared devices, such as graphics and input, for applications
-that require it.  It also provides a universal seat management library that
-allows applications to use whatever seat management is available.")
-    (license license:expat)))
-
 (define-public packagekit
   (package
     (name "packagekit")
-- 
2.33.0