gnu: emacs: Simplify "guix-emacs.el".

* gnu/packages/aux-files/emacs/guix-emacs.el: Do not try to require
'guix-profiles'.  Do not call 'guix-emacs-autoload-packages' in the top
level.
(guix-package-enable-at-startup): Remove.  This variable can't be set by
a user since this file is loaded before user config.
(guix-emacs-autoload-packages): Use 'guix-read-package-profile' instead
of 'guix-profile-prompt' in interactive clause (it was renamed in
Emacs-Guix).
* gnu/packages/emacs.scm (emacs)[arguments]: Call
'guix-emacs-autoload-packages' in "site-start.el" after requiring
'guix-emacs'.
This commit is contained in:
Alex Kost 2017-02-18 11:44:52 +03:00
parent 59d04f63df
commit 9bd94544be
No known key found for this signature in database
GPG Key ID: 82460C082A0EE98F
2 changed files with 8 additions and 17 deletions

View File

@ -1,6 +1,6 @@
;;; guix-emacs.el --- Emacs packages installed with Guix
;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;; Copyright © 2014, 2015, 2016, 2017 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
@ -19,22 +19,14 @@
;;; Commentary:
;; This file provides auxiliary code for working with Emacs packages
;; This file provides auxiliary code to autoload Emacs packages
;; installed with Guix.
;;; Code:
(require 'cl-lib)
(unless (require 'guix-profiles nil t)
(defvar guix-user-profile (expand-file-name "~/.guix-profile")))
(defcustom guix-package-enable-at-startup t
"If non-nil, activate Emacs packages installed in a user profile.
Set this variable to nil before requiring `guix-emacs' file to
avoid loading autoloads of Emacs packages installed in
`guix-user-profile'."
:type 'boolean
:group 'guix)
(defvar guix-user-profile (expand-file-name "~/.guix-profile"))
(defvar guix-emacs-autoloads nil
"List of the last loaded Emacs autoloads.")
@ -92,8 +84,8 @@ profiles.
'Autoload' means add directories with Emacs packages to
`load-path' and load 'autoloads' files matching
`guix-emacs-autoloads-regexp'."
(interactive (list (if (fboundp 'guix-profile-prompt)
(funcall 'guix-profile-prompt)
(interactive (list (if (fboundp 'guix-read-package-profile)
(funcall 'guix-read-package-profile)
guix-user-profile)))
(let ((profiles (or profiles
(list "/run/current-system/profile"
@ -115,9 +107,6 @@ profiles.
(setq guix-emacs-autoloads
(append new-autoloads guix-emacs-autoloads))))))))
(when guix-package-enable-at-startup
(guix-emacs-autoload-packages))
(provide 'guix-emacs)
;;; guix-emacs.el ends here

View File

@ -144,7 +144,9 @@ (define-public emacs
(string-append lisp-dir "/guix-emacs.el"))
(with-output-to-file (string-append lisp-dir "/site-start.el")
(lambda ()
(display "(require 'guix-emacs nil t)")))
(display
(string-append "(when (require 'guix-emacs nil t)\n"
" (guix-emacs-autoload-packages))\n"))))
#t))))))
(inputs
`(("gnutls" ,gnutls)