diff mbox series

[bug#69904,07/10] gnu: Add cl-easy-routes.

Message ID 08205512dd11fa2c19d91a7d9dcb9f09ff58e01f.1710883391.git.sharlatanus@gmail.com
State New
Headers show
Series gnu: Add cl-ciel. | expand

Commit Message

Sharlatan Hellseher March 19, 2024, 9:41 p.m. UTC
* gnu/packages/lisp-xyz.scm (cl-easy-routes, ecl-easy-routes,
sbcl-easy-routes): New variables.

Change-Id: Ic8d7413faf4b7e23775cc9c10b1b3da6494433d0
---
 gnu/packages/lisp-xyz.scm | 40 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

Comments

Guillaume Le Vaillant March 20, 2024, 1:11 p.m. UTC | #1
Sharlatan Hellseher <sharlatanus@gmail.com> skribis:

> +      (inputs
> +        (list sbcl-djula sbcl-hunchentoot sbcl-routes))

To get the support for djula, I suppose it will be necessary add an
'asd-systems' argument with 'easy-routes' and 'easy-routes+djula'
(maybe also adding 'eeasy-routes+errors' could be useful).
diff mbox series

Patch

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index a22aef345f..6c59dd915e 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -2986,6 +2986,46 @@  (define-public cl-eager-future2
 (define-public ecl-eager-future2
   (sbcl-package->ecl-package sbcl-eager-future2))
 
+(define-public sbcl-easy-routes
+  (let ((commit "7832f8bf3d07825b5eb967a2ef04da7c40c18248")
+        (revision "0"))
+    (package
+      (name "sbcl-easy-routes")
+      (version (git-version "0.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/mmontone/easy-routes")
+               (commit commit)))
+         (file-name (git-file-name "cl-easy-routes" version))
+         (sha256
+          (base32 "1banw54kz2llzb9h5sm47ckfc9l348m7qncm0npsy0w837rxkyzx"))))
+      (build-system asdf-build-system/sbcl)
+      (native-inputs (list sbcl-stefil))
+      (inputs
+        (list sbcl-djula sbcl-hunchentoot sbcl-routes))
+      (home-page "https://github.com/mmontone/easy-routes/")
+      (synopsis "Routes handling utility on top of Hunchentoot")
+      (description
+       "EASY-ROUTES is yet another routes handling system on top of Hunchentoot.  It's
+just glue code for Restas routing subsystem (CL-ROUTES).
+
+It supports:
+@itemize
+@item dispatch based on HTTP method
+@item arguments extraction from the url path
+@item decorators
+@item URL generation from route names
+@end itemize")
+      (license license:expat ))))
+
+(define-public cl-easy-routes
+  (sbcl-package->cl-source-package sbcl-easy-routes))
+
+(define-public ecl-easy-routes
+  (sbcl-package->ecl-package sbcl-easy-routes))
+
 (define-public sbcl-jpl-util
   (let ((commit "0311ed374e19a49d43318064d729fe3abd9a3b62"))
     (package