guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

04/04: doc emacs: Improve documentation on initial setup.


From: Alex Kost
Subject: 04/04: doc emacs: Improve documentation on initial setup.
Date: Mon, 08 Jun 2015 08:51:49 +0000

alezost pushed a commit to branch master
in repository guix.

commit a72f18a58b0de82028454a0688d45b537905f0c4
Author: Alex Kost <address@hidden>
Date:   Sun Jun 7 21:43:58 2015 +0300

    doc emacs: Improve documentation on initial setup.
    
    Reported by ngz on #guix.
    
    * doc/emacs.texi (Emacs Initial Setup): Describe how to configure
      "guix.el" in the case of binary installation and when Guix is not
      installed.
---
 doc/emacs.texi |   44 +++++++++++++++++++++++++++++++++++---------
 1 files changed, 35 insertions(+), 9 deletions(-)

diff --git a/doc/emacs.texi b/doc/emacs.texi
index 00cd5c1..17682c3 100644
--- a/doc/emacs.texi
+++ b/doc/emacs.texi
@@ -45,23 +45,49 @@ used for interacting with the Guile process.
 
 @end itemize
 
-When it is done, add the following into your init file (@pxref{Init
-File,,, emacs, The GNU Emacs Manual}):
+When it is done ``guix.el'' may be configured by requiring a special
address@hidden file---i.e., by adding the following code into your
+init file (@pxref{Init File,,, emacs, The GNU Emacs Manual}):
 
 @example
+(add-to-list 'load-path "/path/to/directory-with-guix.el")
 (require 'guix-init nil t)
 @end example
 
-However there is a chance that @code{load-path} of your Emacs does not
-contain a directory with ``guix.el'' (usually it is
address@hidden/usr/share/emacs/site-lisp/}).  In that case you need to add it
-before requiring (@pxref{Lisp Libraries,,, emacs, The GNU Emacs
-Manual}):
+So the only thing you need to figure out is where the directory with
+elisp files for Guix is placed.  It depends on how you installed Guix:
+
address@hidden
address@hidden
+If it was installed by a package manager of your distribution or by a
+usual @code{./configure && make && make install} command sequence, then
+elisp files are placed in a standard directory with Emacs packages
+(usually it is @file{/usr/share/emacs/site-lisp/}), which is already in
address@hidden, so there is no need to add that directory there.
+
address@hidden
+If you used a binary installation method (@pxref{Binary Installation}),
+then Guix is installed somewhere in the store, so the elisp files are
+placed in @file{/gnu/store/@dots{}-guix-0.8.2/share/emacs/site-lisp/} or
+alike.  However it is not recommended to refer directly to a store
+directory.  Instead you can install Guix using Guix itself with
address@hidden package -i guix} command (@pxref{Invoking guix package})
+and add @file{~/.guix-profile/share/emacs/site-lisp/} directory to
address@hidden variable.
+
address@hidden
+If you did not install Guix at all and prefer a hacking way
+(@pxref{Running Guix Before It Is Installed}), along with augmenting
address@hidden you need to set @code{guix-load-path} variable to the
+same directory, so your final configuration will look like this:
 
 @example
-(add-to-list 'load-path "/path/to/directory-with-guix.el")
-(require 'guix-init)
+(let ((dir "/path/to/your-guix-git-tree/emacs"))
+  (add-to-list 'load-path dir)
+  (setq guix-load-path dir))
+(require 'guix-init nil t)
 @end example
address@hidden itemize
 
 By default, along with autoloading (@pxref{Autoload,,, elisp, The GNU
 Emacs Lisp Reference Manual}) the main interactive commands for



reply via email to

[Prev in Thread] Current Thread [Next in Thread]