summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorFoo Chuan Wei <chuanwei.foo@hotmail.com>2021-11-15 08:22:37 +0000
committerGuillaume Le Vaillant <glv@posteo.net>2021-11-15 17:38:14 +0100
commitf50c9b45ad6bd22b06eba7b1ea5ba9c5edc3a2cc (patch)
treefd48e7053ee5c500dc006dbbe5d4e262143156b0 /gnu
parent8e18eb8cdf7a66cd447e7daaa14317f6a73ccbb0 (diff)
downloadguix-patches-f50c9b45ad6bd22b06eba7b1ea5ba9c5edc3a2cc.tar
guix-patches-f50c9b45ad6bd22b06eba7b1ea5ba9c5edc3a2cc.tar.gz
gnu: Add cl-chemboy.
* gnu/packages/lisp-xyz.scm (cl-chemboy, ecl-chemboy, sbcl-chemboy): New variables. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/lisp-xyz.scm48
1 files changed, 48 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index c53582d56a..151a5828db 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -18749,6 +18749,54 @@ could just install the chemical-compounds package.")
(define-public ecl-chemical-compounds
(sbcl-package->ecl-package sbcl-chemical-compounds))
+(define-public sbcl-chemboy
+ (package
+ (name "sbcl-chemboy")
+ (version "0.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://common-lisp.net/project/chemboy/chemboy-"
+ version ".tar.gz"))
+ (sha256
+ (base32 "0lr134l16mjcgdj3fm2yff4chlfbihn1sji7q80y7lnr176zgs7d"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ `(("chemical-compounds" ,sbcl-chemical-compounds)
+ ("periodic-table" ,sbcl-periodic-table)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-files
+ (lambda _
+ ;; Fix incorrect version number.
+ (substitute* "chemboy.asd"
+ ((":version \"0.2\"")
+ (string-append ":version \"" ,version "\"")))
+ ;; Remove incorrect declaration of string type.
+ (substitute* "query-parsing.lisp"
+ (("\\(declare \\(simple-base-string string\\)")
+ "(declare"))
+ ;; Fix incorrect function calls.
+ (substitute* "conversions.lisp"
+ (("\\(pprint-compound element s\\)")
+ "(pprint-compound element :stream s)")
+ (("\\(pprint-compound parsed-compound s\\)")
+ "(pprint-compound parsed-compound :stream s)")))))))
+ (home-page "https://common-lisp.net/project/chemboy/")
+ (synopsis "Common Lisp program for doing basic chemistry calculations")
+ (description
+ "Chemboy is a Common Lisp program for doing basic chemistry calculations.
+This package provides the text-based interface for Chemboy.")
+ (license license:llgpl)))
+
+(define-public cl-chemboy
+ (sbcl-package->cl-source-package sbcl-chemboy))
+
+(define-public ecl-chemboy
+ (sbcl-package->ecl-package sbcl-chemboy))
+
(define-public sbcl-cl-pass
(let ((commit "e58e97c0c0588dc742c061208afb9bc31e4dbd34")
(revision "1"))