summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-11-18 11:37:00 +0100
committerLudovic Courtès <ludo@gnu.org>2021-11-18 11:39:40 +0100
commit1db174a3addcdb6bd6cc94704a435b1d4b75b726 (patch)
treeb7746d2e1a343a8540cf66a026d95d15b292c096 /gnu
parentd28a28ff530edb30541e794263cb6aeeb886d85f (diff)
downloadguix-1db174a3addcdb6bd6cc94704a435b1d4b75b726.tar.gz
gnu: ghc: Rely on a fixed version of Git.
This makes the derivation of ghc equivalent to that found in
e55547bf70384691712047912c793c517debd2ec.

* gnu/packages/haskell.scm (ghc-8.8)[native-inputs]: Change GIT to
GIT/FIXED.
(ghc-8.10)[native-inputs]: Change GIT-MINIMAL to GIT-MINIMAL/FIXED.
* gnu/packages/version-control.scm (git/fixed): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/haskell.scm5
-rw-r--r--gnu/packages/version-control.scm26
2 files changed, 29 insertions, 2 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 35c836317a..84a9075453 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -634,7 +634,8 @@ interactive environment for the functional language Haskell.")
            (sha256
             (base32
              "0c55pj2820q26rikhpf636sn4mjgqsxjrl94vsywrh79dxp3k14z"))))
-       ("git" ,git)                     ; invoked during tests
+       ;; TODO: Change to GIT-MINIMAL/FIXED.
+       ("git" ,git/fixed)                         ; invoked during tests
        ,@(filter (match-lambda
                    (("ghc-bootstrap" . _) #f)
                    (("ghc-testsuite" . _) #f)
@@ -687,7 +688,7 @@ interactive environment for the functional language Haskell.")
            (sha256
             (base32
              "1zl25gg6bpx5601k8h3cqnns1xfc0nqgwnh8jvn2s65ra3f2g1nz"))))
-       ("git" ,git-minimal)                     ; invoked during tests
+       ("git" ,git-minimal/fixed)                 ; invoked during tests
        ,@(filter (match-lambda
                    (("ghc-bootstrap" . _) #f)
                    (("ghc-testsuite" . _) #f)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index b8f99f1885..da03aef7c7 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -669,6 +669,32 @@ everything from small to very large projects with speed and efficiency.")
                (base32
                 "0bqz401dyp8wnjj3k5ahrniwk4dalndysqazzwdvv25hqbkacm70"))))))
 
+(define-public git/fixed
+  ;; Version that rarely changes, depended on by GHC.
+  ;; TODO: Remove and use 'git-minimal/fixed' instead.
+  (package/inherit git
+    (version "2.33.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://kernel.org/software/scm/git/git-"
+                                  version ".tar.xz"))
+              (sha256
+               (base32
+                "0bqz401dyp8wnjj3k5ahrniwk4dalndysqazzwdvv25hqbkacm70"))))
+    (properties `((hidden? . #t)
+                  ,@(package-properties git)))
+    (native-inputs
+     (modify-inputs (package-native-inputs git)
+       (replace "git-manpages"
+         (origin
+           (method url-fetch)
+           (uri (string-append
+                 "mirror://kernel.org/software/scm/git/git-manpages-"
+                 version ".tar.xz"))
+           (sha256
+            (base32
+             "11xb0n1ckkm2g7r3sxsknkhsak739xg925zbz3aalv7mr7qijln7"))))))))
+
 (define-public git2cl
   (let ((commit "1d74d4c0d933fc69ed5cec838c73502584dead05"))
     (package