diff --git a/doc/guix.texi b/doc/guix.texi index d487a15084..a0c53e7d8e 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -27015,6 +27015,32 @@ Deprecated option. @end deftp +@c %end of fragment + +@defvar gardenhostd-service-type +Type for the service that runs gardenhostd, a partial implementation of +the systemd-hostnamed daemon. It provides the org.freedesktop.hostname1 +D-Bus interface, which helps applications like gnome-control-center +retrieve and modify the system’s hostname, as well as set a pretty +hostname for display. + +The value for this service is a @code{} object. +@end defvar + +@c %start of fragment + +@deftp {Data Type} gardenhostd-configuration +Available @code{gardenhostd-configuration} fields are: + +@table @asis +@item @code{gardenhostd} (default: @code{gardenhostd}) (type: package) +The gardenhostd package to use. + +@end table + +@end deftp + + @c %end of fragment @defvar accountsservice-service-type diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 7a89212812..3d5b38d2af 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2025 Jonathan Brielmaier ;;; Copyright © 2025 Sergio Pastor Pérez ;;; Copyright © 2025 dan +;;; Copyright © 2026 Noé Lopez ;;; ;;; This file is part of GNU Guix. ;;; @@ -143,6 +144,9 @@ elogind-service ; deprecated elogind-service-type + gardenhostd-configuration + gardenhostd-service-type + %gdm-file-system gdm-file-system-service @@ -1641,6 +1645,33 @@ types (graphical, console, remote, etc.). It can also clean up after users when they log out." (service elogind-service-type config)) + +;;; +;;; Gardenhostd. +;;; + +(define-configuration/no-serialization gardenhostd-configuration + (gardenhostd + (package gardenhostd) + "The gardenhostd package to use.")) + +(define (gardenhostd-profile config) + (list (gardenhostd-configuration-gardenhostd config))) + +(define gardenhostd-service-type + (service-type + (name 'gardenhostd) + (extensions + (list + (service-extension dbus-root-service-type gardenhostd-profile) + (service-extension polkit-service-type gardenhostd-profile))) + (default-value (gardenhostd-configuration)) + (description "This service provides gardenhostd, a partial +implementation of the systemd-hostnamed daemon. It provides the +org.freedesktop.hostname1 D-Bus interface, which helps applications +like gnome-control-center retrieve and modify the system’s hostname, +as well as set a pretty hostname for display."))) + ;;; ;;; Fontconfig and other desktop file-systems.