[bug#75513] services: dns: Minor cleanup of unbound service.

Message ID 43ab6f06ad9f41a32d1cd911f9efbbc29a9a5db0.1736678353.git.soeren@soeren-tempel.net
State New
Headers
Series [bug#75513] services: dns: Minor cleanup of unbound service. |

Commit Message

Sören Tempel Jan. 12, 2025, 10:39 a.m. UTC
  From: Sören Tempel <soeren@soeren-tempel.net>

In #68757, v3 instead of v4 of the patchset was committed by accident.
This patch revives the (minor) changes made in the v4.

* gnu/service/dns.scm: Remove exports of no longer existing names.
(unbound-service-type): Fix typo/capitalization (unbound -> Unbound).
(unbound-shepherd-service): Run after user processes.
(unbound-account-service): Determine shell based on shadow package.
---
 gnu/services/dns.scm | 23 +++++++++--------------
 1 file changed, 9 insertions(+), 14 deletions(-)


base-commit: 5d6c8767f67885bc9b2c8f18ab1f667d0065346b
  

Comments

Sören Tempel Jan. 13, 2025, 6:14 p.m. UTC | #1
Sorry, I messed up and accidentally send the v2 to patches@, hence
this is superseded.  See: https://issues.guix.gnu.org/75533
  

Patch

diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm
index c74001fac29..9fd3bebd496 100644
--- a/gnu/services/dns.scm
+++ b/gnu/services/dns.scm
@@ -56,18 +56,11 @@  (define-module (gnu services dns)
             dnsmasq-configuration
 
             unbound-service-type
-            unbound-zone
-            unbound-server
             unbound-configuration
-            unbound-configuration?
-            unbound-configuration-server
-            unbound-configuration-remote-control
-            unbound-configuration-forward-zone
-            unbound-configuration-stub-zone
-            unbound-configuration-auth-zone
-            unbound-configuration-view
-            unbound-configuration-python
-            unbound-configuration-dynlib))
+            unbound-configuration
+            unbound-server
+            unbound-zone
+            unbound-remote))
 
 ;;;
 ;;; Knot DNS.
@@ -1065,7 +1058,9 @@  (define (unbound-shepherd-service config)
     (list (shepherd-service
             (documentation "Unbound daemon.")
             (provision '(unbound dns))
-            (requirement '(networking))
+            ;; unbound may be bound to a particular IP address, hence
+            ;; only start it after the networking service has started.
+            (requirement '(user-processes networking))
             (actions (list (shepherd-configuration-action config-file)))
             (start #~(make-forkexec-constructor
                        (list (string-append #$unbound "/sbin/unbound")
@@ -1080,11 +1075,11 @@  (define unbound-account-service
          (system? #t)
          (comment "Unbound daemon user")
          (home-directory "/var/empty")
-         (shell "/run/current-system/profile/sbin/nologin"))))
+         (shell (file-append shadow "/sbin/nologin")))))
 
 (define unbound-service-type
   (service-type (name 'unbound)
-                (description "Run the unbound DNS resolver.")
+                (description "Run the Unbound DNS resolver.")
                 (extensions
                   (list (service-extension account-service-type
                                            (const unbound-account-service))