[PATCH] gnu: Add emacspeak.

  • Done
  • quality assurance status badge
Details
2 participants
  • Kei Kebreau
  • Ludovic Courtès
Owner
unassigned
Submitted by
Kei Kebreau
Severity
normal

Debbugs page

Kei Kebreau wrote 8 years ago
(address . guix-patches@gnu.org)(name . Kei Kebreau)(address . kei@openmailbox.org)
20170410224124.28803-1-kei@openmailbox.org
* gnu/packages/emacs.scm (emacspeak): New variable.
---
gnu/packages/emacs.scm | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)

Toggle diff (92 lines)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 3db31f207..ac78bea94 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -22,6 +22,7 @@
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com>
+;;; Copyright © 2017 Kei Kebreau <kei@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -51,6 +52,7 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
+ #:use-module (gnu packages audio)
#:use-module (gnu packages code)
#:use-module (gnu packages guile)
#:use-module (gnu packages gtk)
@@ -58,6 +60,7 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
+ #:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg)
@@ -4057,3 +4060,61 @@ jQuery and Bootstrap resources included via osscdn.")
(description
"This Emacs package highlights the s-exp at the current position.")
(license license:gpl3+)))
+
+(define-public emacspeak
+ (package
+ (name "emacspeak")
+ (version "45.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/tvraman/emacspeak/releases/download/"
+ version "/emacspeak-" version ".tar.bz2"))
+ (sha256
+ (base32
+ "0npcr867xbbhwa0i7v26hnk4z2d51522jwcfwc594j74kbv3g6ka"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags (list (string-append "prefix="
+ (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "Makefile"
+ (("\\$\\(INSTALL\\) -d \\$\\(libdir\\)/servers/linux-outloud")
+ "")
+ (("\\$\\(INSTALL\\) -m 755 \\$\\{OUTLOUD\\}.*$") "")
+ (("\\*info\\*") "*"))
+ (substitute* "etc/emacspeak.sh.def"
+ (("<emacspeak-dir>")
+ (string-append (assoc-ref outputs "out")
+ "/share/emacs/site-lisp/emacspeak/lisp")))
+ (zero? (system* "make" "config"))))
+ (add-after 'install 'install-espeak-server
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (with-directory-excursion "servers/linux-espeak"
+ (and (zero? (system* "make"))
+ (zero? (system* "make" "install"
+ (string-append "PREFIX=" out))))))))
+ (add-after 'install-espeak-server 'wrap-program
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (emacspeak (string-append out "/bin/emacspeak"))
+ (espeak (string-append (assoc-ref inputs "espeak")
+ "/bin/espeak")))
+ (wrap-program emacspeak
+ `("DTK_PROGRAM" ":" prefix (,espeak)))))))
+ #:tests? #f)) ; no check target
+ (inputs
+ `(("espeak" ,espeak)
+ ("tcl" ,tcl)
+ ("tclx" ,tclx)))
+ (native-inputs `(("emacs" ,emacs-minimal)))
+ (home-page "http://emacspeak.sourceforge.net")
+ (synopsis "Audio desktop interface for Emacs")
+ (description
+ "Emacspeak is an Emacs subsystem that provides complete speech access.")
+ (license license:gpl2+)))
--
2.12.2
Ludovic Courtès wrote 8 years ago
(name . Kei Kebreau)(address . kei@openmailbox.org)(address . 26437@debbugs.gnu.org)
87r30zruns.fsf@gnu.org
Hello Kei,

Kei Kebreau <kei@openmailbox.org> skribis:

Toggle quote (2 lines)
> * gnu/packages/emacs.scm (emacspeak): New variable.

[...]

Toggle quote (9 lines)
> + (add-after 'install-espeak-server 'wrap-program
> + (lambda* (#:key inputs outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (emacspeak (string-append out "/bin/emacspeak"))
> + (espeak (string-append (assoc-ref inputs "espeak")
> + "/bin/espeak")))
> + (wrap-program emacspeak
> + `("DTK_PROGRAM" ":" prefix (,espeak)))))))

Please return #t here. Could you also add a note about what
‘DTK_PROGRAM’ is and what component honors it?

Toggle quote (5 lines)
> + (home-page "http://emacspeak.sourceforge.net")
> + (synopsis "Audio desktop interface for Emacs")
> + (description
> + "Emacspeak is an Emacs subsystem that provides complete speech access.")

Could you expound a bit, probably borrowing bits from their home page?

Otherwise LGTM. OK with these changes!

Thanks,
Ludo’.
Kei Kebreau wrote 8 years ago
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 26437@debbugs.gnu.org)
87vaqb2clu.fsf@openmailbox.org
ludo@gnu.org (Ludovic Courtès) writes:

Toggle quote (33 lines)
> Hello Kei,
>
> Kei Kebreau <kei@openmailbox.org> skribis:
>
>> * gnu/packages/emacs.scm (emacspeak): New variable.
>
> [...]
>
>> + (add-after 'install-espeak-server 'wrap-program
>> + (lambda* (#:key inputs outputs #:allow-other-keys)
>> + (let* ((out (assoc-ref outputs "out"))
>> + (emacspeak (string-append out "/bin/emacspeak"))
>> + (espeak (string-append (assoc-ref inputs "espeak")
>> + "/bin/espeak")))
>> + (wrap-program emacspeak
>> + `("DTK_PROGRAM" ":" prefix (,espeak)))))))
>
> Please return #t here. Could you also add a note about what
> ‘DTK_PROGRAM’ is and what component honors it?
>
>> + (home-page "http://emacspeak.sourceforge.net")
>> + (synopsis "Audio desktop interface for Emacs")
>> + (description
>> + "Emacspeak is an Emacs subsystem that provides complete speech
>> access.")
>
> Could you expound a bit, probably borrowing bits from their home page?
>
> Otherwise LGTM. OK with these changes!
>
> Thanks,
> Ludo’.

Pushed to master with the required changes. Thanks for the review.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEg7ZwOtzKO2lLzi2m5qXuPBlGeg0FAljs9K0ACgkQ5qXuPBlG
eg0a8Q/8CUuA1g+eSPB+4Rj1cdhix5xWIv6vNWl2PI8+sQuND1NUOd81mHe+8pr3
qWZfMgVxipxHWIgvlwhw1r7VRoRH2DwT6KAYYsLOFD5K7QpTFKggRcvfONbx9fFg
wfnQsMm1rMvZUvyjpzOVdBH1Y/rxQTT+4It6DMUP8iQiGZoMn/O8R8hYjnyQfh4P
kHwdpuHJsyzpBLtOExqqiQuaAwOivQDj7HoKi3DoZgzHHZngausRpPb78WHvL2cJ
RzTtIVuQ0TV8V+/sGtNBRUMV9pwTFPKoNRulxzHoumCnK+PQYcYHkQd48W3bOTo5
pgjUNbFeVefRfvchsvUd3G/Bw9gtYa1WQwFVDvgVEFg0zlMqYZYWE2LaIckDwpud
Wt/1MyMFs9BACf/VGZ4VSQdrBmjrn9xjkz3IpVyJSCcsMGIW/4AtgAGM+0PeAmsj
jbVtDSF8agjBEmBdZYpbwtkJ2Dfi5lItV6bKTpoRd6p7iT2ZPuM3sMaeZM4lqzcs
qSY6ug1zTv6dRndc0WUzb17vBSm7Di9NTSB5QrdIqYMgj/6XwFrXslYX72TiuqIs
RTlW9n2CtwNK4yDMLC3q0bkgzwICKgIbCzT0xOdbu1i1cSeZrdDhnRFiHifjiVIH
z3/iDGR8Zp+Q93TtbhdFz6FgJPN5ThpFnkFus4D+cY0aBay7L6Q=
=6lmv
-----END PGP SIGNATURE-----

Kei Kebreau wrote 8 years ago
(address . 26437-done@debbugs.gnu.org)
87r30z2cgn.fsf@openmailbox.org
This package has been pushed to master.
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEg7ZwOtzKO2lLzi2m5qXuPBlGeg0FAljs9WgACgkQ5qXuPBlG
eg1k3A/+I0cKhltDKmxnZNFQV8wc3erGyDsbgPf4IIfEc4TvcURtKoXx1+lLxycA
pv/uO0b9HsUCf9EedWLLcmNFZj6OXx7RGOmolwHxiwY2eekQuulx8W6k83PqWLsI
jCDjL6bVHNIQKlqBXC6z0rPYg/DhlOUE3yKuJHYFLwcsBUofSmNGjfP1+AANyWx8
dvyGqnBRnsTqOJ7+k51RBkDbv339L0WCDYtwGWjOWb47l7IwaMZ2sJFsAFk+/MiH
3nMHfykRZT9LSoBLKtyczZAfVO1LRpTn+U9eNYdwOk3u8mcF8bGjuPkbzGoBre7h
/F4imtsWVp3hpCEFJAoZ9e3CiV+Ltc91hwf2rf1kWuuqegk9Bl2fJ0VkL3QdN+vo
EuAcXeLmxaBUCqc8FV3XUfbb2okYHCYdyCYq3vnkjPO1tfwjwJPM47H4KV42Qjy0
NG+b2KSrT/yiAqWJrY7Y5J0Ksevv5AIgkwinG7XwHnjj6rGrwk+d6ck9sK7NBkBS
gFFn02GigTN1NrMLEArbf0ZyPiqLbA1g0ZD6WakVPd/uxDxv/FQtj9Bs3dQqQUlv
JO0XhTY/H/1NQbsTh4itiJbGwzdIkp1vgT/ZfcXZbMF/bkvi4ImoFX4K/AW39GOU
EPlEzbsMsPOsINKoBP5acpvC3SYk4CxGYLvqpzeJSbR7u2zzH1c=
=zkPJ
-----END PGP SIGNATURE-----

Closed
?
Your comment

This issue is archived.

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

To respond to this issue using the mumi CLI, first switch to it
mumi current 26437
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