Subject: [PATCH 1/1] gnu: openresolv: Update to 3.13.2.

From: Sergey Trofimov <[email-masked]>
Date: Fri, 24 May 2024 08:50:22 +0200

* gnu/packages/dns.scm (openresolv): Update to 3.13.2.
* gnu/packages/patches/openresolv-restartcmd-guix.patch: Adjust.
---
 gnu/packages/dns.scm                          | 60 ++++++++++---------
 .../patches/openresolv-restartcmd-guix.patch  | 12 ++--
 2 files changed, 39 insertions(+), 33 deletions(-)

diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 36d3eb8b7e..e29a376d66 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -1228,35 +1228,41 @@ (define-public maradns
 (define-public openresolv
   (package
     (name "openresolv")
-    (version "3.12.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "https://roy.marples.name/downloads/openresolv/"
-                                  "openresolv-" version ".tar.xz"))
-              (sha256
-               (base32
-                "15qvp5va2yrqpz0ba54clvn8cbc66v4sl7k3bi9ji8jpx040bcs2"))
-              (patches
-               (search-patches "openresolv-restartcmd-guix.patch"))))
+    (version "3.13.2")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/NetworkConfiguration/openresolv")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "03m8n0j0kxxm5kpl66gz4lxr1qqgrp8zlkaq9j8fz27fih0g75xf"))
+       (patches
+        (search-patches "openresolv-restartcmd-guix.patch"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f                      ; No test suite
-       #:configure-flags
-       (list (string-append "--sysconfdir=/etc"))
-       #:make-flags
-       (list (string-append "SYSCONFDIR=/" (assoc-ref %outputs "out") "/etc"))
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'install 'wrap-program
-           (lambda* (#:key inputs outputs #:allow-other-keys)
-             (let ((out (assoc-ref outputs "out"))
-                   (coreutils (assoc-ref inputs "coreutils-minimal")))
-               (substitute* (string-append out "/sbin/resolvconf")
-                 (("RESOLVCONF=\"\\$0\"")
-                  (format #f "\
-RESOLVCONF=\"$0\"
-PATH=~a/bin:$PATH"
-                          coreutils)))))))))
+     (list #:tests? #f                  ; No test suite
+
+           #:configure-flags
+           #~(list (string-append "--prefix=" #$output:out)
+                   "--sysconfdir=/etc"
+                   "--rundir=/run")
+
+           #:phases
+           #~(modify-phases %standard-phases
+               (replace 'install
+                 (lambda* (#:key make-flags #:allow-other-keys)
+                   (apply invoke "make" "install"
+                          (string-append "SYSCONFDIR=" #$output "/etc")
+                          make-flags)))
+               (add-after 'install 'wrap-program
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* (string-append #$output "/sbin/resolvconf")
+                     (("RESOLVCONF=\"\\$0\"")
+                      (format #f "RESOLVCONF=\"$0\"\nPATH=~a/bin:$PATH"
+                              (assoc-ref inputs "coreutils-minimal")))))))))
     (inputs
      (list coreutils-minimal))
     (home-page "https://roy.marples.name/projects/openresolv/")
diff --git a/gnu/packages/patches/openresolv-restartcmd-guix.patch b/gnu/packages/patches/openresolv-restartcmd-guix.patch
index ad70ebd6f2..29a91fe595 100644
--- a/gnu/packages/patches/openresolv-restartcmd-guix.patch
+++ b/gnu/packages/patches/openresolv-restartcmd-guix.patch
@@ -1,4 +1,4 @@
-From 7f0ce36828ec1e130bee857b8236ca091e4d8a2c Mon Sep 17 00:00:00 2001
+From 439266671bbd790b3cb339c157c87db382e85c96 Mon Sep 17 00:00:00 2001
 From: Brice Waegeneire <[email-masked]>
 Date: Sat, 9 May 2020 15:52:06 +0200
 Subject: [PATCH] Add RESTARTCMD for Guix System.
@@ -12,13 +12,13 @@ to do it on Guix System by using shepherd.
  1 file changed, 7 insertions(+)
 
 diff --git a/resolvconf.in b/resolvconf.in
-index 3cad04d..5ef5294 100644
+index aa77ffe..921882e 100644
 --- a/resolvconf.in
 +++ b/resolvconf.in
-@@ -369,6 +369,13 @@ detect_init()
- 			then
- 				/etc/rc.d/$1 restart
+@@ -375,6 +375,13 @@ detect_init()
  			fi'
+ 	elif [ -d /etc/dinit.d ] && command -v dinitctl >/dev/null 2>&1; then
+ 		RESTARTCMD='dinitctl --quiet restart --ignore-unstarted $1'
 +	elif [ -e /gnu/store ] && [ -e /run/current-system/profile ]; then
 +		# Guix System
 +		RESTARTCMD='
@@ -30,5 +30,5 @@ index 3cad04d..5ef5294 100644
  		for x in /etc/init.d/rc.d /etc/rc.d /etc/init.d; do
  			[ -d $x ] || continue
 -- 
-2.26.0
+2.41.0
 
-- 
2.41.0