aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm32
1 files changed, 28 insertions, 4 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index fbd9ff96f0..e524949660 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -18,7 +18,7 @@
;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Jesse John Gildersleve <jessejohngildersleve@zohomail.eu>
;;; Copyright © 2019 Valentin Ignatev <valentignatev@gmail.com>
-;;; Copyright © 2019 Liliana Marie Prikler <liliana.prikler@gmail.com>
+;;; Copyright © 2019, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2019 Amin Bandali <bandali@gnu.org>
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
@@ -54,6 +54,7 @@
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gd)
#:use-module (gnu packages gettext)
+ #:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome) ; for librsvg
#:use-module (gnu packages gtk)
@@ -63,6 +64,7 @@
#:use-module (gnu packages mail) ; for mailutils
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages pdf)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
@@ -129,7 +131,7 @@
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-program-file-names
- (lambda _
+ (lambda* (#:key inputs #:allow-other-keys)
(substitute* '("src/callproc.c"
"lisp/term.el"
"lisp/htmlfontify.el"
@@ -137,6 +139,23 @@
"lisp/progmodes/sh-script.el")
(("\"/bin/sh\"")
(format #f "~s" (which "sh"))))
+ (substitute* "lisp/doc-view.el"
+ (("\"(gs|dvipdf|ps2pdf)\"" all what)
+ (let ((ghostscript (assoc-ref inputs "ghostscript")))
+ (if ghostscript
+ (string-append "\"" ghostscript "/bin/" what "\"")
+ all)))
+ (("\"(pdftotext)\"" all what)
+ (let ((poppler (assoc-ref inputs "poppler")))
+ (if poppler
+ (string-append "\"" poppler "/bin/" what "\"")
+ all))))
+ ;; match ".gvfs-fuse-daemon-real" and ".gvfsd-fuse-real"
+ ;; respectively when looking for GVFS processes.
+ (substitute* "lisp/net/tramp-gvfs.el"
+ (("\\(tramp-compat-process-running-p \"(.*)\"\\)" all process)
+ (format #f "(or ~a (tramp-compat-process-running-p ~s))"
+ all (string-append "." process "-real"))))
#t))
(add-before 'configure 'fix-/bin/pwd
(lambda _
@@ -167,8 +186,11 @@
(with-output-to-file (string-append lisp-dir "/site-start.el")
(lambda ()
(display
- (string-append "(when (require 'guix-emacs nil t)\n"
- " (guix-emacs-autoload-packages))\n"))))
+ (string-append
+ "(when (require 'guix-emacs nil t)\n"
+ " (guix-emacs-autoload-packages)\n"
+ " (advice-add 'package-load-all-descriptors"
+ " :after #'guix-emacs-load-package-descriptors))"))))
;; Remove the extraneous subdirs.el file, as it causes Emacs to
;; add recursively all the the sub-directories of a profile's
;; share/emacs/site-lisp union when added to EMACSLOADPATH,
@@ -259,6 +281,8 @@
("acl" ,acl)
("jansson" ,jansson)
("gmp" ,gmp)
+ ("ghostscript" ,ghostscript)
+ ("poppler" ,poppler)
;; When looking for libpng `configure' links with `-lpng -lz', so we
;; must also provide zlib as an input.