summary refs log tree commit diff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2018-10-10 15:07:01 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2018-10-19 17:56:38 +0200
commit24fd7586a4d0ce7f61887fbc9341c6fcb72310a6 (patch)
tree22cba1aca18578f554b8c35d0168e6c7844df27d
parentc80dfee9f18aaba422ba0ad45aa3aeb17b789fa1 (diff)
downloadguix-24fd7586a4d0ce7f61887fbc9341c6fcb72310a6.tar.gz
gnu: Add sbcl-cl-webkit.
* gnu/packages/lisp.scm (sbcl-cl-webkit): New variable.
-rw-r--r--gnu/packages/lisp.scm41
1 files changed, 41 insertions, 0 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 68927971b5..8e201f3b13 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -64,6 +64,7 @@
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages webkit)
   #:use-module (ice-9 match)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-19))
@@ -3443,3 +3444,43 @@ is a library for creating graphical user interfaces.")
        ;; TODO: Tests fail with memory fault.
        ;; See https://github.com/Ferada/cl-cffi-gtk/issues/24.
        #:tests? #f))))
+
+(define-public sbcl-cl-webkit
+  (let ((commit "cd2a9008e0c152e54755e8a7f07b050fe36bab31"))
+    (package
+      (name "sbcl-cl-webkit")
+      (version (git-version "2.4" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/atlas-engineer/cl-webkit")
+               (commit commit)))
+         (file-name (git-file-name "cl-webkit" version))
+         (sha256
+          (base32
+           "0f5lyn9i7xrn3g1bddga377mcbawkbxydijpg389q4n04gqj0vwf"))))
+      (build-system asdf-build-system/sbcl)
+      (inputs
+       `(("cffi" ,sbcl-cffi)
+         ("cl-cffi-gtk" ,sbcl-cl-cffi-gtk)
+         ("webkitgtk" ,webkitgtk)))
+      (arguments
+       `(#:asd-file "webkit2/cl-webkit2.asd"
+         #:asd-system-name "cl-webkit2"
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'fix-paths
+             (lambda* (#:key inputs #:allow-other-keys)
+               (substitute* "webkit2/webkit2.init.lisp"
+                 (("libwebkit2gtk" all)
+                  (string-append
+                   (assoc-ref inputs "webkitgtk") "/lib/" all))))))))
+      (home-page "https://github.com/atlas-engineer/cl-webkit")
+      (synopsis "Binding to WebKitGTK+ for Common Lisp")
+      (description
+       "@command{cl-webkit} is a binding to WebKitGTK+ for Common Lisp,
+currently targeting WebKit version 2.  The WebKitGTK+ library adds web
+browsing capabilities to an application, leveraging the full power of the
+WebKit browsing engine.")
+      (license license:expat))))