[PATCH] gnu: Add eweouz.

  • Done
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Nicolas Goaziou
  • Simon Josefsson
Owner
unassigned
Submitted by
Simon Josefsson
Severity
normal

Debbugs page

Simon Josefsson wrote 2 years ago
(address . guix-patches@gnu.org)
871qok1n2m.fsf@josefsson.org
Hi. This adds a GNOME Evolution Data Server interface to Emacs. Test
it by adding a contact to the EDS address book (e.g., through GNOME
Contacts) and then do 'emacs -q' and M-x eweouz RET and search for parts
of the name of the contact.

While the package builds and works for me, I would appreciate a review
so I can learn -- I wrote this without understanding anything of what I
was doing, but merely pattern-matched things against other existing
packages that looked relevant.

/Simon
From 52b0ad49ef0436346f53bebee4690961fba9cf90 Mon Sep 17 00:00:00 2001
From: Simon Josefsson <simon@josefsson.org>
Date: Tue, 27 Dec 2022 23:38:33 +0100
Subject: [PATCH] gnu: Add eweouz.

* gnu/packages/emacs-xyz.scm (eweouz): New variable.
---
gnu/packages/emacs-xyz.scm | 66 ++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)

Toggle diff (86 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index fb4c9b70f9..adb0689df1 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -119,6 +119,7 @@
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Thiago Jung Bauermann <bauermann@kolabnow.com>
;;; Copyright © 2022 Joeke de Graaf <joeke@posteo.net>
+;;; Copyright © 2022 Simon Josefsson <simon@josefsson.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3053,6 +3054,71 @@ (define-public emacs-bbdb-vcard
(BBDB). Version 2.1 vCards are converted into version 3.0 on import.")
(license license:gpl2+))))
+(define-public eweouz
+ (package
+ (name "eweouz")
+ (version "0.12")
+ (source
+ (origin
+ (method url-fetch)
+ ;; README's git://git.err.no/eweouz is gone
+ (uri (string-append "mirror://debian/pool/main/e/eweouz/"
+ "eweouz_" version ".tar.xz"))
+ (file-name (string-append name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "192zl3dyphhvcrvn65bqsrc4h6zks8b747lp6pqbpbmsqy4g4mr8"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f
+ #:modules ((guix build gnu-build-system)
+ ((guix build emacs-build-system) #:prefix emacs:)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-build-system)
+ (guix build emacs-utils))
+ #:configure-flags
+ (list (string-append "--with-lispdir="
+ (emacs:elpa-directory %output)))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'bootstrap
+ (lambda _ (invoke "autoreconf" "-vif") #t))
+ (add-after 'compress-documentation 'enter-lisp-dir
+ (lambda _ (chdir "lisp/")))
+ (add-after 'enter-lisp-dir 'emacs-patch-variables
+ (lambda* (#:key outputs #:allow-other-keys)
+ (make-file-writable "eweouz.el")
+ (substitute* "eweouz.el"
+ (("\\(setq eweouz-helper-dirs '\\(")
+ (format #f "(setq eweouz-helper-dirs '(~s "
+ (string-append (assoc-ref outputs "out")
+ "/libexec/eweouz"))))))
+ (add-after 'emacs-patch-variables 'emacs-expand-load-path
+ (assoc-ref emacs:%standard-phases 'expand-load-path))
+ (add-after 'emacs-expand-load-path 'emacs-add-install-to-native-load-path
+ (assoc-ref emacs:%standard-phases 'add-install-to-native-load-path))
+ (add-after 'emacs-add-install-to-native-load-path 'emacs-install
+ (assoc-ref emacs:%standard-phases 'install))
+ (add-after 'emacs-install 'emacs-build
+ (assoc-ref emacs:%standard-phases 'build))
+ (add-after 'emacs-install 'emacs-make-autoloads
+ (assoc-ref emacs:%standard-phases 'make-autoloads)))))
+ (native-inputs
+ (list autoconf
+ automake
+ emacs-minimal
+ pkg-config))
+ (inputs
+ (list evolution-data-server))
+ (home-page "https://tracker.debian.org/pkg/eweouz")
+ (synopsis "Emacs interface to Evolution Data Server")
+ (description
+ "eweouz is an tool for looking up contacts from Evolution Data Server
+from Emacs. It is similar to BBDB, except much, much simpler.")
+ (license license:gpl2)))
+
(define-public emacs-beacon
(package
(name "emacs-beacon")
--
2.38.1
-----BEGIN PGP SIGNATURE-----

iIoEARYIADIWIQSjzJyHC50xCrrUzy9RcisI/kdFogUCY6t18RQcc2ltb25Aam9z
ZWZzc29uLm9yZwAKCRBRcisI/kdFoqrmAPsF8U5PZ/etuWm9EKDJZ/8JGa8mCSsr
jZhpxqSqVsHlwAD/UwriKvfe9MkMRB7J2HlZFZ6tU9eLVrickE5Kn0Fi4AM=
=PH9t
-----END PGP SIGNATURE-----

Ludovic Courtès wrote 2 years ago
(name . Simon Josefsson)(address . simon@josefsson.org)(address . 60369@debbugs.gnu.org)
877cx2s4vl.fsf@gnu.org
Hi Simon,

Simon Josefsson <simon@josefsson.org> skribis:

Toggle quote (5 lines)
> While the package builds and works for me, I would appreciate a review
> so I can learn -- I wrote this without understanding anything of what I
> was doing, but merely pattern-matched things against other existing
> packages that looked relevant.

Let’s see.

Toggle quote (7 lines)
> From 52b0ad49ef0436346f53bebee4690961fba9cf90 Mon Sep 17 00:00:00 2001
> From: Simon Josefsson <simon@josefsson.org>
> Date: Tue, 27 Dec 2022 23:38:33 +0100
> Subject: [PATCH] gnu: Add eweouz.
>
> * gnu/packages/emacs-xyz.scm (eweouz): New variable.

[...]

Toggle quote (4 lines)
> +(define-public eweouz
> + (package
> + (name "eweouz")

Rather “emacs-eweouz” (info "(guix) Package Naming").

Toggle quote (4 lines)
> + (build-system gnu-build-system)
> + (arguments
> + `(#:tests? #f

Please add a short comment saying why tests are disabled.

Toggle quote (4 lines)
> + (modify-phases %standard-phases
> + (replace 'bootstrap
> + (lambda _ (invoke "autoreconf" "-vif") #t))

Is this needed? The default ‘bootstrap’ phase does that, roughly. You
can omit the trailing #t too.

Toggle quote (6 lines)
> + (synopsis "Emacs interface to Evolution Data Server")
> + (description
> + "eweouz is an tool for looking up contacts from Evolution Data Server
> +from Emacs. It is similar to BBDB, except much, much simpler.")
> + (license license:gpl2)))

Might be ‘gpl2+’, unless it explicitly states “version 2 only”.

That’s all I have to say! Overall it’s looking good. :-)

Could you send an updated patch?

Thanks,
Ludo’.
Simon Josefsson wrote 2 years ago
Re: [bug#60369] [PATCH v2] gnu: Add eweouz.
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 60369@debbugs.gnu.org)
87bkm859at.fsf_-_@josefsson.org
Ludovic Courtès <ludo@gnu.org> writes:

Toggle quote (11 lines)
> Hi Simon,
>
> Simon Josefsson <simon@josefsson.org> skribis:
>
>> While the package builds and works for me, I would appreciate a review
>> so I can learn -- I wrote this without understanding anything of what I
>> was doing, but merely pattern-matched things against other existing
>> packages that looked relevant.
>
> Let’s see.

Hi. Thank you for reviewing this.

Toggle quote (6 lines)
>> +(define-public eweouz
>> + (package
>> + (name "eweouz")
>
> Rather “emacs-eweouz” (info "(guix) Package Naming").

Okay. The package provides non-emacs tools too, but I agree
emacs-eweouz is more appropriate since few are likely to use the tools
outside of the Emacs context.

Toggle quote (6 lines)
>> + (build-system gnu-build-system)
>> + (arguments
>> + `(#:tests? #f
>
> Please add a short comment saying why tests are disabled.

I re-enabled the tests now. Upstream doesn't ship any tests, but at
least we shouldn't disable them in case there is ever a new version that
adds self-test.

Toggle quote (6 lines)
>> + (modify-phases %standard-phases
>> + (replace 'bootstrap
>> + (lambda _ (invoke "autoreconf" "-vif") #t))
>
> Is this needed? The default ‘bootstrap’ phase does that, roughly.

It appears to be needed. The eweouz tarball contains autogen.sh:

aclocal
autoheader
automake --copy --add-missing --foreign
autoconf
./configure --enable-maintainer-mode "$@"

And guix build seems to prefer invoking autogen.sh over autoreconf,
which causes this failure:

starting phase `bootstrap'
running './autogen.sh'
patch-shebang: ./autogen.sh: changing `/bin/sh' to `/gnu/store/4y5m9lb8k3qkb1y9m02sw9w9a6hacd16-bash-minimal-5.1.8/bin/sh'
configure.ac:10: installing './compile'
configure.ac:4: installing './install-sh'
configure.ac:4: installing './missing'
src/Makefile.am: installing './depcomp'
./autogen.sh: ./configure: /bin/sh: bad interpreter: No such file or directory
error: in phase 'bootstrap': uncaught exception:
%exception #<&invoke-error program: "./autogen.sh" arguments: () exit-status: 126 term-signal: #f stop-signal: #f>
phase `bootstrap' failed after 0.6 seconds
command "./autogen.sh" failed with status 126

Toggle quote (2 lines)
> You can omit the trailing #t too.

Nice catch, fixed.

Toggle quote (8 lines)
>> + (synopsis "Emacs interface to Evolution Data Server")
>> + (description
>> + "eweouz is an tool for looking up contacts from Evolution Data Server
>> +from Emacs. It is similar to BBDB, except much, much simpler.")
>> + (license license:gpl2)))
>
> Might be ‘gpl2+’, unless it explicitly states “version 2 only”.

The majority is GPLv2-only. The essential files in eweouz are the
following:

src/eweouz-dump-addressbook.c GPLv2-only
src/eweouz-write-addressbook.c GPLv2-only
lisp/eweouz.el GPLv2-only
lisp/vcard.el GPLv2+

Is there a way to express that? I can't seem to find any documentation
for the (license...) clause (or am I missing it?), but I added both
licenses now and a comment.

Toggle quote (4 lines)
> That’s all I have to say! Overall it’s looking good. :-)
>
> Could you send an updated patch?

See attached.

/Simon
From 24f79d8bd21fc7e4687c89bc920b33d6bf62cba9 Mon Sep 17 00:00:00 2001
From: Simon Josefsson <simon@josefsson.org>
Date: Sun, 5 Feb 2023 18:06:08 +0100
Subject: [PATCH] gnu: Add eweouz.

* gnu/packages/emacs-xyz.scm (eweouz): New variable.
---
gnu/packages/emacs-xyz.scm | 66 ++++++++++++++++++++++++++++++++++++++
1 file changed, 66 insertions(+)

Toggle diff (86 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d30696c7be..17d09a858d 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -122,6 +122,7 @@
;;; Copyright © 2023 Simon Streit <simon@netpanic.org>
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2023 Ivan Vilata-i-Balaguer <ivan@selidor.net>
+;;; Copyright © 2022-2023 Simon Josefsson <simon@josefsson.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3155,6 +3156,71 @@ (define-public emacs-bbdb-vcard
(BBDB). Version 2.1 vCards are converted into version 3.0 on import.")
(license license:gpl2+))))
+(define-public emacs-eweouz
+ (package
+ (name "emacs-eweouz")
+ (version "0.12")
+ (source
+ (origin
+ (method url-fetch)
+ ;; README's git://git.err.no/eweouz is gone
+ (uri (string-append "mirror://debian/pool/main/e/eweouz/"
+ "eweouz_" version ".tar.xz"))
+ (file-name (string-append name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "192zl3dyphhvcrvn65bqsrc4h6zks8b747lp6pqbpbmsqy4g4mr8"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ ((guix build emacs-build-system) #:prefix emacs:)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-build-system)
+ (guix build emacs-utils))
+ #:configure-flags
+ (list (string-append "--with-lispdir="
+ (emacs:elpa-directory %output)))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'bootstrap
+ (lambda _ (invoke "autoreconf" "-vif")))
+ (add-after 'compress-documentation 'enter-lisp-dir
+ (lambda _ (chdir "lisp/")))
+ (add-after 'enter-lisp-dir 'emacs-patch-variables
+ (lambda* (#:key outputs #:allow-other-keys)
+ (make-file-writable "eweouz.el")
+ (substitute* "eweouz.el"
+ (("\\(setq eweouz-helper-dirs '\\(")
+ (format #f "(setq eweouz-helper-dirs '(~s "
+ (string-append (assoc-ref outputs "out")
+ "/libexec/eweouz"))))))
+ (add-after 'emacs-patch-variables 'emacs-expand-load-path
+ (assoc-ref emacs:%standard-phases 'expand-load-path))
+ (add-after 'emacs-expand-load-path 'emacs-add-install-to-native-load-path
+ (assoc-ref emacs:%standard-phases 'add-install-to-native-load-path))
+ (add-after 'emacs-add-install-to-native-load-path 'emacs-install
+ (assoc-ref emacs:%standard-phases 'install))
+ (add-after 'emacs-install 'emacs-build
+ (assoc-ref emacs:%standard-phases 'build))
+ (add-after 'emacs-install 'emacs-make-autoloads
+ (assoc-ref emacs:%standard-phases 'make-autoloads)))))
+ (native-inputs
+ (list autoconf
+ automake
+ emacs-minimal
+ pkg-config))
+ (inputs
+ (list evolution-data-server))
+ (home-page "https://tracker.debian.org/pkg/eweouz")
+ (synopsis "Emacs interface to Evolution Data Server")
+ (description
+ "eweouz is an tool for looking up contacts from Evolution Data Server
+from Emacs. It is similar to BBDB, except much, much simpler.")
+ ;; Most things are GPLv2-only although lisp/vcard.el is GPLv2+.
+ (license (list license:gpl2 license:gpl2+))))
+
(define-public emacs-beacon
(package
(name "emacs-beacon")
--
2.38.1
-----BEGIN PGP SIGNATURE-----

iIoEARYIADIWIQSjzJyHC50xCrrUzy9RcisI/kdFogUCY9/iqhQcc2ltb25Aam9z
ZWZzc29uLm9yZwAKCRBRcisI/kdFoiGDAPwKfcp1yJXctSO9XKLesyxnjobPIre9
3ChuccEn5JFlygEAlTxjT2W0j9HvxgXAqRTcO8hM+BQYTqTV7hMr1V3nswY=
=rAQ4
-----END PGP SIGNATURE-----

Simon Josefsson wrote 2 years ago
(name . Simon Josefsson via Guix-patches via)(address . guix-patches@gnu.org)
877ctw8kv2.fsf@kaka.sjd.se
Does anyone have further feedback on the second version of this patch?

/Simon
-----BEGIN PGP SIGNATURE-----

iIoEARYIADIWIQSjzJyHC50xCrrUzy9RcisI/kdFogUCZEuFYRQcc2ltb25Aam9z
ZWZzc29uLm9yZwAKCRBRcisI/kdFoq//AP90SMhXi3F0wr++ZkoBP0rzruYxCUmz
/hdds6aSC6k8mwEAj4GYDchGQl73p/XgLCcD0Y40QiBx84rXOiu9BuVlZA0=
=FYr0
-----END PGP SIGNATURE-----

Nicolas Goaziou wrote 2 years ago
(name . Simon Josefsson via Guix-patches via)(address . guix-patches@gnu.org)
87a5ylvadx.fsf@nicolasgoaziou.fr
Hello,

Thank you.

Toggle quote (2 lines)
> + (arguments

You should use G-expressions from here:

(list
#:modules '(...)
#:imported-modules `(...)
#:configure-flags
#~(list (string-append ... (emacs:elpa-directory #$output))))
#:phases
#~(modify-phases ...)

Toggle quote (3 lines)
> + (add-after 'enter-lisp-dir 'emacs-patch-variables
> + (lambda* (#:key outputs #:allow-other-keys)

This is not necessary: lambda _

Toggle quote (2 lines)
> + (make-file-writable "eweouz.el")

I think you can remove this line.

Toggle quote (6 lines)
> + (substitute* "eweouz.el"
> + (("\\(setq eweouz-helper-dirs '\\(")
> + (format #f "(setq eweouz-helper-dirs '(~s "
> + (string-append (assoc-ref outputs "out")
> + "/libexec/eweouz"))))))

You should use emacs:emacs-substitute-variables here.

Toggle quote (23 lines)
> + (add-after 'emacs-patch-variables 'emacs-expand-load-path
> + (assoc-ref emacs:%standard-phases 'expand-load-path))
> + (add-after 'emacs-expand-load-path 'emacs-add-install-to-native-load-path
> + (assoc-ref emacs:%standard-phases 'add-install-to-native-load-path))
> + (add-after 'emacs-add-install-to-native-load-path 'emacs-install
> + (assoc-ref emacs:%standard-phases 'install))
> + (add-after 'emacs-install 'emacs-build
> + (assoc-ref emacs:%standard-phases 'build))
> + (add-after 'emacs-install 'emacs-make-autoloads
> + (assoc-ref emacs:%standard-phases 'make-autoloads)))))
> + (native-inputs
> + (list autoconf
> + automake
> + emacs-minimal
> + pkg-config))
> + (inputs
> + (list evolution-data-server))
> + (home-page "https://tracker.debian.org/pkg/eweouz")
> + (synopsis "Emacs interface to Evolution Data Server")
> + (description
> + "eweouz is an tool for looking up contacts from Evolution Data
> Server

Typo and capitalization: Eweouz is a tool...

Toggle quote (2 lines)
> +from Emacs. It is similar to BBDB, except much, much simpler.")

You should separate sentences with two spaces.

Toggle quote (3 lines)
> + ;; Most things are GPLv2-only although lisp/vcard.el is GPLv2+.
> + (license (list license:gpl2 license:gpl2+))))

Could you send an updated patch?

Regards,
--
Nicolas Goaziou
Simon Josefsson wrote 2 years ago
Re: [bug#60369] [PATCH v3] gnu: Add eweouz.
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)
87r0rvjg6h.fsf_-_@josefsson.org
Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

Toggle quote (4 lines)
> Hello,
>
> Thank you.

Hi Nicolas. Thank you for your feedback!

Toggle quote (12 lines)
>> + (arguments
>
> You should use G-expressions from here:
>
> (list
> #:modules '(...)
> #:imported-modules `(...)
> #:configure-flags
> #~(list (string-append ... (emacs:elpa-directory #$output))))
> #:phases
> #~(modify-phases ...)

Fixed.

Toggle quote (5 lines)
>> + (add-after 'enter-lisp-dir 'emacs-patch-variables
>> + (lambda* (#:key outputs #:allow-other-keys)
>
> This is not necessary: lambda _

I don't understand what you mean. There is no lambda _ above -- did you
mean this snippet:

(replace 'bootstrap
(lambda _ (invoke "autoreconf" "-vif")))
(add-after 'compress-documentation 'enter-lisp-dir
(lambda _ (chdir "lisp/")))

If so, how to improve that?

Toggle quote (4 lines)
>> + (make-file-writable "eweouz.el")
>
> I think you can remove this line.

Fixed. I got permission errors earlier, but it seems to have gone away.

Toggle quote (9 lines)
>
>> + (substitute* "eweouz.el"
>> + (("\\(setq eweouz-helper-dirs '\\(")
>> + (format #f "(setq eweouz-helper-dirs '(~s "
>> + (string-append (assoc-ref outputs "out")
>> + "/libexec/eweouz"))))))
>
> You should use emacs:emacs-substitute-variables here.

I used emacs-substitute-sexp now. It seems emacs-substitute-variables
only works on def*, and here it was setq.

Toggle quote (9 lines)
>> + "eweouz is an tool for looking up contacts from Evolution Data
>> Server
>
> Typo and capitalization: Eweouz is a tool...
>
>> +from Emacs. It is similar to BBDB, except much, much simpler.")
>
> You should separate sentences with two spaces.

Fixed.

Toggle quote (5 lines)
>> + ;; Most things are GPLv2-only although lisp/vcard.el is GPLv2+.
>> + (license (list license:gpl2 license:gpl2+))))
>
> Could you send an updated patch?

Please see below!

/Simon
From 38e0cccb53eec629d05b0cbd469411907a4e39c7 Mon Sep 17 00:00:00 2001
Message-Id: <38e0cccb53eec629d05b0cbd469411907a4e39c7.1683277790.git.simon@josefsson.org>
From: Simon Josefsson <simon@josefsson.org>
Date: Fri, 5 May 2023 11:04:41 +0200
Subject: [PATCH v3] gnu: Add eweouz.

* gnu/packages/emacs-xyz.scm (eweouz): New variable.
---
gnu/packages/emacs-xyz.scm | 65 ++++++++++++++++++++++++++++++++++++++
1 file changed, 65 insertions(+)

Toggle diff (87 lines)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index f9a14a5c9c..77432409eb 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -128,6 +128,7 @@
;;; Copyright © 2023 Juliana Sims <juli@incana.org>
;;; Copyright © 2023 Evgeny Pisemsky <evgeny@pisemsky.com>
;;; Copyright © 2023 Gabriel Wicki <gabriel@erlikon.ch>
+;;; Copyright © 2022-2023 Simon Josefsson <simon@josefsson.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3359,6 +3360,70 @@ (define-public emacs-bbdb-vcard
(BBDB). Version 2.1 vCards are converted into version 3.0 on import.")
(license license:gpl2+))))
+(define-public emacs-eweouz
+ (package
+ (name "emacs-eweouz")
+ (version "0.12")
+ (source
+ (origin
+ (method url-fetch)
+ ;; README's git://git.err.no/eweouz is gone
+ (uri (string-append "mirror://debian/pool/main/e/eweouz/"
+ "eweouz_" version ".tar.xz"))
+ (file-name (string-append name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "192zl3dyphhvcrvn65bqsrc4h6zks8b747lp6pqbpbmsqy4g4mr8"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:modules '((guix build gnu-build-system)
+ ((guix build emacs-build-system) #:prefix emacs:)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules `(,@%gnu-build-system-modules
+ (guix build emacs-build-system)
+ (guix build emacs-utils))
+ #:configure-flags
+ #~(list (string-append "--with-lispdir="
+ (emacs:elpa-directory #$output)))
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'bootstrap
+ (lambda _ (invoke "autoreconf" "-vif")))
+ (add-after 'compress-documentation 'enter-lisp-dir
+ (lambda _ (chdir "lisp/")))
+ (add-after 'enter-lisp-dir 'emacs-patch-variables
+ (lambda* (#:key outputs #:allow-other-keys)
+ (emacs-substitute-sexps "eweouz.el"
+ ("eweouz-helper-dirs"
+ `(list ,(string-append (assoc-ref outputs "out")
+ "/libexec/eweouz"))))))
+ (add-after 'emacs-patch-variables 'emacs-expand-load-path
+ (assoc-ref emacs:%standard-phases 'expand-load-path))
+ (add-after 'emacs-expand-load-path 'emacs-add-install-to-native-load-path
+ (assoc-ref emacs:%standard-phases 'add-install-to-native-load-path))
+ (add-after 'emacs-add-install-to-native-load-path 'emacs-install
+ (assoc-ref emacs:%standard-phases 'install))
+ (add-after 'emacs-install 'emacs-build
+ (assoc-ref emacs:%standard-phases 'build))
+ (add-after 'emacs-install 'emacs-make-autoloads
+ (assoc-ref emacs:%standard-phases 'make-autoloads)))))
+ (native-inputs
+ (list autoconf
+ automake
+ emacs-minimal
+ pkg-config))
+ (inputs
+ (list evolution-data-server))
+ (home-page "https://tracker.debian.org/pkg/eweouz")
+ (synopsis "Emacs interface to Evolution Data Server")
+ (description
+ "Eweouz is an tool for looking up contacts from Evolution Data Server
+from Emacs. It is similar to BBDB, except much, much simpler.")
+ ;; Most things are GPLv2-only although lisp/vcard.el is GPLv2+.
+ (license (list license:gpl2 license:gpl2+))))
+
(define-public emacs-beacon
(package
(name "emacs-beacon")

base-commit: cf44fb964e6216b153ab898002f2f2ab889532ce
--
2.39.2
-----BEGIN PGP SIGNATURE-----

iIoEARYIADIWIQSjzJyHC50xCrrUzy9RcisI/kdFogUCZFTIVhQcc2ltb25Aam9z
ZWZzc29uLm9yZwAKCRBRcisI/kdFortyAP9Tlt4wecg6SouYAnRiYSCk+UoMtCJq
kPtgS7KY4PnTbgD/e/QHko+GHl/LS54+cU34IHLSDh9Kub4CwL9b7i3K6QM=
=MCgO
-----END PGP SIGNATURE-----

Nicolas Goaziou wrote 2 years ago
(name . Simon Josefsson via Guix-patches via)(address . guix-patches@gnu.org)
874jomybwb.fsf@nicolasgoaziou.fr
Hello,

Simon Josefsson via Guix-patches via <guix-patches@gnu.org> writes:
Toggle quote (4 lines)
> Subject: [PATCH v3] gnu: Add eweouz.
>
> * gnu/packages/emacs-xyz.scm (eweouz): New variable.

Changed name to emacs-ewouz in the commit message and applied your
patch. Thank you.

Toggle quote (6 lines)
> + (lambda* (#:key outputs #:allow-other-keys)
> + (emacs-substitute-sexps "eweouz.el"
> + ("eweouz-helper-dirs"
> + `(list ,(string-append (assoc-ref outputs "out")
> + "/libexec/eweouz"))))))

Here, I used (lambda _ ...) and #$output instead of (assoc-ref …)

Regards,
--
Nicolas Goaziou
Simon Josefsson wrote 2 years ago
Re: bug#60369: [PATCH v3] gnu: Add eweouz.
(address . 60369@debbugs.gnu.org)(address . mail@nicolasgoaziou.fr)
87zg6eynor.fsf@kaka.sjd.se
Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

Toggle quote (10 lines)
> Hello,
>
> Simon Josefsson via Guix-patches via <guix-patches@gnu.org> writes:
>> Subject: [PATCH v3] gnu: Add eweouz.
>>
>> * gnu/packages/emacs-xyz.scm (eweouz): New variable.
>
> Changed name to emacs-ewouz in the commit message and applied your
> patch. Thank you.

Thank you!

Toggle quote (8 lines)
>> + (lambda* (#:key outputs #:allow-other-keys)
>> + (emacs-substitute-sexps "eweouz.el"
>> + ("eweouz-helper-dirs"
>> + `(list ,(string-append (assoc-ref outputs "out")
>> + "/libexec/eweouz"))))))
>
> Here, I used (lambda _ ...) and #$output instead of (assoc-ref …)

Now I understood what you meant earlier, thanks for fixing that.

/Simon
-----BEGIN PGP SIGNATURE-----

iIoEARYIADIWIQSjzJyHC50xCrrUzy9RcisI/kdFogUCZFn0lBQcc2ltb25Aam9z
ZWZzc29uLm9yZwAKCRBRcisI/kdFoiu0AQCZd0mt4Cuh+LgWhZmspaWVR1yAWI66
fF7YHoTA7tsg8wEAsXEOmL+SLQjzQ4V8y3AME4Eu0AFOo8e42JskFxbjRQE=
=qfGU
-----END PGP SIGNATURE-----

?
Your comment

This issue is archived.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 60369
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help