Subject: [bug#42732] [PATCH] gnu: Add age.

From: Jakub Kądziołka <[email-masked]>
Date: Thu, 6 Aug 2020 23:26:06 +0200

* gnu/packages/crypto.scm (age): New variable.
---
 gnu/packages/crypto.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index 5532f7e9f8..1aa5127799 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -1185,3 +1185,34 @@ length extension attacks supporting MD4, MD5, RIPEMD-160, SHA-0, SHA-1,
 SHA-256, SHA-512, and WHIRLPOOL hashes.")
       (home-page "https://github.com/iagox86/hash_extender")
       (license license:bsd-3))))
+
+(define-public age
+  (package
+    (name "age")
+    (version "1.0.0-beta4")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/FiloSottile/age")
+                     (commit (string-append "v" version))))
+              (sha256
+                (base32
+                  "0pp6zn4rdypyxn1md9ppisiwiapkfkbh08rzfl3qwn0998wx6gnb"))
+              (file-name (git-file-name name version))))
+    (build-system go-build-system)
+    (arguments
+     `(#:import-path "filippo.io/age/cmd/..."
+       #:unpack-path "filippo.io/age"
+       #:install-source? #f))
+    (inputs
+     `(("x-crypto" ,go-golang-org-x-crypto)))
+    (synopsis "Encrypt files with a password or public key")
+    (description "@command{age} is a simple, modern and secure file encryption
+tool. It features small explicit keys, no config options, and UNIX-style
+composability.
+
+Files can be encrypted with passphrases, as well as with age-specific or SSH
+public keys. A single encrypted container can be efficiently encrypted to
+multiple recipients.")
+    (home-page "https://age-encryption.org/")
+    (license license:bsd-3)))
-- 
2.28.0