summary refs log tree commit diff
path: root/gnu/packages/ruby.scm
diff options
context:
space:
mode:
authorStephen Paul Weber <singpolyma@singpolyma.net>2022-05-10 08:57:15 -0400
committerRaghav Gururajan <rg@raghavgururajan.name>2022-05-10 09:56:10 -0400
commit956ca540dc8d2e2fc10f0202cd78ecba5edd21f0 (patch)
tree8b7a3eb13ce4076ce1a0072d397363ccd3e3641e /gnu/packages/ruby.scm
parent000a620d17965cf7b6fd22c2387c5db477f5e8db (diff)
downloadguix-956ca540dc8d2e2fc10f0202cd78ecba5edd21f0.tar.gz
gnu: Add ruby-citrus.
* gnu/packages/ruby.scm (ruby-citrus): New variable.

Signed-off-by: Raghav Gururajan <rg@raghavgururajan.name>
Diffstat (limited to 'gnu/packages/ruby.scm')
-rw-r--r--gnu/packages/ruby.scm22
1 files changed, 22 insertions, 0 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index ff05f63662..ffc7ad3bec 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -12420,3 +12420,25 @@ code")
     (description "LazyObject is an object wrapper that forwards all calls to the
 reference object.  This object is not created until the first method dispatch.")
     (license license:expat)))
+
+(define-public ruby-citrus
+  (package
+    (name "ruby-citrus")
+    (version "3.0.2")
+    (source
+     (origin
+       (method git-fetch)
+       ;; Download from GitHub because the rubygems version does not contain
+       ;; files needed for tests.
+       (uri (git-reference
+             (url "https://github.com/mjackson/citrus")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "197wrgqrddgm1xs3yvjvd8vkvil4h4mdrcp16jmd4b57rxrrr769"))))
+    (build-system ruby-build-system)
+    (home-page "http://mjackson.github.io/citrus/")
+    (synopsis "Parsing Expressions for Ruby")
+    (description "Citrus is a parsing library for Ruby that combines the
+expressiveness of the language with the parsing expressions.")
+    (license license:expat)))