summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAshish SHUKLA <ashish.is@lostca.se>2024-06-28 07:13:15 +0200
committerGuix Patches Tester <>2024-06-28 09:11:40 +0200
commitc673a93f86cf475cc91ea537646f69da6a0958a0 (patch)
tree37ef594dda69a83f09a81d62394433bd9e22b42f
parent78b881722f08325c76096557313a0faee847c66f (diff)
downloadguix-patches-issue-71764.tar
guix-patches-issue-71764.tar.gz
gnu: Add got.issue-71764
* gnu/packages/version-control.scm (got): New variable. Change-Id: I309a975c1abfad1461cf475136eae39fe31e3097
-rw-r--r--gnu/packages/version-control.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index da02d0e4ea..4a063cd221 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -52,6 +52,7 @@
;;; Copyright © 2023 Steve George <steve@futurile.net>
;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
;;; Copyright © 2024 Hilton Chain <hako@ultrarare.space>
+;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -98,6 +99,7 @@
#:use-module (gnu packages cook)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-vcs)
+ #:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
@@ -120,6 +122,8 @@
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
+ #:use-module (gnu packages libbsd)
+ #:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
#:use-module (gnu packages mail)
#:use-module (gnu packages man)
@@ -830,6 +834,52 @@ on @command{git}, and use any regular Git hosting service.")
to GitHub contributions calendar.")
(license license:expat)))
+(define-public got
+ (package
+ (name "got")
+ (version "0.100")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://gameoftrees.org/releases/portable/got-portable-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "04jhaqzskr26akmy963yc8gaw1pqbsxhgsxzd0yrssgzcwh8lfpw"))))
+ (inputs
+ `(("libevent" ,libevent)
+ ("libuuid" ,util-linux "lib")
+ ("zlib" ,zlib)
+ ("libressl" ,libressl)
+ ("libmd" ,libmd)
+ ("libbsd" ,libbsd)
+ ("ncurses" ,ncurses)))
+ (native-inputs
+ (list pkg-config perl))
+ (arguments
+ `(;; disable runpath validation, courtesy: libbsd's special
+ ;; treatment of libmd
+ #:validate-runpath? #f
+ #:configure-flags
+ '("CFLAGS=-DGOT_DIAL_PATH_SSH=\\\"ssh\\\" -DGOT_TAG_PATH_SSH_KEYGEN=\\\"ssh-keygen\\\" -DGOT_TAG_PATH_SIGNIFY=\\\"signify\\\"")
+ #:phases ,#~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-execv-to-execvp
+ (lambda _
+ ;; got sources has paths hardcoded to /usr/bin
+ (substitute* "lib/dial.c"
+ (("execv\\(GOT_DIAL_") "execvp(GOT_DIAL_")
+ (("execv %s\", GOT_DIAL") "execvp %s\", GOT_DIAL"))
+ (substitute* "lib/sigs.c"
+ (("execv\\(GOT_TAG") "execvp(GOT_TAG")
+ (("execv %s\", GOT_TAG") "execvp %s\", GOT_TAG"))
+ #t)))))
+ (build-system gnu-build-system)
+ (synopsis "Distributed version control system")
+ (description
+ "Game of Trees (Got) is a version control system which prioritizes ease of use
+and simplicity over flexibility.")
+ (license license:bsd-3)
+ (home-page "https://gameoftrees.org/")))
+
(define-public xdiff
(let ((revision "0")
(commit "a137bc7ee6c76618ed1737c257548eaa10ac0089"))