Subject: [PATCH] gnu: Add git-remote-gcrypt

From: André <[email-masked]>
Date: Sun, 28 May 2017 17:36:03 -0300

This is my first patch, so please forgive any formatting or similar.

I couldn't get git send-mail to work, so I attached the patch manually.
I hope nothing is missing

Thanks!

From 65d318af9c5bbf801d47417745d0651352caf557 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Miranda?= <[email-masked]>
Date: Sun, 28 May 2017 13:34:10 -0300
Subject: [PATCH] gnu: Add 'git-remote-gcrypt' package

* gnu/packages/version-control.scm: Add 'git-remote-gcrypt' package.
---
 gnu/packages/version-control.scm | 42 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index cd684c04e..eced2c953 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -423,6 +423,48 @@ as keys or passwords) in the same repository as your code, without requiring you
 to lock down your entire repository.")
     (license license:gpl3+)))
 
+(define-public git-remote-gcrypt
+  (package
+   (name "git-remote-gcrypt")
+   (version "1.0.1")
+   (source (origin
+             (method git-fetch)
+             (uri (git-reference
+                   (url "https://git.spwhitton.name/git-remote-gcrypt")
+                   (commit version)))
+             (file-name (string-append name "-" version "-checkout"))
+             (sha256
+              (base32
+               "0znrx77vpm4a8l7yiybsxk5vrawijqqfxmp1p2yhaaw8cbgrj7az"))))
+   (build-system trivial-build-system)
+   (arguments
+    `(#:modules ((guix build utils))
+      #:builder (begin
+                  (use-modules (guix build utils))
+                  (let* ((source (assoc-ref %build-inputs "source"))
+                         (output (assoc-ref %outputs "out"))
+                         (bindir (string-append output "/bin")))
+                    (install-file (string-append source "/git-remote-gcrypt")
+                                  bindir)
+                    #t))))
+   (home-page "https://spwhitton.name/tech/code/git-remote-gcrypt/")
+   (synopsis "Whole remote repository encryption")
+   (description "git-remote-gcrypt is a git remote helper to push and pull from
+repositories encrypted with GnuPG.  It works with the standard git transports,
+including repository hosting services like GitLab.
+
+Remote helper programs are invoked by git to handle network transport.  This
+helper handles gcrypt:: URLs that will access a remote repository encrypted with
+GPG, using our custom format.
+
+Supported locations are local, rsync:// and sftp://, where the repository is
+stored as a set of files, or instead any <giturl> where gcrypt will store the
+same representation in a git repository, bridged over arbitrary git transport.
+
+The aim is to provide confidential, authenticated git storage and collaboration
+using typical untrusted file hosts or services.")
+   (license license:gpl3+)))
+
 (define-public cgit
   (package
     (name "cgit")
-- 
2.12.2