about summary refs log tree commit diff
path: root/guix.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix.scm')
-rw-r--r--guix.scm71
1 files changed, 71 insertions, 0 deletions
diff --git a/guix.scm b/guix.scm
new file mode 100644
index 0000000..4417452
--- /dev/null
+++ b/guix.scm
@@ -0,0 +1,71 @@
+;; To use this file to build HEAD of gn-guile:
+;;
+;;   guix build -f guix.scm
+;;
+;; To get a development container
+;;
+;;   guix shell -C -D -f guix.scm
+;;
+
+(use-modules
+ ((guix licenses) #:prefix license:)
+ (guix gexp)
+ (guix packages)
+ (guix git-download)
+ (guix build-system guile)
+ (gnu packages algebra)
+ (gnu packages base)
+ (gnu packages bash)
+ (gnu packages compression)
+ (gnu packages bioinformatics)
+ (gnu packages build-tools)
+ (gnu packages certs)
+ (gnu packages curl)
+ (gnu packages gcc)
+ (gnu packages guile)
+ (gnu packages guile-xyz)
+ (gnu packages llvm)
+ (gnu packages ninja)
+ (gnu packages parallel)
+ (gnu packages perl)
+ (gnu packages perl6)
+ (gnu packages pkg-config)
+ (gnu packages python)
+ (gnu packages tls)
+ (srfi srfi-1)
+ (ice-9 popen)
+ (ice-9 rdelim))
+
+(define %source-dir (dirname (current-filename)))
+
+(define %git-commit
+    (read-string (open-pipe "git show HEAD | head -1 | cut -d ' ' -f 2" OPEN_READ)))
+
+(define-public gn-guile-git
+  (package
+    (name "gn-guile-git")
+    (version (git-version "4.0.0-" "HEAD" %git-commit))
+    (source (local-file %source-dir #:recursive? #t))
+    (build-system guile-build-system)
+
+     (inputs
+      (list guile-3.0-latest bash-minimal perl
+            guile-dbi guile-dbd-mysql guile-fibers guile-gnutls guile-readline guile-redis openssl nss-certs gemma parallel))
+     (propagated-inputs
+      (list guile-json-4))
+
+#!
+     (arguments
+      `(#:compile-flags '("--r6rs" "-Wunbound-variable" "-Warity-mismatch")
+        #:modules ((guix build guile-build-system)
+                   (guix build utils)
+                   (srfi srfi-26)
+                   (ice-9 ftw)
+                   (json))))
+!#
+     (home-page "https://git.genenetwork.com/gn-guile")
+     (synopsis "Next generation GN code in guile")
+     (description "Use of guile.")
+     (license license:gpl3)))
+
+gn-guile-git