From 1e59791b4eb026a85ae3080650b28f759fe891f6 Mon Sep 17 00:00:00 2001 From: Amar Singh Date: Fri, 5 Jul 2019 12:46:31 +0530 Subject: [PATCH] gnu: shroud: Update to 6b79c8c. * (shroud): Update to 6b79c8c. Shroud now uses guile-2.2, git-fetch to download source. Add 'wrap-shroud build phase. --- gnu/packages/password-utils.scm | 85 +++++++++++++++++++++------------ 1 file changed, 55 insertions(+), 30 deletions(-) diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 49024b26c4..93d6b66e73 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -50,6 +50,7 @@ #:use-module (gnu packages admin) #:use-module (gnu packages aidc) #:use-module (gnu packages authentication) + #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages check) #:use-module (gnu packages compression) @@ -234,41 +235,65 @@ platforms.") (license license:artistic2.0))) (define-public shroud - (package - (name "shroud") - (version "0.1.1") - (source (origin - (method url-fetch) - (uri (string-append "https://files.dthompson.us/shroud/shroud-" - version ".tar.gz")) - (sha256 - (base32 - "1y43yhgy2zbrk5bqj3qyx9rkcz2bma9sinlrg7dip3jqms9gq4lr")))) - (build-system gnu-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'install 'wrap-shroud - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (ccachedir (string-append out "/lib/guile/2.0/ccache")) - (prog (string-append out "/bin/shroud"))) - (wrap-program prog - `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,ccachedir))) - #t)))))) - (inputs - `(("guile" ,guile-2.0) - ("gnupg" ,gnupg) - ("xclip" ,xclip))) - (synopsis "GnuPG-based secret manager") - (description "Shroud is a simple secret manager with a command line + (let ((commit "6b79c8c097b1d185929185bd57a36963660a1485")) + (package + (name "shroud") + (version (git-version "0.1.1" "3" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.dthompson.us/shroud.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1s1pvlfj4c3nw2n3d8khhzhx1q0gfnspbh1d6jg3mij3r6wbkryy")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf-wrapper) + ("automake" ,automake) + ("gettext" ,gettext-minimal))) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (ice-9 popen) + (ice-9 rdelim) + (srfi srfi-26)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-shroud + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (guile (assoc-ref inputs "guile")) + (xclip (assoc-ref inputs "xclip")) + (prog (string-append out "/bin/shroud")) + (deps (list xclip)) + (effective (read-line + (open-pipe* OPEN_READ + (string-append guile "/bin/guile") + "-c" "(display (effective-version))"))) + (path (map (cut string-append <> "/bin") + (delete #f deps))) + (ccachedir (string-append out + "/lib/guile/" effective "/site-ccache"))) + (wrap-program prog + `("PATH" ":" prefix ,path) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,ccachedir))) + #t)))))) + (inputs + `(("guile" ,guile-2.2) + ("gnupg" ,gnupg) + ("xclip" ,xclip))) + (synopsis "GnuPG-based secret manager") + (description "Shroud is a simple secret manager with a command line interface. The password database is stored as a Scheme s-expression and encrypted with a GnuPG key. Secrets consist of an arbitrary number of key/value pairs, making Shroud suitable for more than just password storage. For copying and pasting secrets into web browsers and other graphical applications, there is xclip integration." ) - (home-page "https://dthompson.us/projects/shroud.html") - (license license:gpl3+))) + (home-page "https://dthompson.us/projects/shroud.html") + (license license:gpl3+)))) (define-public yapet (package -- 2.22.0