GNU bug report logs - #68696
[PATCH] gnu: Add guile-lmdb.

Previous Next

Package: guix-patches;

Reported by: Artyom Bologov <mail <at> aartaka.me>

Date: Wed, 24 Jan 2024 19:26:02 UTC

Severity: normal

Tags: patch

Done: Sharlatan Hellseher <sharlatanus <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #8 received at 68696 <at> debbugs.gnu.org (full text, mbox):

From: Sharlatan Hellseher <sharlatanus <at> gmail.com>
To: Artyom Bologov <mail <at> aartaka.me>
Cc: 68696 <at> debbugs.gnu.org
Subject: Re: [bug#68696] [PATCH] gnu: Add guile-lmdb.
Date: Thu, 25 Jan 2024 22:14:32 +0000
[Message part 1 (text/plain, inline)]
Hi,

Thank you for patch!

>+  (package
>+    (name "guile-lmdb")
>+    (version "0.0.1")
>+    (source (origin
>+              (method git-fetch)
>+              (uri (git-reference
>+                    (url "https://github.com/aartaka/guile-lmdb")
>+                    (commit "438143ca9ba157faec6f4c2740092c31c733fbfe")))
>+              (file-name (git-file-name name version))
>+              (sha256
>+               (base32
>+                "0p43c8ppbhzpi944in0z2jqr7acl8pm7s1x0p5f0idqda6n6f828"))))
As this project has no version tags, take a look at how the package
style may be altered in this case. (gnu packages lisp-xyz) contains
quite a lot of examples without releases.

--8<---------------cut here---------------start------------->8---
  (let ((commit "438143ca9ba157faec6f4c2740092c31c733fbfe")
        (revision "0"))
    (package
      (name "guile-lmdb")
      (version (git-version "0.0.1" revision commit))
      (source (origin
                (method git-fetch)
                (uri (git-reference
                      (url "https://github.com/aartaka/guile-lmdb")
                      (commit commit)))
                (file-name (git-file-name name version))
                (sha256
                 (base32
                  "0p43c8ppbhzpi944in0z2jqr7acl8pm7s1x0p5f0idqda6n6f828"))))
--8<---------------cut here---------------end--------------->8---
- revision :: bumps on every package update in guix, starting from 0.

> +    (arguments
> +     '(#:source-directory "modules"
> +       #:phases (modify-phases %standard-phases
> +                  (add-before 'build 'substitute-lmdb-so
> +                    (lambda* (#:key inputs #:allow-other-keys)
> +                      (let ((lmdb (string-append (assoc-ref inputs "lmdb")
> +                                                 "/lib/liblmdb.so")))
> +                        (substitute*
> +                            '("modules/lmdb/lmdb.scm")
> +                          (("liblmdb.so")
> +                           lmdb))
> +                        #t))))))
You may simplify this part a little by using G-Expressions:

--8<---------------cut here---------------start------------->8---
    (arguments
     (list
      #:source-directory "modules"
      #:phases
      #~(modify-phases %standard-phases
          (add-before 'build 'substitute-lmdb-so
            (lambda _
              (let ((lmdb (string-append
                           #$(this-package-input "lmdb") "/lib/liblmdb.so")))
                (substitute* "modules/lmdb/lmdb.scm"
                  (("liblmdb.so") lmdb))))))))
--8<---------------cut here---------------end--------------->8---
- this-package-input commonly used replacement for (string-append
    (assoc-ref inputs ...
- lambdas in phases don't need trailing #t.

> + (synopsis "Bindings for LMDB (Lightning Memory-Mapped Database) in Guile.")
You need to drop full stop in the end of synopsis, and may use full
description instead of acronym+description.

> (description "Scheme wrapper around liblmdb.so.
It may be rephrased as "This package provides a scheme wrapper for liblmdb.so."

> +@end itemize\n")
You may drop \n here.

Please take a look at review points, and apply guix lint in the end.
Looking forward for V2!

Thans,
Oleg
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 1 year and 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.