guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] update notmuch and python bindings


From: Alex Kost
Subject: Re: [PATCH] update notmuch and python bindings
Date: Mon, 08 Aug 2016 11:21:38 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

> From 0a134eaf40aa9dd6fa5e2e24e3d226203a03da73 Mon Sep 17 00:00:00 2001
> From: Troy Sankey <address@hidden>
> Date: Sun, 7 Aug 2016 13:26:30 -0400
> Subject: [PATCH 2/3] gnu: Add python-notmuch
>
> ---
>  gnu/packages/mail.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 82e35fb..1634d86 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -517,6 +517,48 @@ ing, and tagging large collections of email messages.")
>  useful for email address completion.")
>      (license license:expat)))
>  
> +(define-public python-notmuch
> +  (package
> +    (name "python-notmuch")
> +    (version "0.22.1")
> +    (source (origin
> +              (method url-fetch)
> +              ;; notmuch python bindings are now unavailable on pypi.  The
> +              ;; bindings are distributed via the notmuch release tarball.
> +              (uri (string-append
> +                    "https://notmuchmail.org/releases/notmuch-";
> +                    version
> +                    ".tar.gz"))
> +              (sha256
> +               (base32
> +                "0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"))))
> +    (build-system python-build-system)
> +    (inputs `(("notmuch" ,notmuch)))
> +    (arguments
> +     `(#:tests? #f  ; no "test" target
> +       #:phases
> +       (modify-phases %standard-phases
> +         ;; this python package lives in a subdirectory of the notmuch source
> +         ;; tree, so chdir into it before building:
> +         (add-before 'build 'chdir
> +           (lambda* (#:key inputs outputs #:allow-other-keys)
> +             (chdir "bindings/python")))

I'm going to write it like this:

         (add-after 'unpack 'enter-python-dir
           (lambda _ (chdir "bindings/python") #t))

Although the phase succeeds without this trailing #t, but it is more
accurate to use it.  The thing is: if a build phase succeeds, it should
return non-false value while the value of 'chdir' is unspecified.

> +         ;; make sure the correct notmuch shared library gets loaded:
> +         (add-before
> +           'build 'set-libnotmuch-file-name
> +           (lambda* (#:key inputs #:allow-other-keys)
> +             (let ((notmuch (assoc-ref inputs "notmuch")))
> +               (substitute* "notmuch/globals.py"
> +                 (("libnotmuch\\.so\\.")
> +                  (string-append notmuch "/lib/libnotmuch.so.")))
> +               #t))))))
> +    (home-page "http://notmuchmail.org/";)
> +    (synopsis "Python bindings of the Notmuch mail indexing library")
> +    (description
> +     "This package provides Python bindings to use the Notmuch mail indexing
> +and search library.")
> +    (license gpl3+)))
> +
>  (define-public python2-notmuch
>    (package
>      (name "python2-notmuch")
> -- 
> 2.1.4

I will commit this patchset in a couple of days if there will be no
other comments, thanks!
And thanks to ng0 for commenting!

-- 
Alex



reply via email to

[Prev in Thread] Current Thread [Next in Thread]