Eric Bavier writes: >> +(define-public assword >> + (package >> + (name "assword") >> + (version "0.8") >> + (source (origin >> + (method url-fetch) >> + (uri (list >> + (string-append >> + "http://http.debian.net/debian/pool/main/a/assword/" >> + "assword_" version ".orig.tar.gz"))) >> + (sha256 >> + (base32 >> + "0dl4wizbi0r21wxzykm8s445xbvqim5nabi799dmpkdnnh8i546i")))) >> + (arguments >> + `(#:python ,python-2 >> + #:tests? #f > > Could you add a comment saying why the tests are disabled, even if > just "no tests"?
I left a comment. It's kind of an embarassing admission: the tests fail because of an environment variable issue where the "gtk" module isn't found. I find this even as a user of assword: I've had to log out and back in again in order for the gtk module to be found after installing Guix, even though this makes no sense. Not sure what to say about that... or if anyone has an ideas! But anyway, with that caveat above, assword is now working for me in GuixSD and is a delight (and has allowed me to finally make GuixSD my host distro). Anyway, everything else is done, new patch attached, etc. Good to merge? - Chris
>From 990ae891e76e04b6b93b73a1698933ea5cc3afca Mon Sep 17 00:00:00 2001 From: Christopher Allan Webber <cweb...@dustycloud.org> Date: Fri, 5 Feb 2016 19:18:41 -0800 Subject: [PATCH 3/3] gnu: Add assword * gnu/packages/password-utils (assword): New variable. --- gnu/packages/password-utils.scm | 58 ++++++++++++++++++++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 9cd4846..12bd027 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2015 Steve Sprang <s...@stevesprang.com> ;;; Copyright © 2015 Efraim Flashner <efr...@flashner.co.il> ;;; Copyright © 2015 Aljosha Papsch <m...@rpapsch.de> +;;; Copyright © 2016 Christopher Allan Webber <cweb...@dustycloud.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,13 +27,17 @@ #:use-module (guix packages) #:use-module (gnu packages compression) #:use-module (gnu packages gnupg) + #:use-module (gnu packages gtk) #:use-module (gnu packages guile) + #:use-module (gnu packages man) #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages tls) #:use-module (gnu packages qt) #:use-module (gnu packages xdisorg) - #:use-module (gnu packages xorg)) + #:use-module (gnu packages xorg) + #:use-module (guix build-system python)) (define-public pwgen (package @@ -185,3 +190,54 @@ passwords that could be guessed by crack by filtering them out, at source.") "Libpwquality is a library for password quality checking and generation of random passwords that pass the checks.") (license license:gpl2+))) + +(define-public assword + (package + (name "assword") + (version "0.8") + (source (origin + (method url-fetch) + (uri (list + (string-append + "http://http.debian.net/debian/pool/main/a/assword/" + "assword_" version ".orig.tar.gz"))) + (sha256 + (base32 + "0dl4wizbi0r21wxzykm8s445xbvqim5nabi799dmpkdnnh8i546i")))) + (arguments + `(#:python ,python-2 + ;; irritatingly, tests do run but not there are two problems: + ;; - "import gtk" fails for unknown reasons here despite it the + ;; program working (indeed, I've found I have to do a logout and log + ;; back in in after an install order for some mumbo jumbo environment + ;; variable mess to work with pygtk and assword... what's up with + ;; that?) + ;; - even when the tests fail, they don't return a nonzero status, + ;; so I'm not sure how to programmatically get that information + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'install 'manpage + (lambda* (#:key outputs #:allow-other-keys) + (and + (zero? (system* "make" "assword.1")) + (install-file + "assword.1" + (string-append (assoc-ref outputs "out") "/share/man/man1")))))))) + (build-system python-build-system) + (native-inputs + `(("help2man" ,help2man))) + (inputs + `(("python-setuptools" ,python2-setuptools) + ("python2-xdo" ,python2-xdo) + ("python2-pygpgme" ,python2-pygpgme) + ("python2-pygtk" ,python2-pygtk))) + (propagated-inputs + `(("xclip" ,xclip))) + (home-page "https://finestructure.net/assword/") + (synopsis "Password manager") + (description "assword is a simple password manager using GPG-wrapped +JSON files. It has a command line interface as well as a very simple +graphical interface, which can even \"type\" your passwords into +any X11 window.") + (license license:gpl3+))) -- 2.6.3