[PATCH] gnu: cl-3bmd: Update to 4e08d82.

DoneSubmitted by jgart.
Details
2 participants
  • Guillaume Le Vaillant
  • jgart
Owner
unassigned
Severity
normal
J
(address . guix-patches@gnu.org)(name . jgart)(address . jgart@dismail.de)
20220314213548.22887-1-jgart@dismail.de
* gnu/packages/lisp-xyz.scm (cl-3bmd): Update to 4e08d82.
[inputs]: Add python, python-pygments, sbcl-fiasco, and use newer inputs
guix style.
[arguments]: Patch python executable and fill in asd-files and
test-asd-file keywords.
---
gnu/packages/lisp-xyz.scm | 37 ++++++++++++++++++++++++++++---------
1 file changed, 28 insertions(+), 9 deletions(-)

Toggle diff (64 lines)
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index d72d84d225..f52c37543d 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -1819,8 +1819,8 @@ (define-public ecl-colorize
   (sbcl-package->ecl-package sbcl-colorize))
 
 (define-public sbcl-3bmd
-  (let ((commit "6fc5759448f6f6df6f6df556e020a289a2643288")
-        (revision "2"))
+  (let ((commit "4e08d82d7c8fb1b8fc708c87f4d9d13a1ab490cb")
+        (revision "3"))
     (package
       (name "sbcl-3bmd")
       (version (git-version "0.0.0" revision commit))
@@ -1831,7 +1831,7 @@ (define-public sbcl-3bmd
                (url "https://github.com/3b/3bmd")
                (commit commit)))
          (sha256
-          (base32 "1avmbp8xdjlbqpqk7p3vmj7abiw5p3vb5mrxp4wlvgql4sf6z3p4"))
+          (base32 "1j885ykg2yds0l7dmw21lrhs7pd66lf541pf9lb677nkhc2f62jz"))
          (file-name (git-file-name "3bmd" version))))
       (build-system asdf-build-system/sbcl)
       (arguments
@@ -1842,12 +1842,31 @@ (define-public sbcl-3bmd
            "3bmd-ext-tables"
            "3bmd-ext-wiki-links"
            "3bmd-youtube"
-           "3bmd-ext-code-blocks")))
-      (inputs
-       `(("alexandria" ,sbcl-alexandria)
-         ("colorize" ,sbcl-colorize)
-         ("esrap" ,sbcl-esrap)
-         ("split-sequence" ,sbcl-split-sequence)))
+           "3bmd-ext-code-blocks")
+         #:asd-files
+         '("3bmd.asd"
+           "3bmd-youtube.asd"
+           "3bmd-ext-math.asd"
+           "3bmd-ext-tables.asd"
+           "3bmd-youtube-tests.asd"
+           "3bmd-ext-wiki-links.asd"
+           "3bmd-ext-code-blocks.asd"
+           "3bmd-ext-definition-lists.asd")
+        #:test-asd-file "3bmd-youtube-tests.asd"
+        #:phases
+        (modify-phases %standard-phases
+          (add-after 'unpack 'patch-python3-executable
+            (lambda _
+              (substitute* "code-blocks.lisp"
+                (("python3") (which "python3"))))))))
+     (inputs
+       (list python
+             python-pygments
+             sbcl-alexandria
+             sbcl-colorize
+             sbcl-split-sequence
+             sbcl-esrap
+             sbcl-fiasco))
       (home-page "https://github.com/3b/3bmd")
       (synopsis "Markdown processor in Command Lisp using esrap parser")
       (description
-- 
2.35.1
G
G
Guillaume Le Vaillant wrote on 17 Mar 10:04 +0100
(name . jgart)(address . jgart@dismail.de)(address . 54392-done@debbugs.gnu.org)
875yod2bax.fsf@kitej
Patch pushed as a7b40dff2f03b070f848cd30833965541aa9bf7c with some
modifications.
By default asdf-build-system reads all the ".asd" files, so you don't
have to specify the 'asd-files' or 'test-asd-file' parameters, unless
there is a build failure with the default behavior (e.g. when there is
a ".asd" file that must not be read, or if they must be read is
a specific order).
I also moved sbcl-fiasco fo 'native-inputs' as it is used only for
testing.
Thanks.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYjL7Rg8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j+HWgD/VBMooH5Vmq2kAHkQ3JfksJj4hj+1UfhcgTr1
IVz42/kA/ib28acEtVFfK1+v1c46D1r5r67dtgjNHJNZGesqnip8
=itW0
-----END PGP SIGNATURE-----

Closed
J
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(address . 54392-done@debbugs.gnu.org)
20220317105754.GB1986@gac.attlocal.net
On Thu, 17 Mar 2022 09:04:08 +0000 Guillaume Le Vaillant <glv@posteo.net> wrote:
Toggle quote (10 lines)
> Patch pushed as a7b40dff2f03b070f848cd30833965541aa9bf7c with some
> modifications.
> By default asdf-build-system reads all the ".asd" files, so you don't
> have to specify the 'asd-files' or 'test-asd-file' parameters, unless
> there is a build failure with the default behavior (e.g. when there is
> a ".asd" file that must not be read, or if they must be read is
> a specific order).
> I also moved sbcl-fiasco fo 'native-inputs' as it is used only for
> testing.

Hi Guillaume,

Thanks for the review and merge and thanks for clarifying that for me
with the asdf-build-system.

PS

I've been trying to package mondo, a nice CL repl. Here's a discussion about
it with fukumachi:


I have a branch here for mondo here:


I was trying to use the build-program function to produce the CLI executable but
no luck yet.

I'd like to send it to upstream but I'm a bit stuck. Do you happen to know
what I might be missing?

Any help/advice is much appreciated.

all best,

jgart
Closed
G
G
Guillaume Le Vaillant wrote on 18 Mar 10:23 +0100
(name . jgart)(address . jgart@dismail.de)(address . 54392-done@debbugs.gnu.org)
87a6dnwq4z.fsf@kitej
jgart <jgart@dismail.de> skribis:

Toggle quote (21 lines)
> I've been trying to package mondo, a nice CL repl. Here's a discussion about
> it with fukumachi:
>
> https://github.com/fukamachi/mondo/issues/5
>
> I have a branch here for mondo here:
>
> https://git.sr.ht/~whereiseveryone/guixrus/tree/mondo/item/guixrus/packages/lisp.scm#L1226
>
> I was trying to use the build-program function to produce the CLI executable but
> no luck yet.
>
> I'd like to send it to upstream but I'm a bit stuck. Do you happen to know
> what I might be missing?
>
> Any help/advice is much appreciated.
>
> all best,
>
> jgart

I took a look at "mondo.asd" and I think the 'make-cli-executable' phase
could be something like the following:

Toggle snippet (8 lines)
(lambda* (#:key outputs #:allow-other-keys)
(build-program
(string-append (assoc-ref outputs "out") "/bin/mondo")
outputs
#:dependencies '("mondo/command")
#:entry-program '((mondo/cli:main))))

However, the 'create-swank-server' function in "src/swank/server.lisp"
tries to run the ros program, which fails because it does not exist.
Maybe you could ask upstream if another way to start the swank server
could be added to the code in case ros is not available.
-----BEGIN PGP SIGNATURE-----

iIUEAREKAC0WIQTLxZxm7Ce5cXlAaz5r6CCK3yH+PwUCYjRUrA8cZ2x2QHBvc3Rl
by5uZXQACgkQa+ggit8h/j/VpAD8Db6R3Kr/p9XNGukk3X4/HIdin7iXHht0CIyv
Fp2M9DwA/j2isXq3kty4n12Lr3zMnEdNm9KxFDt8d2sF1KI8HZ8W
=Jixe
-----END PGP SIGNATURE-----

Closed
J
(name . Guillaume Le Vaillant)(address . glv@posteo.net)(address . 54392-done@debbugs.gnu.org)
20220318120237.GB20133@gac.attlocal.net
On Fri, 18 Mar 2022 09:23:15 +0000 Guillaume Le Vaillant <glv@posteo.net> wrote:

Hi Guillaume,

Thanks for the help and advice.

I'll try the code you shared for the executable today and report back.

Toggle quote (5 lines)
> However, the 'create-swank-server' function in "src/swank/server.lisp"
> tries to run the ros program, which fails because it does not exist.
> Maybe you could ask upstream if another way to start the swank server
> could be added to the code in case ros is not available.

Thanks for the info!

I opened a discussion here with fukumachi about it:

Closed
?
Your comment

This issue is archived.

To comment on this conversation send email to 54392@debbugs.gnu.org