(address . guix-patches@gnu.org)(name . Attila Lendvai)(address . attila@lendvai.name)
* gnu/packages/guile-xyz.scm (guile-srfi-189): New variable.
---
this is mimicing guile-srfi-180.
please note that there's quite an anomaly among the guile-srfi packages,
including which guile they depend on, and the use of native-inputs vs.
inputs. it may be worth cleaning that up for someone with a better
overview of what's going on here.
gnu/packages/guile-xyz.scm | 45 ++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)
Toggle diff (58 lines)
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index 74567830e6..6e46a8f376 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3173,6 +3173,51 @@ (define-public guile-srfi-180
API.")
(license license:expat))))
+(define-public guile-srfi-189
+ (let ((commit "a0e3786702956c9e510d92746474ac988c2010ec")
+ (revision "0"))
+ (package
+ (name "guile-srfi-189")
+ (version (git-version "0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ ;; This is a fork of:
+ ;; (url "https://github.com/scheme-requests-for-implementation/srfi-189")
+ ;; Upstream merge requested at:
+ ;; https://github.com/scheme-requests-for-implementation/srfi-189/pull/21
+ ;; TODO switch over to the official repo when the PR gets merged
+ (url "https://github.com/attila-lendvai-patches/srfi-189")
+ (commit commit)))
+ (sha256
+ (base32
+ "0iqv4sjwbp4k87r9l9abzbs5yjcljm69m91kb1ypb03b0rx7napy"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file "test-syntax.scm")
+ (delete-file "test.scm")))
+ (file-name (git-file-name name version))))
+ (build-system guile-build-system)
+ (arguments
+ '(#:not-compiled-file-regexp "srfi/189\\.scm$")) ; it's INCLUDE'd
+ (native-inputs
+ (list guile-3.0))
+ (propagated-inputs
+ (list guile-srfi-145))
+ (home-page "https://srfi.schemers.org/srfi-189/")
+ (synopsis "Scheme SRFI implementation of Maybe and Either")
+ (description
+ "This SRFI defines two disjoint immutable container types known as
+Maybe and Either, both of which can contain objects collectively known
+as their payload. A Maybe object is either a Just object or the unique
+object Nothing (which has no payload); an Either object is either a Right
+object or a Left object. Maybe represents the concept of optional values;
+Either represents the concept of values which are either correct (Right)
+or errors (Left).")
+ (license license:expat))))
+
(define-public emacsy
(package
(name "emacsy")
--
2.34.0