summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2024-06-07 12:24:06 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-07-03 22:23:22 +0100
commit190762728990801f40eb55e1cfd4b0f59cc836ee (patch)
tree6e670423de5c7d2fcee8c048092cb8f8c1ebf3b3
parent79e27e822f094a086ff3f2701b5b4abcc6e09cc2 (diff)
gnu: Add go-github-com-d5-tengo-v2.
* gnu/packages/golang-xyz.scm (go-github-com-d5-tengo-v2): New variable. Change-Id: I714223a90deb696320c57f0281a8787e1cb6c2c4
-rw-r--r--gnu/packages/golang-xyz.scm43
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index 5cbe8b83fd..d3afae5441 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -1157,6 +1157,49 @@ metrics to Graphite.")
structs in the Go programming language.")
(license license:expat)))
+(define-public go-github-com-d5-tengo-v2
+ (package
+ (name "go-github-com-d5-tengo-v2")
+ (version "2.17.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/d5/tengo")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "12h7fg2hj9s64hzsv5mz0pl9q1hf1lw3b5k9fr40nfqlq1bw84da"))))
+ (build-system go-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ (list
+ #:import-path "github.com/d5/tengo/v2"
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda* (#:key import-path outputs #:allow-other-keys)
+ (with-directory-excursion (string-append "src/" import-path)
+ (let* ((data (string-append #$output:doc "/share"))
+ (doc (string-append data "/doc/" #$name "-" #$version)))
+ (copy-recursively "docs/" doc))))))))
+ (home-page "https://github.com/d5/tengo")
+ (synopsis "Script language for Go")
+ (description
+ "Tengo is a small, dynamic, fast, secure script language for Go.
+Features:
+@itemize
+@item simple and highly readable syntax
+@item dynamic typing with type coercion
+@item higher-order functions and closures
+@item immutable values
+@item securely embeddable and extensible
+@item compiler/runtime written in native Go (no external deps or cgo)
+@item executable as a standalone language/REPL
+@item use cases: rules engine, state machine, data pipeline, transpiler
+@end itemize")
+ (license license:expat)))
+
(define-public go-github-com-danwakefield-fnmatch
(let ((commit "cbb64ac3d964b81592e64f957ad53df015803288")
(revision "0"))