diff options
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/version-control.scm | 44 |
1 files changed, 44 insertions, 0 deletions
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 <me@tobias.gr> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> +;;; Copyright © 2017 André <eu@euandre.org> ;;; ;;; 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") |