summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/ruby.scm37
1 files changed, 36 insertions, 1 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 9547481caf..1f5a966dff 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -32,7 +32,7 @@
;;; Copyright © 2022-2024 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
-;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2023, 2024 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023, 2024 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -7152,6 +7152,41 @@ accessories")
(home-page "https://github.com/prawnpdf/prawn-manual_builder")
(license %prawn-project-licenses)))
+(define-public ruby-prism
+ (package
+ (name "ruby-prism")
+ (version "0.30.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ruby/prism")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "13izycs2i2rxg22r75n70q25q308g4aga9vza529g7pk0f0zl2xm"))
+ (modules '((guix build utils)))))
+ (build-system ruby-build-system)
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'build 'compile
+ (lambda _
+ (setenv "CC"
+ #$(cc-for-target))
+ (invoke "rake" "compile"))))))
+ (native-inputs (list ruby-rake-compiler ruby-ffi))
+ (synopsis "Parser for the Ruby programming language")
+ (description
+ "Prism is a parser for the Ruby programming language. It is designed
+to be portable, error tolerant, and maintainable. It is written in
+C99 and has no dependencies.")
+ ;; Some tests fail on i686-linux and armhf-linux.
+ (supported-systems '("x86_64-linux" "aarch64-linux" "riscv64-linux"
+ "powerpc64le-linux"))
+ (home-page "https://ruby.github.io/prism/")
+ (license license:expat)))
+
(define-public ruby-progress_bar
(package
(name "ruby-progress_bar")