From ed2b7cb2f9d4b596eb1386b08164db4f8ef2a5cd Mon Sep 17 00:00:00 2001 From: André Miranda Date: Sun, 28 May 2017 13:34:10 -0300 Subject: gnu: Add 'git-remote-gcrypt' package MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/version-control.scm (git-remote-gcrypt): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/version-control.scm | 44 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'gnu/packages/version-control.scm') diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index cd684c04e7..12fc2c6cc3 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017 Vasile Dumitrascu ;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017 André ;;; ;;; This file is part of GNU Guix. ;;; @@ -423,6 +424,49 @@ 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 @code{gcrypt:} URLs that access a remote repository encrypted +with GPG, using our custom format. + +Supported locations are local, @code{rsync://} and @code{sftp://}, where the +repository is stored as a set of files, or instead any Git URL 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") -- cgit v1.2.3