all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
@ 2016-01-06 16:55 Alex Kost
  2016-01-06 16:55 ` [PATCH 1/4] emacs: Make "guix-emacs.el" independent Alex Kost
                   ` (4 more replies)
  0 siblings, 5 replies; 17+ messages in thread
From: Alex Kost @ 2016-01-06 16:55 UTC (permalink / raw)
  To: guix-devel

So this is a full patchset to "teach" Emacs how to find emacs packages
installed with Guix.  See conversation at
<http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.

[PATCH 1/4] emacs: Make "guix-emacs.el" independent.
[PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
[PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
[PATCH 4/4] doc: Describe how Emacs packages are found.

There is an important nuance: the 3rd patch MUST NOT be committed along
with the first 2 patches, because it will make our Emacs package use an
old source of 'guix' which does not contain the required changes.  So I
think we should:

1. Push the patches 1 and 2.

2. Wait for the next update of the 'guix-devel' snapshot (last time it
   was updated in November¹, so it will probably happen soon).

3. And finally push the patches 3 and 4.

The last patch is not really needed, but I think it would be good to
document how Emacs packages are handled in the Guix land.  WDYT?

¹ http://git.savannah.gnu.org/cgit/guix.git/commit/?id=b2a72238b9be3a51b8973dc98db9bd2252a3429e

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
  2016-01-06 16:55 [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Alex Kost
@ 2016-01-06 16:55 ` Alex Kost
  2016-01-10 20:23   ` Ludovic Courtès
  2016-01-06 16:55 ` [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el" Alex Kost
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-06 16:55 UTC (permalink / raw)
  To: guix-devel

"guix-emacs.el" may be used just for "instructing" Emacs where to find
Emacs packages installed with Guix, so it should have as minimal
dependencies as possible.

See <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00022.html>.

* emacs/guix-emacs.el: Require 'guix-profiles' optionally.
  (guix-emacs-load-autoloads): Use 'guix-profile-prompt' only if it is
  available.
---
 emacs/guix-emacs.el | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/emacs/guix-emacs.el b/emacs/guix-emacs.el
index 2f809ed..311ab33 100644
--- a/emacs/guix-emacs.el
+++ b/emacs/guix-emacs.el
@@ -1,6 +1,6 @@
 ;;; guix-emacs.el --- Emacs packages installed with Guix
 
-;; Copyright © 2014 Alex Kost <alezost@gmail.com>
+;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
 
 ;; This file is part of GNU Guix.
 
@@ -24,8 +24,9 @@
 
 ;;; Code:
 
-(require 'guix-profiles)
 (require 'cl-lib)
+(unless (require 'guix-profiles nil t)
+  (defvar guix-user-profile (expand-file-name "~/.guix-profile")))
 
 (defcustom guix-emacs-activate-after-operation t
   "Activate Emacs packages after installing.
@@ -90,7 +91,9 @@ Return nil if there are no emacs packages installed in PROFILE."
   "Load autoloads for Emacs packages installed in PROFILE.
 If PROFILE is nil, use `guix-user-profile'.
 Add autoloads directories to `load-path'."
-  (interactive (list (guix-profile-prompt)))
+  (interactive (list (if (fboundp 'guix-profile-prompt)
+                         (funcall 'guix-profile-prompt)
+                       guix-user-profile)))
   (let* ((autoloads     (guix-emacs-find-autoloads profile))
          (new-autoloads (cl-nset-difference autoloads
                                             guix-emacs-autoloads
-- 
2.6.3

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
  2016-01-06 16:55 [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Alex Kost
  2016-01-06 16:55 ` [PATCH 1/4] emacs: Make "guix-emacs.el" independent Alex Kost
@ 2016-01-06 16:55 ` Alex Kost
  2016-01-10 20:23   ` Ludovic Courtès
  2016-01-06 16:55 ` [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile" Alex Kost
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-06 16:55 UTC (permalink / raw)
  To: guix-devel

* emacs/guix-init.el: Move the code for auto-loading Emacs packages to...
  (guix-package-enable-at-startup): Move to...
* emacs/guix-emacs.el (guix-package-enable-at-startup): ... here.
---
 emacs/guix-emacs.el | 12 ++++++++++++
 emacs/guix-init.el  | 13 -------------
 2 files changed, 12 insertions(+), 13 deletions(-)

diff --git a/emacs/guix-emacs.el b/emacs/guix-emacs.el
index 311ab33..37a0bb2 100644
--- a/emacs/guix-emacs.el
+++ b/emacs/guix-emacs.el
@@ -28,6 +28,14 @@
 (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)
+
 (defcustom guix-emacs-activate-after-operation t
   "Activate Emacs packages after installing.
 If nil, do not load autoloads of the Emacs packages after
@@ -117,6 +125,10 @@ See `guix-emacs-activate-after-operation' for details."
        ;; profile will not be loaded).
        (guix-emacs-load-autoloads guix-current-profile)))
 
+(when guix-package-enable-at-startup
+  (add-to-list 'load-path (guix-emacs-directory))
+  (guix-emacs-load-autoloads))
+
 (provide 'guix-emacs)
 
 ;;; guix-emacs.el ends here
diff --git a/emacs/guix-init.el b/emacs/guix-init.el
index 1da6070..47ced6a 100644
--- a/emacs/guix-init.el
+++ b/emacs/guix-init.el
@@ -1,19 +1,6 @@
 (require 'guix-autoloads)
 (require 'guix-emacs)
 
-(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-init' file to
-avoid loading autoloads of Emacs packages installed in
-`guix-user-profile'."
-  :type 'boolean
-  :group 'guix)
-
-(add-to-list 'load-path (guix-emacs-directory))
-
-(when guix-package-enable-at-startup
-  (guix-emacs-load-autoloads))
-
 (add-hook 'scheme-mode-hook 'guix-devel-activate-mode-maybe)
 (add-hook 'shell-mode-hook 'guix-build-log-minor-mode-activate-maybe)
 
-- 
2.6.3

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
  2016-01-06 16:55 [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Alex Kost
  2016-01-06 16:55 ` [PATCH 1/4] emacs: Make "guix-emacs.el" independent Alex Kost
  2016-01-06 16:55 ` [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el" Alex Kost
@ 2016-01-06 16:55 ` Alex Kost
  2016-01-10 20:28   ` Ludovic Courtès
  2016-01-06 16:55 ` [PATCH 4/4] doc: Describe how Emacs packages are found Alex Kost
  2016-01-10 20:21 ` [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Ludovic Courtès
  4 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-06 16:55 UTC (permalink / raw)
  To: guix-devel; +Cc: Federico Beffa

From: Federico Beffa <beffa@fbengineering.ch>

* gnu/packages/emacs.scm (emacs)[inputs]: Add 'guix-src' input.
  [arguments]: Add 'install-site-start' phase.

Co-authored-by: Alex Kost <alezost@gmail.com>
---
 gnu/packages/emacs.scm | 49 ++++++++++++++++++++++++++++++++++---------------
 1 file changed, 34 insertions(+), 15 deletions(-)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index e82ffd3..54df2ed 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -52,6 +52,7 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages acl)
+  #:use-module (gnu packages package-management)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages xiph)
@@ -73,20 +74,37 @@
              (patches (list (search-patch "emacs-exec-path.patch")))))
     (build-system glib-or-gtk-build-system)
     (arguments
-     '(#:phases (modify-phases %standard-phases
-                  (add-before 'configure 'fix-/bin/pwd
-                    (lambda _
-                      ;; Use `pwd', not `/bin/pwd'.
-                      (substitute* (find-files "." "^Makefile\\.in$")
-                        (("/bin/pwd")
-                         "pwd"))))
-                  (add-after 'install 'remove-info.info
-                    (lambda* (#:key outputs #:allow-other-keys)
-                      ;; Remove 'info.info', which is provided by Texinfo.
-                      (let ((out (assoc-ref outputs "out")))
-                        (delete-file
-                         (string-append out "/share/info/info.info.gz"))
-                        #t))))))
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'fix-/bin/pwd
+           (lambda _
+             ;; Use `pwd', not `/bin/pwd'.
+             (substitute* (find-files "." "^Makefile\\.in$")
+               (("/bin/pwd")
+                "pwd"))))
+         (add-after 'install 'remove-info.info
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Remove 'info.info', which is provided by Texinfo.
+             (let ((out (assoc-ref outputs "out")))
+               (delete-file
+                (string-append out "/share/info/info.info.gz"))
+               #t)))
+         (add-after 'install 'install-site-start
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (let* ((guix-src (assoc-ref inputs "guix-src"))
+                    (out      (assoc-ref outputs "out"))
+                    (lisp-dir (string-append out "/share/emacs/"
+                                             ,(version-major+minor version)
+                                             "/site-lisp"))
+                    (unpack   (assoc-ref %standard-phases 'unpack)))
+               (mkdir "guix")
+               (with-directory-excursion "guix"
+                 (apply unpack (list #:source guix-src))
+                 (install-file "emacs/guix-emacs.el" lisp-dir))
+               (with-output-to-file (string-append lisp-dir "/site-start.el")
+                 (lambda ()
+                   (display "(require 'guix-emacs nil t)")))
+               #t))))))
     (inputs
      `(("gnutls" ,gnutls)
        ("ncurses" ,ncurses)
@@ -111,7 +129,8 @@
        ("libice" ,libice)
        ("libsm" ,libsm)
        ("alsa-lib" ,alsa-lib)
-       ("dbus" ,dbus)))
+       ("dbus" ,dbus)
+       ("guix-src" ,(package-source guix))))
     (native-inputs
      `(("pkg-config" ,pkg-config)
        ("texinfo" ,texinfo)))
-- 
2.6.3

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 4/4] doc: Describe how Emacs packages are found.
  2016-01-06 16:55 [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Alex Kost
                   ` (2 preceding siblings ...)
  2016-01-06 16:55 ` [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile" Alex Kost
@ 2016-01-06 16:55 ` Alex Kost
  2016-01-10 20:31   ` Ludovic Courtès
  2016-01-10 20:21 ` [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Ludovic Courtès
  4 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-06 16:55 UTC (permalink / raw)
  To: guix-devel

* doc/guix.texi (Application Setup)[Emacs Packages]: New subsection.
---
 doc/guix.texi | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/doc/guix.texi b/doc/guix.texi
index c252f63..7c60780 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -1051,6 +1051,25 @@ for Chinese languages:
 guix package -i font-adobe-source-han-sans:cn
 @end example
 
+@subsection Emacs Packages
+
+When you install Emacs packages with Guix, the elisp files may be placed
+either in @file{$HOME/.guix-profile/share/emacs/site-lisp/} or in
+sub-directories of
+@file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}.  The latter
+directory exists because potentially there may exist thousands of Emacs
+packages and storing all their files in a single directory may be not
+reliable (because of name conflicts).  So we think using a separate
+directory for each package is a good idea.  It is very similar to how
+Emacs package system organizes the file structure (@pxref{Package
+Files,,, emacs, The GNU Emacs Manual}).
+
+By default, Emacs (installed with Guix) ``knows'' where these packages
+are placed, so you don't need to perform any configuring.  If, for some
+reason, you want to avoid auto-loading Emacs packages, installed with
+Guix, you can do it by running Emacs with @code{--no-site-file} option
+(@pxref{Init File,,, emacs, The GNU Emacs Manual}).
+
 @c TODO What else?
 
 @c *********************************************************************
-- 
2.6.3

^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
  2016-01-06 16:55 [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Alex Kost
                   ` (3 preceding siblings ...)
  2016-01-06 16:55 ` [PATCH 4/4] doc: Describe how Emacs packages are found Alex Kost
@ 2016-01-10 20:21 ` Ludovic Courtès
  2016-01-12  9:18   ` Alex Kost
  4 siblings, 1 reply; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-10 20:21 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> So this is a full patchset to "teach" Emacs how to find emacs packages
> installed with Guix.  See conversation at
> <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.
>
> [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
> [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
> [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
> [PATCH 4/4] doc: Describe how Emacs packages are found.
>
> There is an important nuance: the 3rd patch MUST NOT be committed along
> with the first 2 patches, because it will make our Emacs package use an
> old source of 'guix' which does not contain the required changes.  So I
> think we should:
>
> 1. Push the patches 1 and 2.
>
> 2. Wait for the next update of the 'guix-devel' snapshot (last time it
>    was updated in November¹, so it will probably happen soon).
>
> 3. And finally push the patches 3 and 4.

OK.  Note that we can update ‘guix-devel’ whenever we want.  So if you
take care of pushing things, feel free to do it yourself!

Will comment on the rest separately.

Ludo’.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
  2016-01-06 16:55 ` [PATCH 1/4] emacs: Make "guix-emacs.el" independent Alex Kost
@ 2016-01-10 20:23   ` Ludovic Courtès
  0 siblings, 0 replies; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-10 20:23 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> "guix-emacs.el" may be used just for "instructing" Emacs where to find
> Emacs packages installed with Guix, so it should have as minimal
> dependencies as possible.

s/minimal/few/

> See <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00022.html>.
>
> * emacs/guix-emacs.el: Require 'guix-profiles' optionally.
>   (guix-emacs-load-autoloads): Use 'guix-profile-prompt' only if it is
>   available.

LGTM.

Ludo'.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
  2016-01-06 16:55 ` [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el" Alex Kost
@ 2016-01-10 20:23   ` Ludovic Courtès
  0 siblings, 0 replies; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-10 20:23 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> * emacs/guix-init.el: Move the code for auto-loading Emacs packages to...
>   (guix-package-enable-at-startup): Move to...
> * emacs/guix-emacs.el (guix-package-enable-at-startup): ... here.

OK!

Ludo'.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
  2016-01-06 16:55 ` [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile" Alex Kost
@ 2016-01-10 20:28   ` Ludovic Courtès
  2016-01-12  9:18     ` Alex Kost
  0 siblings, 1 reply; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-10 20:28 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel, Federico Beffa

Alex Kost <alezost@gmail.com> skribis:

> From: Federico Beffa <beffa@fbengineering.ch>
>
> * gnu/packages/emacs.scm (emacs)[inputs]: Add 'guix-src' input.
>   [arguments]: Add 'install-site-start' phase.

[...]

> +         (add-after 'install 'install-site-start

Could you add a comment like:

  ;; Copy guix-emacs.el from Guix and add it to site-start.el.  This
  ;; way, Emacs packages provided by Guix and installed in
  ;; ~/.guix-profile/share/emacs/site-lisp/guix.d/PACKAGE-VERSION are
  ;; automatically found.

Otherwise LGTM.

Also, on GuixSD, should we remove the default EMACSLOADPATH as well as
/etc/emacs/site-start.el?

Ludo’.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 4/4] doc: Describe how Emacs packages are found.
  2016-01-06 16:55 ` [PATCH 4/4] doc: Describe how Emacs packages are found Alex Kost
@ 2016-01-10 20:31   ` Ludovic Courtès
  0 siblings, 0 replies; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-10 20:31 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> * doc/guix.texi (Application Setup)[Emacs Packages]: New subsection.

[...]

> +directory for each package is a good idea.  It is very similar to how
> +Emacs package system organizes the file structure (@pxref{Package
  ^^

“the Emacs package system”
 ^^^

> +By default, Emacs (installed with Guix) ``knows'' where these packages
> +are placed, so you don't need to perform any configuring.  If, for some

s/configuring/configuration/

> +reason, you want to avoid auto-loading Emacs packages, installed with
                                                        ^
Remove comma.

Perfect, thank you & Federico for working on this!  It’s definitely an
improvement.

Ludo’.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
  2016-01-10 20:28   ` Ludovic Courtès
@ 2016-01-12  9:18     ` Alex Kost
  2016-01-13 13:53       ` Ludovic Courtès
  0 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-12  9:18 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel, Federico Beffa

Ludovic Courtès (2016-01-10 23:28 +0300) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> From: Federico Beffa <beffa@fbengineering.ch>
>>
>> * gnu/packages/emacs.scm (emacs)[inputs]: Add 'guix-src' input.
>>   [arguments]: Add 'install-site-start' phase.
>
> [...]
>
>> +         (add-after 'install 'install-site-start
>
> Could you add a comment like:
>
>   ;; Copy guix-emacs.el from Guix and add it to site-start.el.  This
>   ;; way, Emacs packages provided by Guix and installed in
>   ;; ~/.guix-profile/share/emacs/site-lisp/guix.d/PACKAGE-VERSION are
>   ;; automatically found.
>
> Otherwise LGTM.

Done for this and for your notes on other patches, thanks!

> Also, on GuixSD, should we remove the default EMACSLOADPATH as well as
> /etc/emacs/site-start.el?

If the goal for GuixSD is just to make Emacs packages work, then yes;
but if the intention is also to make "M-x guix-..." commands work
out-of-the-box, then we should leave it as it is now.

-- 
Alex

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
  2016-01-10 20:21 ` [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Ludovic Courtès
@ 2016-01-12  9:18   ` Alex Kost
  2016-01-13 13:54     ` Ludovic Courtès
  0 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-12  9:18 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Ludovic Courtès (2016-01-10 23:21 +0300) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> So this is a full patchset to "teach" Emacs how to find emacs packages
>> installed with Guix.  See conversation at
>> <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.
>>
>> [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
>> [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
>> [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
>> [PATCH 4/4] doc: Describe how Emacs packages are found.
>>
>> There is an important nuance: the 3rd patch MUST NOT be committed along
>> with the first 2 patches, because it will make our Emacs package use an
>> old source of 'guix' which does not contain the required changes.  So I
>> think we should:
>>
>> 1. Push the patches 1 and 2.
>>
>> 2. Wait for the next update of the 'guix-devel' snapshot (last time it
>>    was updated in November¹, so it will probably happen soon).
>>
>> 3. And finally push the patches 3 and 4.
>
> OK.  Note that we can update ‘guix-devel’ whenever we want.  So if you
> take care of pushing things, feel free to do it yourself!

Great, but I see that you updated guix-devel snapshot several days ago.
Would it be OK to update it again so soon?  If yes, then I will gladly
push this patchset and update guix-devel as appropriate.

-- 
Alex

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
  2016-01-12  9:18     ` Alex Kost
@ 2016-01-13 13:53       ` Ludovic Courtès
  0 siblings, 0 replies; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-13 13:53 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel, Federico Beffa

Alex Kost <alezost@gmail.com> skribis:

> Ludovic Courtès (2016-01-10 23:28 +0300) wrote:

[...]

>> Also, on GuixSD, should we remove the default EMACSLOADPATH as well as
>> /etc/emacs/site-start.el?
>
> If the goal for GuixSD is just to make Emacs packages work, then yes;
> but if the intention is also to make "M-x guix-..." commands work
> out-of-the-box, then we should leave it as it is now.

Oh right; we should leave it as is.

Thanks,
Ludo’.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
  2016-01-12  9:18   ` Alex Kost
@ 2016-01-13 13:54     ` Ludovic Courtès
  2016-01-14  8:46       ` Alex Kost
  0 siblings, 1 reply; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-13 13:54 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> Ludovic Courtès (2016-01-10 23:21 +0300) wrote:
>
>> Alex Kost <alezost@gmail.com> skribis:
>>
>>> So this is a full patchset to "teach" Emacs how to find emacs packages
>>> installed with Guix.  See conversation at
>>> <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.
>>>
>>> [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
>>> [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
>>> [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
>>> [PATCH 4/4] doc: Describe how Emacs packages are found.
>>>
>>> There is an important nuance: the 3rd patch MUST NOT be committed along
>>> with the first 2 patches, because it will make our Emacs package use an
>>> old source of 'guix' which does not contain the required changes.  So I
>>> think we should:
>>>
>>> 1. Push the patches 1 and 2.
>>>
>>> 2. Wait for the next update of the 'guix-devel' snapshot (last time it
>>>    was updated in November¹, so it will probably happen soon).
>>>
>>> 3. And finally push the patches 3 and 4.
>>
>> OK.  Note that we can update ‘guix-devel’ whenever we want.  So if you
>> take care of pushing things, feel free to do it yourself!
>
> Great, but I see that you updated guix-devel snapshot several days ago.
> Would it be OK to update it again so soon?

Sure.

> If yes, then I will gladly push this patchset and update guix-devel as
> appropriate.

OK!

Ludo’.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
  2016-01-13 13:54     ` Ludovic Courtès
@ 2016-01-14  8:46       ` Alex Kost
  2016-01-14 13:37         ` Ludovic Courtès
  0 siblings, 1 reply; 17+ messages in thread
From: Alex Kost @ 2016-01-14  8:46 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Ludovic Courtès (2016-01-13 16:54 +0300) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> Ludovic Courtès (2016-01-10 23:21 +0300) wrote:
>>
>>> Alex Kost <alezost@gmail.com> skribis:
>>>
>>>> So this is a full patchset to "teach" Emacs how to find emacs packages
>>>> installed with Guix.  See conversation at
>>>> <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.
>>>>
>>>> [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
>>>> [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
>>>> [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
>>>> [PATCH 4/4] doc: Describe how Emacs packages are found.
>>>>
>>>> There is an important nuance: the 3rd patch MUST NOT be committed along
>>>> with the first 2 patches, because it will make our Emacs package use an
>>>> old source of 'guix' which does not contain the required changes.  So I
>>>> think we should:
>>>>
>>>> 1. Push the patches 1 and 2.
>>>>
>>>> 2. Wait for the next update of the 'guix-devel' snapshot (last time it
>>>>    was updated in November¹, so it will probably happen soon).
>>>>
>>>> 3. And finally push the patches 3 and 4.
>>>
>>> OK.  Note that we can update ‘guix-devel’ whenever we want.  So if you
>>> take care of pushing things, feel free to do it yourself!
>>
>> Great, but I see that you updated guix-devel snapshot several days ago.
>> Would it be OK to update it again so soon?
>
> Sure.

Or maybe would it be better to update ‘guix-devel’ after core-updates
will be merged (since it is going to be really soon)?

>> If yes, then I will gladly push this patchset and update guix-devel as
>> appropriate.
>
> OK!

Thanks!

-- 
Alex

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
  2016-01-14  8:46       ` Alex Kost
@ 2016-01-14 13:37         ` Ludovic Courtès
  2016-01-29  9:04           ` Alex Kost
  0 siblings, 1 reply; 17+ messages in thread
From: Ludovic Courtès @ 2016-01-14 13:37 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> Ludovic Courtès (2016-01-13 16:54 +0300) wrote:
>
>> Alex Kost <alezost@gmail.com> skribis:
>>
>>> Ludovic Courtès (2016-01-10 23:21 +0300) wrote:
>>>
>>>> Alex Kost <alezost@gmail.com> skribis:
>>>>
>>>>> So this is a full patchset to "teach" Emacs how to find emacs packages
>>>>> installed with Guix.  See conversation at
>>>>> <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.
>>>>>
>>>>> [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
>>>>> [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
>>>>> [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
>>>>> [PATCH 4/4] doc: Describe how Emacs packages are found.
>>>>>
>>>>> There is an important nuance: the 3rd patch MUST NOT be committed along
>>>>> with the first 2 patches, because it will make our Emacs package use an
>>>>> old source of 'guix' which does not contain the required changes.  So I
>>>>> think we should:
>>>>>
>>>>> 1. Push the patches 1 and 2.
>>>>>
>>>>> 2. Wait for the next update of the 'guix-devel' snapshot (last time it
>>>>>    was updated in November¹, so it will probably happen soon).
>>>>>
>>>>> 3. And finally push the patches 3 and 4.
>>>>
>>>> OK.  Note that we can update ‘guix-devel’ whenever we want.  So if you
>>>> take care of pushing things, feel free to do it yourself!
>>>
>>> Great, but I see that you updated guix-devel snapshot several days ago.
>>> Would it be OK to update it again so soon?
>>
>> Sure.
>
> Or maybe would it be better to update ‘guix-devel’ after core-updates
> will be merged (since it is going to be really soon)?

Either way is fine.

(Note that it takes several days to build everything, not counting
things we might need to fix in the middle.)

Ludo’.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [PATCH 0/4] Make Emacs find packages in "~/.guix-profile".
  2016-01-14 13:37         ` Ludovic Courtès
@ 2016-01-29  9:04           ` Alex Kost
  0 siblings, 0 replies; 17+ messages in thread
From: Alex Kost @ 2016-01-29  9:04 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Ludovic Courtès (2016-01-14 16:37 +0300) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> Ludovic Courtès (2016-01-13 16:54 +0300) wrote:
>>
>>> Alex Kost <alezost@gmail.com> skribis:
>>>
>>>> Ludovic Courtès (2016-01-10 23:21 +0300) wrote:
>>>>
>>>>> Alex Kost <alezost@gmail.com> skribis:
>>>>>
>>>>>> So this is a full patchset to "teach" Emacs how to find emacs packages
>>>>>> installed with Guix.  See conversation at
>>>>>> <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00164.html>.
>>>>>>
>>>>>> [PATCH 1/4] emacs: Make "guix-emacs.el" independent.
>>>>>> [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el".
>>>>>> [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile".
>>>>>> [PATCH 4/4] doc: Describe how Emacs packages are found.
>>>>>>
>>>>>> There is an important nuance: the 3rd patch MUST NOT be committed along
>>>>>> with the first 2 patches, because it will make our Emacs package use an
>>>>>> old source of 'guix' which does not contain the required changes.  So I
>>>>>> think we should:
>>>>>>
>>>>>> 1. Push the patches 1 and 2.
>>>>>>
>>>>>> 2. Wait for the next update of the 'guix-devel' snapshot (last time it
>>>>>>    was updated in November¹, so it will probably happen soon).
>>>>>>
>>>>>> 3. And finally push the patches 3 and 4.
>>>>>
>>>>> OK.  Note that we can update ‘guix-devel’ whenever we want.  So if you
>>>>> take care of pushing things, feel free to do it yourself!
>>>>
>>>> Great, but I see that you updated guix-devel snapshot several days ago.
>>>> Would it be OK to update it again so soon?
>>>
>>> Sure.
>>
>> Or maybe would it be better to update ‘guix-devel’ after core-updates
>> will be merged (since it is going to be really soon)?
>
> Either way is fine.
>
> (Note that it takes several days to build everything, not counting
> things we might need to fix in the middle.)

I've updated guix-devel and pushed the patch for Emacs to find packages
in ~/.guix-profile.

-- 
Alex

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2016-01-29  9:04 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-06 16:55 [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Alex Kost
2016-01-06 16:55 ` [PATCH 1/4] emacs: Make "guix-emacs.el" independent Alex Kost
2016-01-10 20:23   ` Ludovic Courtès
2016-01-06 16:55 ` [PATCH 2/4] emacs: Move loading packages to "guix-emacs.el" Alex Kost
2016-01-10 20:23   ` Ludovic Courtès
2016-01-06 16:55 ` [PATCH 3/4] gnu: emacs: Find packages in "~/.guix-profile" Alex Kost
2016-01-10 20:28   ` Ludovic Courtès
2016-01-12  9:18     ` Alex Kost
2016-01-13 13:53       ` Ludovic Courtès
2016-01-06 16:55 ` [PATCH 4/4] doc: Describe how Emacs packages are found Alex Kost
2016-01-10 20:31   ` Ludovic Courtès
2016-01-10 20:21 ` [PATCH 0/4] Make Emacs find packages in "~/.guix-profile" Ludovic Courtès
2016-01-12  9:18   ` Alex Kost
2016-01-13 13:54     ` Ludovic Courtès
2016-01-14  8:46       ` Alex Kost
2016-01-14 13:37         ` Ludovic Courtès
2016-01-29  9:04           ` Alex Kost

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.