M .gitignore => .gitignore +1 -2
@@ 120,8 120,7 @@ GTAGS
/emacs/Makefile
/emacs/guix-autoloads.el
/emacs/guix-helper.scm
-/emacs/guix-init.el
-/emacs/guix-profiles.el
+/emacs/guix-config.el
/doc/os-config-bare-bones.texi
/doc/os-config-desktop.texi
/doc/*.1
M configure.ac => configure.ac +1 -2
@@ 205,8 205,7 @@ AM_CONDITIONAL([HAVE_EMACS], [test "x$EMACS" != "xno"])
emacsuidir="${guilemoduledir}/guix/emacs"
AC_SUBST([emacsuidir])
-AC_CONFIG_FILES([emacs/guix-init.el
- emacs/guix-profiles.el
+AC_CONFIG_FILES([emacs/guix-config.el
emacs/guix-helper.scm])
AC_OUTPUT
M emacs.am => emacs.am +3 -3
@@ 26,11 26,13 @@ ELFILES = \
emacs/guix-help-vars.el \
emacs/guix-history.el \
emacs/guix-info.el \
+ emacs/guix-init.el \
emacs/guix-list.el \
emacs/guix-messages.el \
emacs/guix-pcomplete.el \
emacs/guix-popup.el \
emacs/guix-prettify.el \
+ emacs/guix-profiles.el \
emacs/guix-read.el \
emacs/guix-utils.el \
emacs/guix.el
@@ 41,9 43,7 @@ dist_lisp_DATA = \
$(ELFILES) \
$(AUTOLOADS)
-nodist_lisp_DATA = \
- emacs/guix-init.el \
- emacs/guix-profiles.el
+nodist_lisp_DATA = emacs/guix-config.el
$(AUTOLOADS): $(ELFILES)
$(EMACS) --batch --eval \
A emacs/guix-config.el.in => emacs/guix-config.el.in +31 -0
@@ 0,0 1,31 @@
+;;; guix-config.el --- Compile-time configuration of Guix.
+
+;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
+
+;; This file is part of GNU Guix.
+
+;; GNU Guix is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Guix is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+;;; Code:
+
+(defconst guix-emacs-interface-directory
+ (replace-regexp-in-string "${prefix}" "@prefix@" "@emacsuidir@"))
+
+(defconst guix-state-directory
+ ;; This must match `NIX_STATE_DIR' as defined in `daemon.am'.
+ (or (getenv "NIX_STATE_DIR") "@guix_localstatedir@/guix"))
+
+(provide 'guix-config)
+
+;;; guix-config.el ends here
R emacs/guix-init.el.in => emacs/guix-init.el +2 -2
@@ 1,7 1,7 @@
+(require 'guix-config)
(require 'guix-autoloads)
-(defvar guix-load-path
- (replace-regexp-in-string "${prefix}" "@prefix@" "@emacsuidir@")
+(defvar guix-load-path guix-emacs-interface-directory
"Directory with scheme files for \"guix.el\" package.")
(defcustom guix-package-enable-at-startup t
R emacs/guix-profiles.el.in => emacs/guix-profiles.el +3 -1
@@ 19,12 19,14 @@
;;; Code:
+(require 'guix-config)
+
(defvar guix-user-profile
(expand-file-name "~/.guix-profile")
"User profile.")
(defvar guix-default-profile
- (concat (or (getenv "NIX_STATE_DIR") "@guix_localstatedir@/guix")
+ (concat guix-state-directory
"/profiles/per-user/"
(getenv "USER")
"/guix-profile")