summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2021-11-16 10:51:39 +0100
committerPierre Neidhardt <mail@ambrevar.xyz>2021-11-16 12:51:45 +0100
commitf1dd3279962b430c21fd145f059dea938030ff74 (patch)
tree4a20c9c53f1c7f4d8d72d4d2ad8b542b02a5cfdd
parent3ddfe4c1a0b9d7bc3f65c2345360d533e81d0c2a (diff)
downloadguix-patches-f1dd3279962b430c21fd145f059dea938030ff74.tar
guix-patches-f1dd3279962b430c21fd145f059dea938030ff74.tar.gz
gnu: Add fxml.
* gnu/packages/lisp-xyz.scm (cl-fxml, sbcl-fxml): New variables.
-rw-r--r--gnu/packages/lisp-xyz.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 528579afe2..435975b127 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -19158,3 +19158,53 @@ Version 1.0.")
;; supported.
(define-public cl-xpath
(sbcl-package->cl-source-package sbcl-xpath))
+
+(define-public sbcl-fxml
+ ;; No release.
+ (let ((commit "a0e73bb48ef03adea94a55986cc27f522074c8e1"))
+ (package
+ (name "sbcl-fxml")
+ (version (git-version "0.0.0" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ruricolist/fxml/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1vxdb1cjjqi986f72bggnw1s4yzv12g4li7vn4y49b6lphshr8lm"))))
+ (build-system asdf-build-system/sbcl)
+ (inputs
+ `(("babel" ,sbcl-babel)
+ ("named-readtables" ,sbcl-named-readtables)
+ ("serapeum" ,sbcl-serapeum)
+ ("quri" ,sbcl-quri)
+ ("flexi-streams" ,sbcl-flexi-streams)
+ ("split-sequence" ,sbcl-split-sequence)
+ ("alexandria" ,sbcl-alexandria)
+ ("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
+ (native-inputs
+ `(("fiveam" ,sbcl-fiveam)
+ ("cxml" ,sbcl-cxml)
+ ("cxml-rng" ,sbcl-cxml-rng)
+ ("xpath" ,sbcl-xpath)))
+ (home-page "https://github.com/ruricolist/fxml")
+ (synopsis "XML parser and serializer in Common Lisp")
+ (description
+ "FXML is a secure-by-default, error-recovering XML parser and serializer.
+It is a fork of CXML.
+
+You should use FXML instead of CXML if:
+@itemize
+@item You are parsing potentially ill-formed XML.
+@item You are parsing potentially malicious XML.
+@item You need to use Klacks with namespaces.
+@end itemize
+
+FXML’s API is very close to CXML's, and for the most part you can refer to the
+CXML documentation for usage.")
+ (license license:llgpl))))
+
+(define-public cl-fxml
+ (sbcl-package->cl-source-package sbcl-fxml))