Subject: [PATCH] Update proof-general
From: John Soo <[email-masked]>
To: [email-masked]
Date: Sun, 29 Mar 2020 03:06:34 -0700
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Guix,

In my effort to use strictly guix for my emacs package management, I
found that proof-general was not working out of the box with guix.el.

In the end I could not figure out how to make it work, but I did update
proof-general to 4.4 and updated the home-page.

proof-general puts its initialization file in
%outputs/share/emacs/site-lisp/site-start.d/pg-init.el. I also see
Tuareg puts the file there. Niether that path, nor any subdirectory of
site-lisp is included by $EMACSLOADPATH or is autoloaded by guix.el.

For the record, I added
(load-file "~/.guix-profile/share/emacs/site-lisp/site-start.d/pg-init.el")
to init.el as a workaround.

Anyways, this should fix proof-general to work with the current version
of coq at least and add some more newer niceties in recent versions.

Thanks, as always!

John

>From da2d126e7eee0be0c1ca8b7e47345958e60362d3 Mon Sep 17 00:00:00 2001
From: John Soo <[email-masked]>
Date: Sun, 29 Mar 2020 02:18:56 -0700
Subject: [PATCH 1/2] gnu: proof-general: Update to 4.4.

* gnu/packages/coq.scm (proof-general): Update to 4.4.
---
 gnu/packages/coq.scm | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/gnu/packages/coq.scm b/gnu/packages/coq.scm
index 68dfc37450..937e2cc20a 100644
--- a/gnu/packages/coq.scm
+++ b/gnu/packages/coq.scm
@@ -133,15 +133,16 @@ It is developed using Objective Caml and Camlp5.")
 (define-public proof-general
   (package
     (name "proof-general")
-    (version "4.2")
+    (version "4.4")
     (source (origin
-              (method url-fetch)
-              (uri (string-append
-                    "http://proofgeneral.inf.ed.ac.uk/releases/"
-                    "ProofGeneral-" version ".tgz"))
+              (method git-fetch)
+              (uri (git-reference
+                    (url (string-append
+                          "https://github.com/ProofGeneral/PG"))
+                    (commit (string-append "v" version))))
               (sha256
                (base32
-                "09qb0myq66fw17v4ziz401ilsb5xlxz1nl2wsp69d0vrfy0bcrrm"))))
+                "0bdfk91wf71z80mdfnl8hpinripndcjgdkz854zil6521r84nqk8"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("which" ,which)
@@ -176,10 +177,6 @@ It is developed using Objective Caml and Camlp5.")
                             (emacs (assoc-ref inputs "host-emacs")))
                         (define (coq-prog name)
                           (string-append coq "/bin/" name))
-                        (emacs-substitute-variables "coq/coq.el"
-                          ("coq-prog-name"           (coq-prog "coqtop"))
-                          ("coq-compiler"            (coq-prog "coqc"))
-                          ("coq-dependency-analyzer" (coq-prog "coqdep")))
                         (substitute* "Makefile"
                           (("/sbin/install-info") "install-info"))
                         (substitute* "bin/proofgeneral"
-- 
2.26.0

>From bc79d139873c9a831f373dc7e92dacd96a80fecb Mon Sep 17 00:00:00 2001
From: John Soo <[email-masked]>
Date: Sun, 29 Mar 2020 02:26:46 -0700
Subject: [PATCH 2/2] gnu: proof-general: Update home-page.

* gnu/packages/coq.scm (proof-general):[home-page] update to proofgeneral.github.io
---
 gnu/packages/coq.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/coq.scm b/gnu/packages/coq.scm
index 937e2cc20a..2a7fae2a74 100644
--- a/gnu/packages/coq.scm
+++ b/gnu/packages/coq.scm
@@ -196,7 +196,7 @@ It is developed using Objective Caml and Camlp5.")
              (substitute* "Makefile"
                ((" [^ ]*\\.pdf") ""))
              (apply invoke "make" "install-doc" make-flags))))))
-    (home-page "http://proofgeneral.inf.ed.ac.uk/")
+    (home-page "https://proofgeneral.github.io/ ")
     (synopsis "Generic front-end for proof assistants based on Emacs")
     (description
      "Proof General is a major mode to turn Emacs into an interactive proof
-- 
2.26.0