From 65d318af9c5bbf801d47417745d0651352caf557 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Miranda?= 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 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