bug#68757: [PATCH v3 1/1] services: dns: Add unbound service

Message ID 87wmf1m28v.fsf@gnu.org
State New
Headers
Series bug#68757: [PATCH v3 1/1] services: dns: Add unbound service |

Commit Message

Ludovic Courtès Jan. 11, 2025, 10:09 p.m. UTC
  Hello,

soeren@soeren-tempel.net skribis:

> From: Sören Tempel <soeren@soeren-tempel.net>
>
> This allows using Unbound as a local DNSSEC-enabled resolver. This
> commit also allows configuration of the Unbound DNS resolver via a
> Scheme API. The API currently provides very common options and
> includes an escape hatch to enable less common configurations.
>
> * gnu/service/dns.scm (unbound-serialize-field): New procedure.
> * gnu/service/dns.scm (unbound-serialize-alist): New procedure.
> * gnu/service/dns.scm (unbound-serialize-section): New procedure.
> * gnu/service/dns.scm (unbound-serialize-string): New procedure.
> * gnu/service/dns.scm (unbound-serialize-boolean): New procedure.
> * gnu/service/dns.scm (unbound-serialize-list-of-strings): New procedure.
> * gnu/service/dns.scm (unbound-zone): New record.
> * gnu/service/dns.scm (unbound-serialize-unbound-zone): New procedure.
> * gnu/service/dns.scm (unbound-serialize-list-of-unbound-zone): New procedure.
> * gnu/service/dns.scm (unbound-remote): New record.
> * gnu/service/dns.scm (unbound-serialize-unbound-remote): New procedure.
> * gnu/service/dns.scm (unbound-server): New record.
> * gnu/service/dns.scm (unbound-serialize-unbound-server): New procedure.
> * gnu/service/dns.scm (unbound-configuration): New record.
> * gnu/service/dns.scm (unbound-config-file): New procedure.
> * gnu/service/dns.scm (unbound-shepherd-service): New procedure.
> * gnu/service/dns.scm (unbound-account-service): New constant.
> * gnu/service/dns.scm (unbound-service-type): New services.
> * gnu/tests/dns.scm: New file.
> * gnu/local.mk: Add new files.
> * doc/guix.texi: Add documentation.
>
> Signed-off-by: Sören Tempel <soeren@soeren-tempel.net>

Applied with the cosmetic changes below and tweaks to the commit log,
such as remove repetitions of the file name.

Thanks!

Ludo’.
  

Comments

Sören Tempel Jan. 12, 2025, 10:42 a.m. UTC | #1
Hi Ludo,

Thanks for applying the patchset and the fixes that you added on top.
However, it seems you committed the v3 of the patchset by accident,
instead of the v4. I forgot to CC you in the v4, so you probably didn't
see it (sorry for that!).

I created #75513 to re-add the small changes from the v4:

	https://debbugs.gnu.org/cgi/bugreport.cgi?bug=75513

Sorry for the inconvenience and thanks for your patience!

Greetings
Sören

Ludovic Courtès <ludo@gnu.org> wrote:
> Hello,
> 
> soeren@soeren-tempel.net skribis:
> 
> > From: Sören Tempel <soeren@soeren-tempel.net>
> >
> > This allows using Unbound as a local DNSSEC-enabled resolver. This
> > commit also allows configuration of the Unbound DNS resolver via a
> > Scheme API. The API currently provides very common options and
> > includes an escape hatch to enable less common configurations.
> >
> > * gnu/service/dns.scm (unbound-serialize-field): New procedure.
> > * gnu/service/dns.scm (unbound-serialize-alist): New procedure.
> > * gnu/service/dns.scm (unbound-serialize-section): New procedure.
> > * gnu/service/dns.scm (unbound-serialize-string): New procedure.
> > * gnu/service/dns.scm (unbound-serialize-boolean): New procedure.
> > * gnu/service/dns.scm (unbound-serialize-list-of-strings): New procedure.
> > * gnu/service/dns.scm (unbound-zone): New record.
> > * gnu/service/dns.scm (unbound-serialize-unbound-zone): New procedure.
> > * gnu/service/dns.scm (unbound-serialize-list-of-unbound-zone): New procedure.
> > * gnu/service/dns.scm (unbound-remote): New record.
> > * gnu/service/dns.scm (unbound-serialize-unbound-remote): New procedure.
> > * gnu/service/dns.scm (unbound-server): New record.
> > * gnu/service/dns.scm (unbound-serialize-unbound-server): New procedure.
> > * gnu/service/dns.scm (unbound-configuration): New record.
> > * gnu/service/dns.scm (unbound-config-file): New procedure.
> > * gnu/service/dns.scm (unbound-shepherd-service): New procedure.
> > * gnu/service/dns.scm (unbound-account-service): New constant.
> > * gnu/service/dns.scm (unbound-service-type): New services.
> > * gnu/tests/dns.scm: New file.
> > * gnu/local.mk: Add new files.
> > * doc/guix.texi: Add documentation.
> >
> > Signed-off-by: Sören Tempel <soeren@soeren-tempel.net>
> 
> Applied with the cosmetic changes below and tweaks to the commit log,
> such as remove repetitions of the file name.
> 
> Thanks!
> 
> Ludo’.
  

Patch

diff --git a/doc/guix.texi b/doc/guix.texi
index a9b548cd45..3a64fede2d 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -135,6 +135,7 @@ 
 Copyright @copyright{} 2024 Troy Figiel@*
 Copyright @copyright{} 2024 Sharlatan Hellseher@*
 Copyright @copyright{} 2024 45mg@*
+Copyright @copyright{} 2025 Sören Tempel@*
 
 Permission is granted to copy, distribute and/or modify this document
 under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -34303,8 +34304,9 @@  DNS Services
 @subsubheading Unbound Service
 
 @defvar unbound-service-type
-This is the type of the unbound service, whose value should be a
-@code{unbound-configuration} object as in this example:
+This is the type of the service to run @uref{https://www.unbound.net,
+Unbound}, a validating, recursive, and caching DNS resolver.  Its value
+must be a @code{unbound-configuration} object as in this example:
 
 @lisp
 (service unbound-service-type