Ton writes: > Here is the package definition for figaros password manager, or fpm2. It is a > simple password manager. Development has seized and the package should be > considered dead. I had use for it personally and thought I'd share it. There > is a warning in the description. Thanks! I'm a bit vary about adding obsolete software to Guix. Any opinions from other contributors? If no one responds, I'll assume it's okay. [...] > From d2efd598855759ce8377569b9e8279a5f774a22a Mon Sep 17 00:00:00 2001 > From: Tonton > Date: Wed, 28 Mar 2018 16:08:52 +0200 > Subject: [PATCH] Add package definition screen message > > Built and tested on GuixSD Linux merlin 4.15.8-gnu #1 SMP 1 x86_64 GNU/Linux. > > It passes guix lint without errors. > > It builds 5 times deterministicly. > > Guix size says "total: 486.5 MiB" Again, see "git log" for the usual conventions. > --- > gnu/packages/fpm2.scm | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 64 insertions(+) > create mode 100644 gnu/packages/fpm2.scm I think this can go to 'password-utils.scm' along with other password managers. [...] > +(define-public fpm2 > + (package > + (name "fpm2") > + (version "0.79") > + (source (origin > + (method url-fetch) > + (uri (string-append "https://als.regnet.cz/fpm2/download/fpm2-" > + version ".tar.bz2")) > + (sha256 > + (base32 > + "19sdy1lygfhkg5nxi2w9a4d9kwvw24nxp0ix0p0lz91qpvk9qpnm")))) > + (build-system gnu-build-system) > + (inputs `(("gtk2" ,gtk+-2) > + ("gnupg" ,gnupg) > + ("libxml2" ,libxml2))) > + (native-inputs `(("pkgconfig" ,pkg-config) > + ("intltool" ,intltool))) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (add-before > + 'configure 'pre-configure > + (lambda _ > + (let* ((poinc (open-output-file "po/POTFILES.in"))) > + (begin > + (newline poinc) > + (display "data/fpm2.desktop.in" poinc) > + (newline poinc) > + (display "data/fpm2.desktop.in.in" poinc) > + (newline poinc) > + (display "fpm2.glade" poinc) > + (newline poinc) > + (display "src/callbacks.c" poinc) > + (newline poinc) > + (display "src/fpm.c" poinc) > + (newline poinc) > + (display "src/fpm_file.c" poinc) > + (newline poinc) > + (display "src/interface.c" poinc) > + (newline poinc) > + (display "src/support.c" poinc) > + (newline poinc) > + (display "fpm2.glade" poinc) > + (newline poinc) > + (close-port poinc)))))))) I admit I don't understand what's going on here. AFAICT this overwrites POTFILES.in with custom text. Can you add a comment about why this is necessary? Also, I think it's clearer to write it like this: (call-with-output-file "po/POTFILES.in" (lambda (port) (format port "data/fpm2.desktop.in data/fpm2.desktop.in.in [...]"))) > + (synopsis "Manages, generates and stores passwords encrypted") Please use infinitive verbs in synopses, i.e. avoid the present tense: "Manage, generate and store passwords encrypted". Apart from this LGTM. Can you send an updated patch?