all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ashish SHUKLA via Guix-patches via <guix-patches@gnu.org>
To: 71764@debbugs.gnu.org
Cc: Ashish SHUKLA <ashish.is@lostca.se>,
	ashish.is@lostca.se, Ashish SHUKLA <ashish.is@lostca.se>,
	Ashish <ashish.is@lostca.se>
Subject: [bug#71764] [PATCH v6] gnu: Add got.
Date: Thu, 15 Aug 2024 22:05:40 +0200	[thread overview]
Message-ID: <916ff4bfcc6a6eac4af6b3126f1c7d0d1fdc709c.1723752331.git.ashish.is@lostca.se> (raw)
In-Reply-To: <d62b0fcdad8f71b4d225d6da5d0808b2e0d364c1.1719270072.git.ashish.is@lostca.se>

* gnu/packages/version-control.scm (got): New variable.

Change-Id: I309a975c1abfad1461cf475136eae39fe31e3097
---
 gnu/packages/version-control.scm | 50 ++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 9f67237d5d..7fdb8abf9b 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -53,6 +53,7 @@
 ;;; Copyright © 2023 Josselin Poiret <dev@jpoiret.xyz>
 ;;; Copyright © 2024 Hilton Chain <hako@ultrarare.space>
 ;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca>
+;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -99,6 +100,7 @@ (define-module (gnu packages version-control)
   #: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)
@@ -121,6 +123,8 @@ (define-module (gnu packages version-control)
   #: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)
@@ -877,6 +881,52 @@ (define-public git-tools
 @end itemize")
     (license license:gpl3+)))
 
+(define-public got
+  (package
+    (name "got")
+    (version "0.102")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://gameoftrees.org/releases/portable/got-portable-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "0xrpx2k6v4bypfgy378gz5s48scwgg5vh6p4wq5xc2abcvm51jxa"))))
+    (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"))

base-commit: 888fdfd1b1c4e4b3913b7b229f1ebc9f4596be20
-- 
2.46.0





  parent reply	other threads:[~2024-08-15 20:07 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-24 23:01 [bug#71764] [PATCH] gnu: Add got ashish.is--- via Guix-patches via
2024-06-24 23:27 ` [bug#71764] [PATCH v2] " ashish.is--- via Guix-patches via
2024-06-28  5:13 ` [bug#71764] [PATCH v3] " ashish.is--- via Guix-patches via
2024-07-13  9:19 ` [bug#71764] [PATCH v4] " ashish.is--- via Guix-patches via
2024-07-19 13:02 ` [bug#71764] [PATCH v5] " ashish.is--- via Guix-patches via
2024-08-15 20:05 ` Ashish SHUKLA via Guix-patches via [this message]
2024-09-12 14:00 ` [bug#71764] [PATCH v7] " Ashish SHUKLA via Guix-patches via
2024-09-17 15:36   ` Ludovic Courtès
2024-09-30 12:19 ` bug#71764: Close Andreas Enge

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=916ff4bfcc6a6eac4af6b3126f1c7d0d1fdc709c.1723752331.git.ashish.is@lostca.se \
    --to=guix-patches@gnu.org \
    --cc=71764@debbugs.gnu.org \
    --cc=ashish.is@lostca.se \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.