guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

01/05: guix hash: Honor '-H' when used alongside '-r'.


From: guix-commits
Subject: 01/05: guix hash: Honor '-H' when used alongside '-r'.
Date: Mon, 4 Jan 2021 05:53:45 -0500 (EST)

civodul pushed a commit to branch master
in repository guix.

commit ed63b7f87e88b0ce9c4a78bf0529599de9172b1f
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Sun Jan 3 21:59:49 2021 +0100

    guix hash: Honor '-H' when used alongside '-r'.
    
    * guix/scripts/hash.scm (guix-hash): When 'recursive? is true, use
    'open-hash-port' instead of 'open-sha256-port'.
    * tests/guix-hash.sh: Add test for 'guix hash -r -H sha512'.
---
 guix/scripts/hash.scm | 5 +++--
 tests/guix-hash.sh    | 3 ++-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/guix/scripts/hash.scm b/guix/scripts/hash.scm
index 797b99f..b862237 100644
--- a/guix/scripts/hash.scm
+++ b/guix/scripts/hash.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2016, 2017, 2020 Ludovic Courtès 
<ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2014, 2016, 2017, 2020, 2021 Ludovic Courtès 
<ludo@gnu.org>
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
@@ -151,7 +151,8 @@ and 'base16' ('hex' and 'hexadecimal' can be used as 
well).\n"))
       ;; Catch and gracefully report possible '&nar-error' conditions.
       (with-error-handling
         (if (assoc-ref opts 'recursive?)
-            (let-values (((port get-hash) (open-sha256-port)))
+            (let-values (((port get-hash)
+                          (open-hash-port (assoc-ref opts 'hash-algorithm))))
               (write-file file port #:select? select?)
               (force-output port)
               (get-hash))
diff --git a/tests/guix-hash.sh b/tests/guix-hash.sh
index 3463555..c4461fa 100644
--- a/tests/guix-hash.sh
+++ b/tests/guix-hash.sh
@@ -1,5 +1,5 @@
 # GNU Guix --- Functional package management for GNU
-# Copyright © 2013, 2014, 2016, 2020 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2013, 2014, 2016, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
 # Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 #
 # This file is part of GNU Guix.
@@ -43,6 +43,7 @@ chmod +x "$tmpdir/exe"
 mkdir "$tmpdir/subdir"
 
 test `guix hash -r "$tmpdir"` = 
10k1lw41wyrjf9mxydi0is5nkpynlsvgslinics4ppir13g7d74p
+test `guix hash -r "$tmpdir" -H sha512` = 
301ra58c2vahczzxiyfin41mpyb0ljh4dh9zn3ijvwviaw1j40sfzw5skh9x945da88n3785ggifzig7acd6k72h0mpsc20m1f66m9n
 
 # Without '-r', this should fail.
 ! guix hash "$tmpdir"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]