unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: magit: Update to 2.2.0.
@ 2015-08-17 18:56 Alex Kost
  2015-08-17 19:38 ` Thompson, David
  2015-08-22 17:31 ` Mark H Weaver
  0 siblings, 2 replies; 12+ messages in thread
From: Alex Kost @ 2015-08-17 18:56 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 100 bytes --]

Thanks, Mark, for the hint about using (package-version emacs-dash) to
define its elisp directory.


[-- Attachment #2: 0001-gnu-magit-Update-to-2.2.0.patch --]
[-- Type: text/x-patch, Size: 5508 bytes --]

From 55e67d4f3867f11a77b9a91d4c3c54599846cc83 Mon Sep 17 00:00:00 2001
From: Alex Kost <alezost@gmail.com>
Date: Mon, 17 Aug 2015 21:44:40 +0300
Subject: [PATCH] gnu: magit: Update to 2.2.0.

* gnu/packages/emacs.scm (magit): Update to 2.2.0.
  [inputs]: Remove 'git:gui'.
  [propagated-inputs]: Add 'dash', remove 'git-modes'.
  [arguments]: Enable tests.  Add VERSION, PREFIX and DASH_DIR to
  'make-flags'.  Remove 'configure', 'augment-load-path' and
  'post-install' phases.
---
 gnu/packages/emacs.scm | 69 ++++++++++++++++++--------------------------------
 1 file changed, 25 insertions(+), 44 deletions(-)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index b73d80c..56083f2 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
+;;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;;
@@ -311,21 +311,21 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
 (define-public magit
   (package
     (name "magit")
-    (version "1.4.2")
+    (version "2.2.0")
     (source (origin
-             (method url-fetch)
-             (uri (string-append
-                   "https://github.com/magit/magit/releases/download/"
-                   version "/" name "-" version ".tar.gz"))
-             (sha256
-              (base32
-               "1g3bxvgabiis2y338jziycx4b61vrim4lzmqnzv78094s8azzb52"))))
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/magit/magit/archive/"
+                    version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1jfak9yypvhlbxjdvpl9w28zz0lyymz0pm9fvb6cpnss3nb4fz4l"))))
     (build-system gnu-build-system)
     (native-inputs `(("texinfo" ,texinfo)
                      ("emacs" ,emacs-no-x)))
-    (inputs `(("git" ,git)
-              ("git:gui" ,git "gui")))
-    (propagated-inputs `(("git-modes" ,git-modes)))
+    (inputs `(("git" ,git)))
+    (propagated-inputs `(("dash" ,emacs-dash)))
     (arguments
      `(#:modules ((guix build gnu-build-system)
                   (guix build utils)
@@ -334,45 +334,26 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
                            (guix build emacs-utils))
 
        #:test-target "test"
-       #:tests? #f                          ;'tests/magit-tests.el' is missing
 
-       #:make-flags (list
-                     ;; Don't put .el files in a sub-directory.
-                     (string-append "lispdir=" (assoc-ref %outputs "out")
-                                    "/share/emacs/site-lisp"))
+       #:make-flags
+       (list (string-append "VERSION=" ,version)
+             (string-append "PREFIX=" %output)
+             ;; Don't put .el files in a sub-directory.
+             (string-append "lispdir=" %output "/share/emacs/site-lisp")
+             (string-append "DASH_DIR="
+                            (assoc-ref %build-inputs "dash")
+                            "/share/emacs/site-lisp/guix.d/dash-"
+                            ,(package-version emacs-dash)))
 
        #:phases
        (modify-phases %standard-phases
-         (replace
-          'configure
-          (lambda* (#:key outputs #:allow-other-keys)
-            (let ((out (assoc-ref outputs "out")))
-              (substitute* "Makefile"
-                (("/usr/local") out)
-                (("/etc") (string-append out "/etc"))))))
+         (delete 'configure)
          (add-before
           'build 'patch-exec-paths
           (lambda* (#:key inputs #:allow-other-keys)
-            (let ((git (assoc-ref inputs "git"))
-                  (git:gui (assoc-ref inputs "git:gui")))
-              (emacs-substitute-variables "magit.el"
-                ("magit-git-executable" (string-append git "/bin/git"))
-                ("magit-gitk-executable" (string-append git:gui
-                                                        "/bin/gitk"))))))
-         (add-before
-          'build 'augment-load-path
-          (lambda* (#:key inputs #:allow-other-keys)
-            ;; Allow git-commit-mode.el & co. to be found.
-            (let ((git-modes (assoc-ref inputs "git-modes")))
-              (setenv "EMACSLOADPATH"
-                      (string-append ":" git-modes "/share/emacs/site-lisp"))
-              #t)))
-         (add-after
-          'install 'post-install
-          (lambda* (#:key outputs #:allow-other-keys)
-            (emacs-generate-autoloads
-             ,name (string-append (assoc-ref outputs "out")
-                                  "/share/emacs/site-lisp/")))))))
+            (let ((git (assoc-ref inputs "git")))
+              (emacs-substitute-variables "lisp/magit-git.el"
+                ("magit-git-executable" (string-append git "/bin/git")))))))))
     (home-page "http://magit.github.io/")
     (synopsis "Emacs interface for the Git version control system")
     (description
-- 
2.4.3


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

* Re: [PATCH] gnu: magit: Update to 2.2.0.
  2015-08-17 18:56 [PATCH] gnu: magit: Update to 2.2.0 Alex Kost
@ 2015-08-17 19:38 ` Thompson, David
  2015-08-18  7:19   ` Alex Kost
  2015-08-22 17:31 ` Mark H Weaver
  1 sibling, 1 reply; 12+ messages in thread
From: Thompson, David @ 2015-08-17 19:38 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

On Mon, Aug 17, 2015 at 2:56 PM, Alex Kost <alezost@gmail.com> wrote:
> Thanks, Mark, for the hint about using (package-version emacs-dash) to
> define its elisp directory.

The patch looks good to me.  Just one question: Should we leave the
magit 1.4 package around for awhile?  Magit 2.0 is a pretty huge
change.  I don't have a preference, but figured I'd throw it out
there.

- Dave

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

* Re: [PATCH] gnu: magit: Update to 2.2.0.
  2015-08-17 19:38 ` Thompson, David
@ 2015-08-18  7:19   ` Alex Kost
  2015-08-18 12:11     ` Thompson, David
  0 siblings, 1 reply; 12+ messages in thread
From: Alex Kost @ 2015-08-18  7:19 UTC (permalink / raw)
  To: Thompson, David; +Cc: guix-devel

Thompson, David (2015-08-17 22:38 +0300) wrote:

> The patch looks good to me.  Just one question: Should we leave the
> magit 1.4 package around for awhile?  Magit 2.0 is a pretty huge
> change.  I don't have a preference, but figured I'd throw it out
> there.

Magit 1.4 is obsolete and "Magit 1 series" is not developed anymore.  So
in my opinion it should just be updated, but I don't mind to keep it if
others would like to have it.

-- 
Alex

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

* Re: [PATCH] gnu: magit: Update to 2.2.0.
  2015-08-18  7:19   ` Alex Kost
@ 2015-08-18 12:11     ` Thompson, David
  0 siblings, 0 replies; 12+ messages in thread
From: Thompson, David @ 2015-08-18 12:11 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

On Tue, Aug 18, 2015 at 3:19 AM, Alex Kost <alezost@gmail.com> wrote:
> Thompson, David (2015-08-17 22:38 +0300) wrote:
>
>> The patch looks good to me.  Just one question: Should we leave the
>> magit 1.4 package around for awhile?  Magit 2.0 is a pretty huge
>> change.  I don't have a preference, but figured I'd throw it out
>> there.
>
> Magit 1.4 is obsolete and "Magit 1 series" is not developed anymore.  So
> in my opinion it should just be updated, but I don't mind to keep it if
> others would like to have it.

OK, sounds like just upgrading it is the right thing!

- Dave

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

* Re: [PATCH] gnu: magit: Update to 2.2.0.
  2015-08-17 18:56 [PATCH] gnu: magit: Update to 2.2.0 Alex Kost
  2015-08-17 19:38 ` Thompson, David
@ 2015-08-22 17:31 ` Mark H Weaver
  2015-08-22 20:48   ` Alex Kost
  2015-08-25 19:04   ` [PATCH] gnu: magit: Update to 2.2.1 Alex Kost
  1 sibling, 2 replies; 12+ messages in thread
From: Mark H Weaver @ 2015-08-22 17:31 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> writes:

> From 55e67d4f3867f11a77b9a91d4c3c54599846cc83 Mon Sep 17 00:00:00 2001
> From: Alex Kost <alezost@gmail.com>
> Date: Mon, 17 Aug 2015 21:44:40 +0300
> Subject: [PATCH] gnu: magit: Update to 2.2.0.
>
> * gnu/packages/emacs.scm (magit): Update to 2.2.0.
>   [inputs]: Remove 'git:gui'.
>   [propagated-inputs]: Add 'dash', remove 'git-modes'.
>   [arguments]: Enable tests.  Add VERSION, PREFIX and DASH_DIR to
>   'make-flags'.  Remove 'configure', 'augment-load-path' and
>   'post-install' phases.

[...]

> +       #:make-flags
> +       (list (string-append "VERSION=" ,version)

Interesting, you have to tell it what it's own version number is?

>           (add-before
>            'build 'patch-exec-paths
>            (lambda* (#:key inputs #:allow-other-keys)
> -            (let ((git (assoc-ref inputs "git"))
> -                  (git:gui (assoc-ref inputs "git:gui")))
> -              (emacs-substitute-variables "magit.el"
> -                ("magit-git-executable" (string-append git "/bin/git"))
> -                ("magit-gitk-executable" (string-append git:gui
> -                                                        "/bin/gitk"))))))

Does magit 2 no longer use gitk?

> -         (add-before
> -          'build 'augment-load-path
> -          (lambda* (#:key inputs #:allow-other-keys)
> -            ;; Allow git-commit-mode.el & co. to be found.
> -            (let ((git-modes (assoc-ref inputs "git-modes")))
> -              (setenv "EMACSLOADPATH"
> -                      (string-append ":" git-modes "/share/emacs/site-lisp"))
> -              #t)))
> -         (add-after
> -          'install 'post-install
> -          (lambda* (#:key outputs #:allow-other-keys)
> -            (emacs-generate-autoloads
> -             ,name (string-append (assoc-ref outputs "out")
> -                                  "/share/emacs/site-lisp/")))))))

Are the autoloads installed by magit 2?

> +            (let ((git (assoc-ref inputs "git")))
> +              (emacs-substitute-variables "lisp/magit-git.el"
> +                ("magit-git-executable" (string-append git "/bin/git")))))))))

Return #t from this phase procedure.

Otherwise, looks good to me!  I haven't yet tried magit 2, but for now I
will take your word for it that we don't need magit 1 anymore.  We can
always add it later if there's demand for it.

     Thanks!
       Mark

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

* Re: [PATCH] gnu: magit: Update to 2.2.0.
  2015-08-22 17:31 ` Mark H Weaver
@ 2015-08-22 20:48   ` Alex Kost
  2015-08-25 19:04   ` [PATCH] gnu: magit: Update to 2.2.1 Alex Kost
  1 sibling, 0 replies; 12+ messages in thread
From: Alex Kost @ 2015-08-22 20:48 UTC (permalink / raw)
  To: Mark H Weaver; +Cc: guix-devel

Mark H Weaver (2015-08-22 20:31 +0300) wrote:

> Alex Kost <alezost@gmail.com> writes:
>
>> From 55e67d4f3867f11a77b9a91d4c3c54599846cc83 Mon Sep 17 00:00:00 2001
>> From: Alex Kost <alezost@gmail.com>
>> Date: Mon, 17 Aug 2015 21:44:40 +0300
>> Subject: [PATCH] gnu: magit: Update to 2.2.0.
>>
>> * gnu/packages/emacs.scm (magit): Update to 2.2.0.
>>   [inputs]: Remove 'git:gui'.
>>   [propagated-inputs]: Add 'dash', remove 'git-modes'.
>>   [arguments]: Enable tests.  Add VERSION, PREFIX and DASH_DIR to
>>   'make-flags'.  Remove 'configure', 'augment-load-path' and
>>   'post-install' phases.
>
> [...]
>
>> +       #:make-flags
>> +       (list (string-append "VERSION=" ,version)
>
> Interesting, you have to tell it what it's own version number is?

Yes, it tries to define the version using "git describe --tags ..." and
then it generates "magit-version.el" which is used only to set 'magit-version'
variable.

I think the main problem with this package (and many other packages,
sigh) is that there is no configure script, so there are some
workarounds to reinvent the wheel.

>>           (add-before
>>            'build 'patch-exec-paths
>>            (lambda* (#:key inputs #:allow-other-keys)
>> -            (let ((git (assoc-ref inputs "git"))
>> -                  (git:gui (assoc-ref inputs "git:gui")))
>> -              (emacs-substitute-variables "magit.el"
>> -                ("magit-git-executable" (string-append git "/bin/git"))
>> -                ("magit-gitk-executable" (string-append git:gui
>> -                                                        "/bin/gitk"))))))
>
> Does magit 2 no longer use gitk?

I don't see any sign of gitk (I don't understand why it was used before).

>> -         (add-before
>> -          'build 'augment-load-path
>> -          (lambda* (#:key inputs #:allow-other-keys)
>> -            ;; Allow git-commit-mode.el & co. to be found.
>> -            (let ((git-modes (assoc-ref inputs "git-modes")))
>> -              (setenv "EMACSLOADPATH"
>> -                      (string-append ":" git-modes "/share/emacs/site-lisp"))
>> -              #t)))
>> -         (add-after
>> -          'install 'post-install
>> -          (lambda* (#:key outputs #:allow-other-keys)
>> -            (emacs-generate-autoloads
>> -             ,name (string-append (assoc-ref outputs "out")
>> -                                  "/share/emacs/site-lisp/")))))))
>
> Are the autoloads installed by magit 2?

Yes.

>> +            (let ((git (assoc-ref inputs "git")))
>> +              (emacs-substitute-variables "lisp/magit-git.el"
>> +                ("magit-git-executable" (string-append git "/bin/git")))))))))
>
> Return #t from this phase procedure.

Ah, OK.  At first I blindly thought if 'emacs-substitute-variables'
succeeds, it returns #t, but now I see that it's not the case.  I see
that other emacs packages (except 'emacs-w3m') don't return #t after
this "substitute vars" phase.  So perhaps it would be better to modify
'emacs-batch-edit-file' (and 'emacs-batch-eval') from (guix build
emacs-utils) to return #t if everything was OK.  WDYT?

> Otherwise, looks good to me!  I haven't yet tried magit 2, but for now I
> will take your word for it that we don't need magit 1 anymore.  We can
> always add it later if there's demand for it.

OK, but I don't think it should be done, because it is obsolete and
there will be no Magit 1.4.3 or 1.5, only 2.X.X.

But switching from Magit 1.4 to 2 requires some… I don't know how to
say… attention, especially if you have many settings for the old Magit.
The new magit was mostly rewritten, so its settings differ a lot.

-- 
Alex

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

* [PATCH] gnu: magit: Update to 2.2.1.
  2015-08-22 17:31 ` Mark H Weaver
  2015-08-22 20:48   ` Alex Kost
@ 2015-08-25 19:04   ` Alex Kost
  2015-08-27  9:18     ` Ludovic Courtès
  1 sibling, 1 reply; 12+ messages in thread
From: Alex Kost @ 2015-08-25 19:04 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 670 bytes --]

Magit 2.2.0 is not actual anymore, so here is the updated patch.  I have
a question however: I've noticed that there are 2 tarballs available:

- <https://github.com/magit/magit/releases/download/2.2.1/magit-2.2.1.tar.gz>

  This one does not include tests, but it has "magit-version.el" file so
  there is no need to specify "VERSION" flag (see
  <http://lists.gnu.org/archive/html/guix-devel/2015-08/msg00487.html>).

- <https://github.com/magit/magit/archive/2.2.1.tar.gz>

  This is a "raw" snapshot of the repo, so there are tests, but
  "VERSION" flag should be specified.

So what tarball should we use?  I think it's better to take the second
one (with tests).


[-- Attachment #2: 0001-gnu-magit-Update-to-2.2.1.patch --]
[-- Type: text/x-patch, Size: 5250 bytes --]

From ae74c836d38f3fb60ba0682c0b5010b81f6793c9 Mon Sep 17 00:00:00 2001
From: Alex Kost <alezost@gmail.com>
Date: Mon, 17 Aug 2015 21:44:40 +0300
Subject: [PATCH] gnu: magit: Update to 2.2.1.

* gnu/packages/emacs.scm (magit): Update to 2.2.1.
  [inputs]: Remove 'git:gui'.
  [propagated-inputs]: Add 'dash', remove 'git-modes'.
  [arguments]: Add PREFIX and DASH_DIR to 'make-flags'.  Remove
  'configure', 'augment-load-path' and 'post-install' phases.
---
 gnu/packages/emacs.scm | 57 +++++++++++++++++---------------------------------
 1 file changed, 19 insertions(+), 38 deletions(-)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index b73d80c..71e263f 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
+;;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;;
@@ -311,7 +311,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
 (define-public magit
   (package
     (name "magit")
-    (version "1.4.2")
+    (version "2.2.1")
     (source (origin
              (method url-fetch)
              (uri (string-append
@@ -319,13 +319,12 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
                    version "/" name "-" version ".tar.gz"))
              (sha256
               (base32
-               "1g3bxvgabiis2y338jziycx4b61vrim4lzmqnzv78094s8azzb52"))))
+               "0bjdj4468i5w3j2i945b6psb6n04z34vhjaqr0iz4xgixk3wiqmh"))))
     (build-system gnu-build-system)
     (native-inputs `(("texinfo" ,texinfo)
                      ("emacs" ,emacs-no-x)))
-    (inputs `(("git" ,git)
-              ("git:gui" ,git "gui")))
-    (propagated-inputs `(("git-modes" ,git-modes)))
+    (inputs `(("git" ,git)))
+    (propagated-inputs `(("dash" ,emacs-dash)))
     (arguments
      `(#:modules ((guix build gnu-build-system)
                   (guix build utils)
@@ -334,45 +333,27 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.")
                            (guix build emacs-utils))
 
        #:test-target "test"
-       #:tests? #f                          ;'tests/magit-tests.el' is missing
+       #:tests? #f               ; tests are not included in the release
 
-       #:make-flags (list
-                     ;; Don't put .el files in a sub-directory.
-                     (string-append "lispdir=" (assoc-ref %outputs "out")
-                                    "/share/emacs/site-lisp"))
+       #:make-flags
+       (list (string-append "PREFIX=" %output)
+             ;; Don't put .el files in a sub-directory.
+             (string-append "lispdir=" %output "/share/emacs/site-lisp")
+             (string-append "DASH_DIR="
+                            (assoc-ref %build-inputs "dash")
+                            "/share/emacs/site-lisp/guix.d/dash-"
+                            ,(package-version emacs-dash)))
 
        #:phases
        (modify-phases %standard-phases
-         (replace
-          'configure
-          (lambda* (#:key outputs #:allow-other-keys)
-            (let ((out (assoc-ref outputs "out")))
-              (substitute* "Makefile"
-                (("/usr/local") out)
-                (("/etc") (string-append out "/etc"))))))
+         (delete 'configure)
          (add-before
           'build 'patch-exec-paths
           (lambda* (#:key inputs #:allow-other-keys)
-            (let ((git (assoc-ref inputs "git"))
-                  (git:gui (assoc-ref inputs "git:gui")))
-              (emacs-substitute-variables "magit.el"
-                ("magit-git-executable" (string-append git "/bin/git"))
-                ("magit-gitk-executable" (string-append git:gui
-                                                        "/bin/gitk"))))))
-         (add-before
-          'build 'augment-load-path
-          (lambda* (#:key inputs #:allow-other-keys)
-            ;; Allow git-commit-mode.el & co. to be found.
-            (let ((git-modes (assoc-ref inputs "git-modes")))
-              (setenv "EMACSLOADPATH"
-                      (string-append ":" git-modes "/share/emacs/site-lisp"))
-              #t)))
-         (add-after
-          'install 'post-install
-          (lambda* (#:key outputs #:allow-other-keys)
-            (emacs-generate-autoloads
-             ,name (string-append (assoc-ref outputs "out")
-                                  "/share/emacs/site-lisp/")))))))
+            (let ((git (assoc-ref inputs "git")))
+              (emacs-substitute-variables "lisp/magit-git.el"
+                ("magit-git-executable" (string-append git "/bin/git")))
+              #t))))))
     (home-page "http://magit.github.io/")
     (synopsis "Emacs interface for the Git version control system")
     (description
-- 
2.4.3


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

* Re: [PATCH] gnu: magit: Update to 2.2.1.
  2015-08-25 19:04   ` [PATCH] gnu: magit: Update to 2.2.1 Alex Kost
@ 2015-08-27  9:18     ` Ludovic Courtès
  2015-08-27 15:20       ` Alex Kost
  0 siblings, 1 reply; 12+ messages in thread
From: Ludovic Courtès @ 2015-08-27  9:18 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> Magit 2.2.0 is not actual anymore, so here is the updated patch.  I have
> a question however: I've noticed that there are 2 tarballs available:
>
> - <https://github.com/magit/magit/releases/download/2.2.1/magit-2.2.1.tar.gz>
>
>   This one does not include tests, but it has "magit-version.el" file so
>   there is no need to specify "VERSION" flag (see
>   <http://lists.gnu.org/archive/html/guix-devel/2015-08/msg00487.html>).
>
> - <https://github.com/magit/magit/archive/2.2.1.tar.gz>
>
>   This is a "raw" snapshot of the repo, so there are tests, but
>   "VERSION" flag should be specified.
>
> So what tarball should we use?  I think it's better to take the second
> one (with tests).

Yes, makes sense.

> From ae74c836d38f3fb60ba0682c0b5010b81f6793c9 Mon Sep 17 00:00:00 2001
> From: Alex Kost <alezost@gmail.com>
> Date: Mon, 17 Aug 2015 21:44:40 +0300
> Subject: [PATCH] gnu: magit: Update to 2.2.1.
>
> * gnu/packages/emacs.scm (magit): Update to 2.2.1.
>   [inputs]: Remove 'git:gui'.
>   [propagated-inputs]: Add 'dash', remove 'git-modes'.
>   [arguments]: Add PREFIX and DASH_DIR to 'make-flags'.  Remove
>   'configure', 'augment-load-path' and 'post-install' phases.

LGTM.

You should merge it with the magit-svn update at
<https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00383.html> so
we keep a working tool set.

OK to push this combo!

Thanks,
Ludo’.

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

* Re: [PATCH] gnu: magit: Update to 2.2.1.
  2015-08-27  9:18     ` Ludovic Courtès
@ 2015-08-27 15:20       ` Alex Kost
  2015-08-29 14:39         ` Magit 2 troubleshooting Ludovic Courtès
  0 siblings, 1 reply; 12+ messages in thread
From: Alex Kost @ 2015-08-27 15:20 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Ludovic Courtès (2015-08-27 12:18 +0300) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> From ae74c836d38f3fb60ba0682c0b5010b81f6793c9 Mon Sep 17 00:00:00 2001
>> From: Alex Kost <alezost@gmail.com>
>> Date: Mon, 17 Aug 2015 21:44:40 +0300
>> Subject: [PATCH] gnu: magit: Update to 2.2.1.
>>
>> * gnu/packages/emacs.scm (magit): Update to 2.2.1.
>>   [inputs]: Remove 'git:gui'.
>>   [propagated-inputs]: Add 'dash', remove 'git-modes'.
>>   [arguments]: Add PREFIX and DASH_DIR to 'make-flags'.  Remove
>>   'configure', 'augment-load-path' and 'post-install' phases.
>
> LGTM.
>
> You should merge it with the magit-svn update at
> <https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00383.html> so
> we keep a working tool set.
>
> OK to push this combo!

Sure!  I have pushed updates for all 3 git related emacs packages
(magit, magit-svn and git-modes), thanks.

So I wish people good luck with moving to Magit2 :-)

-- 
Alex

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

* Magit 2 troubleshooting
  2015-08-27 15:20       ` Alex Kost
@ 2015-08-29 14:39         ` Ludovic Courtès
  2015-08-29 22:19           ` Alex Kost
  2015-08-29 22:37           ` Alex Kost
  0 siblings, 2 replies; 12+ messages in thread
From: Ludovic Courtès @ 2015-08-29 14:39 UTC (permalink / raw)
  To: Alex Kost; +Cc: guix-devel

Alex Kost <alezost@gmail.com> skribis:

> So I wish people good luck with moving to Magit2 :-)

So!  I’ve upgraded ‘magit’ and ‘magit-svn’, but now (require 'magit-svn)
yields this:

--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (void-function magit-key-mode-add-group)
  magit-key-mode-add-group(svn)
  byte-code("\301\300\302\303\304$\210\305\306\307\b#\210\310\311!\210\312\311\313\314\315$\210\312\311\316\317\320$\210\312\311\321\322\323$\210\312\311\324\325\326$\210\312\311\327\330\331$\210\312\311\332\333\334$\210\312\311\335\336\337$\210\340\311\341\342\343$\210\344\311!\207" [magit-svn-extension-menu easy-menu-do-define nil "Git SVN extension menu" ("Git SVN" :visible magit-svn-mode ["Create branch" magit-svn-create-branch (magit-svn-enabled)] ["Rebase" magit-svn-rebase (magit-svn-enabled)] ["Fetch" magit-svn-remote-update (magit-svn-enabled)] ["Commit" magit-svn-dcommit (magit-svn-enabled)]) easy-menu-add-item magit-mode-menu ("Extensions") magit-key-mode-add-group svn magit-key-mode-insert-action "r" "Rebase" magit-svn-rebase "c" "DCommit" magit-svn-dcommit "f" "Fetch" magit-svn-remote-update "s" "Find rev" magit-svn-find-rev "B" "Create branch" magit-svn-create-branch "T" "Create tag" magit-svn-create-tag "x" "Fetch Externals" magit-svn-fetch-externals magit-key-mode-insert-switch "-n" "Dry run" "--dry-run" magit-key-mode-generate] 5)
  require(magit-svn)
  eval((require (quote magit-svn)) nil)
  eval-expression((require (quote magit-svn)) nil)
  call-interactively(eval-expression nil nil)
  command-execute(eval-expression)
--8<---------------cut here---------------end--------------->8---

Does that ring a bell?

(Another thing I noticed is that the ‘git-commit-mode’ module has been
renamed to ‘git-commit’.  Just mentioning it in case someone gets hit by
this one.)

Ludo’.

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

* Re: Magit 2 troubleshooting
  2015-08-29 14:39         ` Magit 2 troubleshooting Ludovic Courtès
@ 2015-08-29 22:19           ` Alex Kost
  2015-08-29 22:37           ` Alex Kost
  1 sibling, 0 replies; 12+ messages in thread
From: Alex Kost @ 2015-08-29 22:19 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

Ludovic Courtès (2015-08-29 17:39 +0300) wrote:

> Alex Kost <alezost@gmail.com> skribis:
>
>> So I wish people good luck with moving to Magit2 :-)
>
> So!  I’ve upgraded ‘magit’ and ‘magit-svn’, but now (require 'magit-svn)
> yields this:
>
>
> Debugger entered--Lisp error: (void-function magit-key-mode-add-group)
>   magit-key-mode-add-group(svn)
[...]
> Does that ring a bell?

I don't see any reference to 'magit-key-mode-add-group' in
"magit-svn.el".  May it happen because you have an old "magit-svn" in
your "~/.emacs.d/elpa/" dir which has a priority over "magit-svn" from
guix?

> (Another thing I noticed is that the ‘git-commit-mode’ module has been
> renamed to ‘git-commit’.  Just mentioning it in case someone gets hit by
> this one.)

As well, as ‘git-rebase-mode’ → ‘git-rebase’.

-- 
Alex

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

* Re: Magit 2 troubleshooting
  2015-08-29 14:39         ` Magit 2 troubleshooting Ludovic Courtès
  2015-08-29 22:19           ` Alex Kost
@ 2015-08-29 22:37           ` Alex Kost
  1 sibling, 0 replies; 12+ messages in thread
From: Alex Kost @ 2015-08-29 22:37 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

AFAICT the root of the problems you faced is that by default
"~/.guix-profile/share/emacs/site-lisp/" and
"~/.guix-profile/share/emacs/site-lisp/guix.d/…" directories are added
to 'load-path' before "~/.emacs.d/elpa/…" so the packages installed from
elpa/melpa/… have a priority.  This may lead to the problems you have
with the old "dash" and "magit-svn".

I think to avoid such clashes, we may choose not to use propagated
inputs for emacs packages, and to replace (require 'foo) clauses with
(require 'foo "/gnu/store/…") ones instead.  This is Taylan's idea:
<https://gnunet.org/bot/log/guix/2015-08-10#T722221>

-- 
Alex

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

end of thread, other threads:[~2015-08-29 22:37 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-17 18:56 [PATCH] gnu: magit: Update to 2.2.0 Alex Kost
2015-08-17 19:38 ` Thompson, David
2015-08-18  7:19   ` Alex Kost
2015-08-18 12:11     ` Thompson, David
2015-08-22 17:31 ` Mark H Weaver
2015-08-22 20:48   ` Alex Kost
2015-08-25 19:04   ` [PATCH] gnu: magit: Update to 2.2.1 Alex Kost
2015-08-27  9:18     ` Ludovic Courtès
2015-08-27 15:20       ` Alex Kost
2015-08-29 14:39         ` Magit 2 troubleshooting Ludovic Courtès
2015-08-29 22:19           ` Alex Kost
2015-08-29 22:37           ` Alex Kost

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).