all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH 1/1] gnu: Add scrypt.
@ 2017-01-16  5:43 Leo Famulari
  2017-01-16  6:36 ` Leo Famulari
  0 siblings, 1 reply; 3+ messages in thread
From: Leo Famulari @ 2017-01-16  5:43 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/crypto.scm (scrypt): New variable.
---
 gnu/packages/crypto.scm | 38 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 37 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index e4a8a4bd5..e27cf45d7 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -1,7 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 David Thompson <davet@gnu.org>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
 ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
@@ -378,3 +378,39 @@ no man page, refer to the home page for usage details.")
 storage files: it can be operated from commandline and it can integrate with a
 user's graphical desktop.")
     (license license:gpl3+)))
+
+(define-public scrypt
+  (package
+    (name "scrypt")
+    (version "1.2.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://www.tarsnap.com/scrypt/scrypt-"
+                            version ".tgz"))
+        (sha256
+         (base32
+          "1m39hpfby0fdjam842773i5w7pa0qaj7f0r22jnchxsj824vqm0p"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+         (add-after 'unpack 'patch-command-invocations
+           (lambda _
+             (substitute* '("Makefile.in" "autocrap/Makefile.am")
+               (("command -p") ""))
+             #t))
+         (add-after 'install 'install-docs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref %outputs "out"))
+                    (misc (string-append out "/share/doc/scrypt")))
+               (install-file "FORMAT" misc)
+               #t))))))
+    (inputs
+     `(("openssl" ,openssl)))
+    (home-page "https://www.tarsnap.com/scrypt.html")
+    (synopsis "Memory-hard key derivation function")
+    (description "This packages provides a simple password-based encryption
+utility as a demonstration of the @code{scrypt} key derivation function.
+@code{Scrypt} is designed to be far more resistant against hardware brute-force
+attacks than alternative functions such as @code{PBKDF2} or @code{bcrypt}.")
+    (license license:bsd-2)))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/1] gnu: Add scrypt.
  2017-01-16  5:43 [PATCH 1/1] gnu: Add scrypt Leo Famulari
@ 2017-01-16  6:36 ` Leo Famulari
  2017-01-16 13:39   ` Ludovic Courtès
  0 siblings, 1 reply; 3+ messages in thread
From: Leo Famulari @ 2017-01-16  6:36 UTC (permalink / raw)
  To: guix-devel

On Mon, Jan 16, 2017 at 12:43:14AM -0500, Leo Famulari wrote:
> * gnu/packages/crypto.scm (scrypt): New variable.

> +    (arguments
> +     `(#:phases (modify-phases %standard-phases
> +         (add-after 'unpack 'patch-command-invocations

I realized this indentation is too far to the right.

> +    (synopsis "Memory-hard key derivation function")

And the synopsis should probably be something like "Memory-hard
encryption tool". At least, it should include "encryption tool".

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/1] gnu: Add scrypt.
  2017-01-16  6:36 ` Leo Famulari
@ 2017-01-16 13:39   ` Ludovic Courtès
  0 siblings, 0 replies; 3+ messages in thread
From: Ludovic Courtès @ 2017-01-16 13:39 UTC (permalink / raw)
  To: Leo Famulari; +Cc: guix-devel

Leo Famulari <leo@famulari.name> skribis:

> On Mon, Jan 16, 2017 at 12:43:14AM -0500, Leo Famulari wrote:
>> * gnu/packages/crypto.scm (scrypt): New variable.
>
>> +    (arguments
>> +     `(#:phases (modify-phases %standard-phases
>> +         (add-after 'unpack 'patch-command-invocations
>
> I realized this indentation is too far to the right.
>
>> +    (synopsis "Memory-hard key derivation function")
>
> And the synopsis should probably be something like "Memory-hard
> encryption tool". At least, it should include "encryption tool".

Agreed.

Also:

> +         (add-after 'unpack 'patch-command-invocations
> +           (lambda _
> +             (substitute* '("Makefile.in" "autocrap/Makefile.am")
> +               (("command -p") ""))
> +             #t))

It’s probably enough to patch Makefile.in, and it avoids triggering an
‘automake’ invocation due to Makefile.am being more recent.

The rest LGTM, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-01-16 13:40 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-16  5:43 [PATCH 1/1] gnu: Add scrypt Leo Famulari
2017-01-16  6:36 ` Leo Famulari
2017-01-16 13:39   ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.