diff mbox series

[bug#40162] gnu: guix-data-service: Update to 0.0.1-19.d12909d.

Message ID 20200321092259.2729-1-mail@cbaines.net
State Accepted
Headers show
Series [bug#40162] gnu: guix-data-service: Update to 0.0.1-19.d12909d. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job

Commit Message

Christopher Baines March 21, 2020, 9:22 a.m. UTC
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(-)

Comments

Ludovic Courtès March 21, 2020, 9:50 p.m. UTC | #1
Hi!

Christopher Baines <mail@cbaines.net> skribis:

> 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.

[...]

>                    (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")))

If I’m not mistaken, this would keep references to GCC, etc.

What about explicitly listing the things that you list above?

Thanks,
Ludo’.
Christopher Baines March 26, 2020, 9:28 p.m. UTC | #2
Ludovic Courtès <ludo@gnu.org> writes:

> Hi!
>
> Christopher Baines <mail@cbaines.net> skribis:
>
>> 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.
>
> [...]
>
>>                    (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")))
>
> If I’m not mistaken, this would keep references to GCC, etc.
>
> What about explicitly listing the things that you list above?

Indeed, I've sent another patch which explicitly lists some inputs.
diff mbox series

Patch

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)))