summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac1
-rw-r--r--emacs/guix-config.el.in4
-rw-r--r--emacs/guix-external.el7
3 files changed, 11 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index bb3d947535..00e7c7b4bc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -206,6 +206,7 @@ AC_CONFIG_FILES([pre-inst-env], [chmod +x pre-inst-env])
AC_CONFIG_FILES([test-env], [chmod +x test-env])
dnl Emacs interface.
+AC_PATH_PROG([DOT_USER_PROGRAM], [dot], [dot])
AM_PATH_LISPDIR
AM_CONDITIONAL([HAVE_EMACS], [test "x$EMACS" != "xno"])
diff --git a/emacs/guix-config.el.in b/emacs/guix-config.el.in
index 16434cecea..c7affb8c6d 100644
--- a/emacs/guix-config.el.in
+++ b/emacs/guix-config.el.in
@@ -1,6 +1,7 @@
;;; guix-config.el --- Compile-time configuration of Guix.
;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
+;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
@@ -35,6 +36,9 @@ strings of the form:
Where ARGS is a list of arguments to the guile program.")
+(defconst guix-config-dot-program "@DOT_USER_PROGRAM@"
+ "Name of the 'dot' executable defined at configure time.")
+
(provide 'guix-config)
;;; guix-config.el ends here
diff --git a/emacs/guix-external.el b/emacs/guix-external.el
index 580676ef91..cf4bd26ac7 100644
--- a/emacs/guix-external.el
+++ b/emacs/guix-external.el
@@ -23,11 +23,16 @@
;;; Code:
+(require 'guix-config)
+
(defgroup guix-external nil
"Settings for external programs."
:group 'guix)
-(defcustom guix-dot-program (executable-find "dot")
+(defcustom guix-dot-program
+ (if (file-name-absolute-p guix-config-dot-program)
+ guix-config-dot-program
+ (executable-find "dot"))
"Name of the 'dot' executable."
:type 'string
:group 'guix-external)