From 8509e977b472fe18bbb82c57aab6c026740a4a78 Mon Sep 17 00:00:00 2001 From: Yovan Naumovski via Guix-patches via Date: Thu, 11 May 2023 23:29:53 +0300 Subject: gnu: Add ruby-immutable-struct. * gnu/packages/ruby.scm (ruby-immutable-struct): New variable. --- gnu/packages/ruby.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 2d428796f4..f8b68ada89 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -7636,6 +7636,39 @@ of terminal output.") ;; There is no mention of the "or later" clause. (license license:gpl2))) +(define-public ruby-immutable-struct + (package + (name "ruby-immutable-struct") + (version "2.4.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stitchfix/immutable-struct") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17hlmy9jfwn3i5h2rwv832ycwcdqwxq7dkkd2yly28klwj0l52rq")))) + (build-system ruby-build-system) + (arguments + (list + ;; Issues with the lack of Set in Ruby 3 + #:ruby ruby-2.7 + #:phases + #~(modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "ruby" (which "rspec")))))))) + (native-inputs + (list ruby-rspec)) + (synopsis "Ruby library for creating immutable struct classes") + (description + "Easily create value objects without the pain of Ruby's Struct (or its setters)") + (home-page "https://stitchfix.github.io/immutable-struct/") + (license license:expat))) + (define-public ruby-terraform (package (name "ruby-terraform") -- cgit v1.2.3