Subject: [PATCH] gnu: guix-data-service: Update to 0.0.1-19.d12909d.
From: Christopher Baines <[email-masked]>
To: [email-masked]
Date: Sat, 21 Mar 2020 09:22:59 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

These changes support the guix-data-service-backup-database and
guix-data-service-create-small-backup scripts. These are shell scripts, so
require coreutils from the build environment at runtime as well as binaries
from postgresql, ephemeralpg and optionally util-linux (for ionice and
renice).

* gnu/packages/web.scm (guix-data-service): Update to 0.0.1-19.d12909d.
[arguments]: Add (ice-9 ftw) and (ice-9 match) to #:modules, change the
'install phase to wrap all bin files with the PATH at build time.
[inputs]: Add util-linux and include ephemeralpg from native-inputs.
[native-inputs]: Move ephemeralpg to inputs.
---
 gnu/packages/web.scm | 27 +++++++++++++++------------
 1 file changed, 15 insertions(+), 12 deletions(-)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 10cbf6165b..3bcc067b4c 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -4381,8 +4381,8 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
   (package-with-python2 python-feedparser))
 
 (define-public guix-data-service
-  (let ((commit "18eb9dfdcb3174bfd4bab5b9089acffa13aa1214")
-        (revision "18"))
+  (let ((commit "d12909d57282babfc55f1eef96bc478c17821c85")
+        (revision "19"))
     (package
       (name "guix-data-service")
       (version (string-append "0.0.1-" revision "." (string-take commit 7)))
@@ -4394,11 +4394,13 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
                 (file-name (git-file-name name version))
                 (sha256
                  (base32
-                  "0lb78cqzqaz0r4sspg272w2a3yhzhqah30j0kxf0z182b0qpmp37"))))
+                  "1zh6awrs2qgkrrz4d9212an1ggspmsadjdysgf215z5zkc25lpf7"))))
       (build-system gnu-build-system)
       (arguments
        '(#:modules ((guix build utils)
                     (guix build gnu-build-system)
+                    (ice-9 ftw)
+                    (ice-9 match)
                     (ice-9 rdelim)
                     (ice-9 popen))
          #:test-target "check-with-tmp-database"
@@ -4426,20 +4428,20 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
                                           "/site-ccache")))
                  (for-each
                   (lambda (file)
+                    (simple-format (current-error-port)
+                                   "wrapping: ~A\n"
+                                   (string-append bin "/" file))
                     (wrap-program (string-append bin "/" file)
                       `("PATH" ":" prefix
-                        (,bin))
+                        (,bin ,(getenv "PATH")))
                       `("GUILE_LOAD_PATH" ":" prefix
                         (,scm ,(getenv "GUILE_LOAD_PATH")))
                       `("GUILE_LOAD_COMPILED_PATH" ":" prefix
                         (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
-                  '("guix-data-service"
-                    "guix-data-service-process-branch-updated-email"
-                    "guix-data-service-process-branch-updated-mbox"
-                    "guix-data-service-process-job"
-                    "guix-data-service-process-jobs"
-                    "guix-data-service-manage-build-servers"
-                    "guix-data-service-query-build-servers"))
+                  (scandir bin
+                           (match-lambda
+                             ((or "." "..") #f)
+                             (_ #t))))
                  #t)))
            (delete 'strip))))           ; As the .go files aren't compatible
       (inputs
@@ -4448,13 +4450,14 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
          ("guile-json" ,guile3.0-json)
          ("guile-email" ,guile3.0-email)
          ("guile-squee" ,guile3.0-squee)
+         ("ephemeralpg" ,ephemeralpg)
+         ("util-linux" ,util-linux)
          ("postgresql" ,postgresql)
          ("sqitch" ,sqitch)))
       (native-inputs
        `(("guile" ,guile-3.0)
          ("autoconf" ,autoconf)
          ("automake" ,automake)
-         ("ephemeralpg" ,ephemeralpg)
          ("emacs-minimal" ,emacs-minimal)
          ("emacs-htmlize" ,emacs-htmlize)
          ("pkg-config" ,pkg-config)))
-- 
2.25.1