From 00613aca02a1c84e773a723d42bb57351c1fec33 Mon Sep 17 00:00:00 2001
From: "Andre A. Gomes" <andremegafone@gmail.com>
Date: Thu, 21 Sep 2023 23:48:27 +0300
Subject: [PATCH 2/2] gnu: sbcl-slime-swank: Update to 2.28-0.1e4b741.

* gnu/packages/lisp-xyz.scm (sbcl-slime-swank): Update to 2.28-0.1e4b741.
---
 gnu/packages/lisp-xyz.scm | 92 ++++++++++++++++++++-------------------
 1 file changed, 47 insertions(+), 45 deletions(-)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 752b777ed2..dc9abd7d31 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -3521,59 +3521,61 @@ (define-public ecl-pythonic-string-reader
   (sbcl-package->ecl-package sbcl-pythonic-string-reader))
 
 (define-public sbcl-slime-swank
-  (package
-    (name "sbcl-slime-swank")
-    (version "2.28")
-    (source
-     (origin
-       (file-name (git-file-name "cl-slime-swank" version))
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/slime/slime/")
-             (commit (string-append "v" version))))
-       (sha256
-        (base32 "1acmm4w1mv1qzpnkgc4wyiilbx8l0dk16sx8wv815ri5ks289rll"))
-       (modules '((guix build utils)))
+  (let ((commit "1e4b7417a1ade842ba4938f66445af68a93176b9")
+        (revision "0"))
+    (package
+      (name "sbcl-slime-swank")
+      (version (git-version "2.28" revision commit))
+      (source
+       (origin
+         (file-name (git-file-name "cl-slime-swank" version))
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/slime/slime/")
+               (commit commit)))
+         (sha256
+          (base32 "17fs4wjplcxwbgsqzawwnw45xw6rdyyqk3f7dqck7pfazpzziizp"))
+         (modules '((guix build utils)))
          (snippet
           ;; The doc folder drags `gawk' into the closure.  Doc is already
           ;; provided by emacs-slime.
           `(begin
              (delete-file-recursively "doc")
              #t))))
-    (build-system asdf-build-system/sbcl)
-    (arguments
-     '(#:asd-systems '("swank")
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'set-fasl-directory
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let* ((out (assoc-ref outputs "out"))
-                    (lib-dir (string-append out "/lib/common-lisp/"
-                                            (%lisp-type)
-                                            "/slime-swank/")))
-               ;; Use the ASDF registry instead of Swank's default that places
-               ;; the .fasl files in ~/.slime.
-               (substitute* "swank.asd"
-                 (("\\(load \\(asdf::component-pathname f\\)\\)" all)
-                  (string-append
-                   all "\n"
-                   "(setf (symbol-value"
-                   "(read-from-string \"swank-loader::*fasl-directory*\"))"
-                   "\"" lib-dir "\")")))
-               (substitute* "swank-loader.lisp"
-                 (("\\(probe-file fasl\\)" all)
-                  ;; Do not try to delete Guix store files.
-                  (string-append
-                   all "\n"
-                   " (not (equal (subseq (pathname-directory fasl) 1 3)"
-                   " '(\"gnu\" \"store\"))) ; XXX: GUIX PATCH")))))))))
-    (home-page "https://github.com/slime/slime")
-    (synopsis "Common Lisp Swank server")
-    (description
-     "This is only useful if you want to start a Swank server in a Lisp
+      (build-system asdf-build-system/sbcl)
+      (arguments
+       '(#:asd-systems '("swank" "swank/exts")
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'set-fasl-directory
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let* ((out (assoc-ref outputs "out"))
+                      (lib-dir (string-append out "/lib/common-lisp/"
+                                              (%lisp-type)
+                                              "/slime-swank/")))
+                 ;; Use the ASDF registry instead of Swank's default that places
+                 ;; the .fasl files in ~/.slime.
+                 (substitute* "swank.asd"
+                   (("\\(load \\(asdf::component-pathname f\\)\\)" all)
+                    (string-append
+                     all "\n"
+                     "(setf (symbol-value"
+                     "(read-from-string \"swank-loader::*fasl-directory*\"))"
+                     "\"" lib-dir "\")")))
+                 (substitute* "swank-loader.lisp"
+                   (("\\(probe-file fasl\\)" all)
+                    ;; Do not try to delete Guix store files.
+                    (string-append
+                     all "\n"
+                     " (not (equal (subseq (pathname-directory fasl) 1 3)"
+                     " '(\"gnu\" \"store\"))) ; XXX: GUIX PATCH")))))))))
+      (home-page "https://github.com/slime/slime")
+      (synopsis "Common Lisp Swank server")
+      (description
+       "This is only useful if you want to start a Swank server in a Lisp
 processes that doesn't run under Emacs.  Lisp processes created by
 @command{M-x slime} automatically start the server.")
-    (license (list license:gpl2+ license:public-domain))))
+      (license (list license:gpl2+ license:public-domain)))))
 
 (define-public cl-slime-swank
   (let ((pkg (sbcl-package->cl-source-package sbcl-slime-swank)))
-- 
2.41.0

