1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-22 00:55:56 +02:00

gnu: Add iio-sensor-proxy-service-type.

* gnu/services/desktop.scm (iio-sensor-proxy-configuration)
(iio-sensor-proxy-shepherd-service, iio-sensor-proxy-service-type): New
variables.
* doc/guix.texi (Desktop Services): Document iio-sensor-proxy-service-type.

Change-Id: I0c3d7164efcc499e4b785fd1f994c68a971ebdbd
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
This commit is contained in:
dan
2025-10-16 23:59:14 +08:00
committed by Liliana Marie Prikler
parent ae147ef7bc
commit 78f05b29c1
2 changed files with 82 additions and 0 deletions
+50
View File
@@ -21,6 +21,7 @@
;;; Copyright © 2024 Raven Hallsby <karl@hallsby.com>
;;; Copyright © 2025 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
;;; Copyright © 2025 dan <i@dan.games>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -127,6 +128,11 @@
geoclue-service ; deprecated
geoclue-service-type
iio-sensor-proxy-configuration
iio-sensor-proxy-configuration?
iio-sensor-proxy-configuration-io-sensor-proxy
iio-sensor-proxy-service-type
bluetooth-service-type
bluetooth-configuration
bluetooth-configuration?
@@ -479,6 +485,50 @@ site} for more information."
(submission-nick submission-nick)
(applications applications))))
;;;
;;; IIO Sensor proxy.
;;;
(define-record-type* <iio-sensor-proxy-configuration>
iio-sensor-proxy-configuration make-iio-sensor-proxy-configuration
iio-sensor-proxy-configuration?
(iio-sensor-proxy iio-sensor-proxy-configuration-iio-sensor-proxy
(default iio-sensor-proxy)))
(define iio-sensor-proxy-shepherd-service
(match-record-lambda <iio-sensor-proxy-configuration>
(iio-sensor-proxy)
(list (shepherd-service
(documentation "IIO sensors to D-Bus proxy")
(requirement '(user-processes dbus-system udev))
(provision '(iio-sensor-proxy))
(start #~(make-forkexec-constructor
(list #$(file-append iio-sensor-proxy
"/libexec/iio-sensor-proxy"))))
(stop #~(make-kill-destructor))))))
(define iio-sensor-proxy-service-type
(let ((iio-sensor-proxy-package
(match-record-lambda <iio-sensor-proxy-configuration>
(iio-sensor-proxy)
(list iio-sensor-proxy))))
(service-type
(name 'iio-sensor-proxy)
(extensions
(list (service-extension polkit-service-type
iio-sensor-proxy-package)
(service-extension dbus-root-service-type
iio-sensor-proxy-package)
(service-extension udev-service-type
iio-sensor-proxy-package)
(service-extension shepherd-root-service-type
iio-sensor-proxy-shepherd-service)))
(default-value (iio-sensor-proxy-configuration))
(description
"Run the @command{iio-sensor-proxy} daemon, which provides IIO sensors data
through a D-Bus interface."))))
;;;
;;; Bluetooth.