[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#43494] [PATCH 1/4] gnu: Add guix-build-coordinator.
From: |
Christopher Baines |
Subject: |
[bug#43494] [PATCH 1/4] gnu: Add guix-build-coordinator. |
Date: |
Fri, 18 Sep 2020 19:40:39 +0100 |
* gnu/packages/package-management.scm (guix-build-coordinator): New variable.
---
gnu/packages/package-management.scm | 89 +++++++++++++++++++++++++++++
1 file changed, 89 insertions(+)
diff --git a/gnu/packages/package-management.scm
b/gnu/packages/package-management.scm
index ec87226197..4272d3134d 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -50,6 +50,7 @@
#:use-module (gnu packages cpio)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
+ #:use-module (gnu packages databases)
#:use-module (gnu packages dbm)
#:use-module (gnu packages docbook)
#:use-module (gnu packages file)
@@ -981,6 +982,94 @@ environments.")
;; and the fonts included in this package are licensed OFL1.1.
(license (list license:gpl3+ license:agpl3+ license:silofl1.1))))
+(define-public guix-build-coordinator
+ (let ((commit "5e8408c833e209efddfa0159114b90400c1aaf4d")
+ (revision "0"))
+ (package
+ (name "guix-build-coordinator")
+ (version (git-version "0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.cbaines.net/git/guix/build-coordinator")
+ (commit commit)))
+ (sha256
+ (base32
+ "0f7m1zg9mlb2m22qyblglaa36h8f49b810jc9j5b0hsb42ijwh4b"))
+ (file-name (string-append name "-" version "-checkout"))))
+ (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))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'set-GUILE_AUTO_COMPILE
+ (lambda _
+ ;; To avoid warnings relating to 'guild'.
+ (setenv "GUILE_AUTO_COMPILE" "0")
+ #t))
+ (add-after 'install 'wrap-executable
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (guile (assoc-ref inputs "guile"))
+ (guile-effective-version
+ (read-line
+ (open-pipe* OPEN_READ
+ (string-append guile "/bin/guile")
+ "-c" "(display (effective-version))")))
+ (scm (string-append out "/share/guile/site/"
+ guile-effective-version))
+ (go (string-append out "/lib/guile/"
+ guile-effective-version
+ "/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 ,(assoc-ref inputs "sqitch")))
+ `("PERL5LIB" ":" prefix
+ (,(getenv "PERL5LIB")))
+ `("GUILE_LOAD_PATH" ":" prefix
+ (,scm ,(getenv "GUILE_LOAD_PATH")))
+ `("GUILE_LOAD_COMPILED_PATH" ":" prefix
+ (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
+ (scandir bin
+ (match-lambda
+ ((or "." "..") #f)
+ (_ #t))))
+ #t)))
+ (delete 'strip)))) ; As the .go files aren't compatible
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("perl" ,perl)))
+ (inputs
+ `(("guile" ,guile-3.0-latest)
+ ("guile-fibers" ,guile-fibers)
+ ("guile-prometheus" ,guile-prometheus)
+ ("guile-gcrypt" ,guile-gcrypt)
+ ("guile-json" ,guile-json-3)
+ ("guile-lzlib" ,guile-lzlib)
+ ("guile-sqlite3" ,guile-sqlite3)
+ ("guix" ,guix)
+ ("sqlite" ,sqlite)
+ ("sqitch" ,sqitch)
+ ("perl-dbd-sqlite" ,perl-dbd-sqlite)))
+ (home-page "https://git.cbaines.net/guile/guix/build-coordinator")
+ (synopsis "")
+ (description
+ "")
+ (license license:gpl3+))))
+
(define-public guix-jupyter
(package
(name "guix-jupyter")
--
2.28.0