me
/
guix
Archived
1
0
Fork 0

gnu: emacspeak: Fix Tclx and espeak server loading.

Fixes <https://issues.guix.gnu.org/42861>.

* gnu/packages/emacs-xyz.scm (emacspeak)[arguments]: In the 'configure' phase,
add Tclx library to the load path of Tcl in the espeak server script.  Remove
'wrap-program' phase.
master
Kei Kebreau 2021-03-28 22:38:09 -04:00
parent 235f2c98b9
commit 50616a7dfb
No known key found for this signature in database
GPG Key ID: E6A5EE3C19467A0D
1 changed files with 12 additions and 13 deletions

View File

@ -12126,8 +12126,18 @@ highlights quasi-quoted expressions.")
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "SHELL" (which "sh"))
;; Ensure the tclespeak.so binary is found in the correct location
;; by adding the path to the Tclx library to the Tcl $auto_path
;; variable.
(with-fluids ((%default-port-encoding "ISO-8859-1"))
(substitute* "servers/espeak"
(("package require Tclx")
(string-append "set auto_path [linsert $auto_path 0 "
(assoc-ref inputs "tclx")
"/lib]\n"
"package require Tclx"))))
;; Configure Emacspeak according to etc/install.org.
(invoke "make" "config")))
(add-after 'build 'build-espeak
@ -12155,18 +12165,7 @@ highlights quasi-quoted expressions.")
;; Install the convenient startup script.
(mkdir-p bin)
(copy-file "run" (string-append bin "/emacspeak")))
#t))
(add-after 'install '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")))
;; The environment variable DTK_PROGRAM tells emacspeak what
;; program to use for speech.
(wrap-program emacspeak
`("DTK_PROGRAM" ":" prefix (,espeak)))
#t))))
#t)))
#:tests? #f)) ; no check target
(inputs
`(("emacs" ,emacs)