summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun Isaac2023-05-30 20:53:31 +0100
committerArun Isaac2023-05-30 21:16:48 +0100
commit94dc69122acf0c3342293b88d24a7f15d9749a78 (patch)
treed5a62a01e986483f756bdf93b70aa8208270dff4
parent708d646fccdf5f860c1b3ddd6b0eec324093d34a (diff)
downloadtissue-94dc69122acf0c3342293b88d24a7f15d9749a78.tar.gz
tissue-94dc69122acf0c3342293b88d24a7f15d9749a78.tar.lz
tissue-94dc69122acf0c3342293b88d24a7f15d9749a78.zip
guix.scm: Work around libgit2 repository ownership validation bug.
* guix.scm: Import guile-git from (gnu packages guile) and libgit2-1.3 from (gnu packages version-control) with the guix: prefix. (libgit2, guile-git): New variables. (tissue)[inputs]: Use guile-git.
-rw-r--r--guix.scm34
1 files changed, 33 insertions, 1 deletions
diff --git a/guix.scm b/guix.scm
index 953eb3c..08847da 100644
--- a/guix.scm
+++ b/guix.scm
@@ -17,18 +17,50 @@
;;; along with tissue. If not, see <https://www.gnu.org/licenses/>.
(use-modules ((gnu packages fonts) #:select (font-ibm-plex))
+ ((gnu packages guile) #:select (guile-git) #:prefix guix:)
+ ((gnu packages version-control) #:select (libgit2-1.3) #:prefix guix:)
((gnu packages web) #:select (tissue) #:prefix guix:)
(guix gexp)
(guix git-download)
- (guix packages))
+ (guix packages)
+ (guix utils))
(define %source-dir (dirname (current-filename)))
+;; Run this version of libgit2 for guile-git until guile-git is
+;; updated upstream and https://github.com/libgit2/libgit2/issues/6536
+;; is fixed.
+(define-public libgit2
+ (package
+ (inherit guix:libgit2-1.3)
+ (name "libgit2")
+ (arguments
+ (substitute-keyword-arguments (package-arguments guix:libgit2-1.3)
+ ((#:phases phases #~%standard-phases)
+ #~(modify-phases #$phases
+ ;; Disable ownership validation until
+ ;; https://github.com/libgit2/libgit2/issues/6536 is fixed.
+ (add-after 'unpack 'disable-ownership-validation
+ (lambda _
+ (substitute* "src/repository.c"
+ (("git_repository__validate_ownership = true")
+ "git_repository__validate_ownership = false"))))))))))
+
+(define-public guile-git
+ (package
+ (inherit guix:guile-git)
+ (inputs
+ (modify-inputs (package-inputs guix:guile-git)
+ (replace "libgit2" libgit2)))))
+
(package
(inherit guix:tissue)
(source (local-file %source-dir
#:recursive? #t
#:select? (git-predicate %source-dir)))
+ (inputs
+ (modify-inputs (package-inputs guix:tissue)
+ (replace "guile-git" guile-git)))
(native-inputs
(modify-inputs (package-native-inputs guix:tissue)
(prepend font-ibm-plex))))