unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Leo Famulari <leo@famulari.name>
To: Jessica Tallon <tsyesika@tsyesika.se>
Cc: Guix-devel <guix-devel@gnu.org>
Subject: Re: [PATCH] gnu: Add pass.
Date: Wed, 2 Mar 2016 03:30:40 -0500	[thread overview]
Message-ID: <20160302083040.GA3637@jasmine> (raw)
In-Reply-To: <87bn7050na.fsf@tsyesika.se>

[-- Attachment #1: Type: text/plain, Size: 613 bytes --]

On Sun, Feb 28, 2016 at 04:12:57PM +0100, Jessica Tallon wrote:
> I've attached the package so if someone would like to continue, please
> do so, I won't be. Thanks for your work and suggestions those who've
> helped me get this far with packaging it :) I've learnt a lot about it.

I added a wrapper which provides getopt (as well as the rest of
'util-linux/bin') to the script at run-time. Is there a way to only
provide the single executable 'getopt'?

Either way, I think it's a better solution than propagating util-linux,
since the wrapper keeps util-linux out of the user's profile.

What do people think?

[-- Attachment #2: 0001-gnu-Add-password-store.patch --]
[-- Type: text/x-diff, Size: 4127 bytes --]

From c35aaafb4c2184b113c0c7382557a3b8376f20c6 Mon Sep 17 00:00:00 2001
Message-Id: <c35aaafb4c2184b113c0c7382557a3b8376f20c6.1456907157.git.leo@famulari.name>
From: Jessica Tallon <tsyesika@tsyesika.se>
Date: Mon, 8 Feb 2016 22:12:50 +0100
Subject: [PATCH 1/1] gnu: Add password-store.

* gnu/packages/password-utils.scm (password-store): New variable.

Co-authored-by: Andreas Enge <andreas@enge.fr>
Co-authored-by: Leo Famulari <leo@famulari.name>
---
 gnu/packages/password-utils.scm | 53 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 7c128a3..4119335 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -3,6 +3,8 @@
 ;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2015 Aljosha Papsch <misc@rpapsch.de>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
+;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se>
+;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -25,16 +27,20 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix download)
   #:use-module (guix packages)
+  #:use-module (gnu packages admin)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages guile)
+  #:use-module (gnu packages linux)
   #: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 version-control)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xorg)
   #:use-module (guix build-system python))
@@ -241,3 +247,50 @@ 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+)))
+
+(define-public password-store
+  (package
+    (name "password-store")
+    (version "1.6.5")
+    (source (origin
+              (method url-fetch)
+              (uri
+               (string-append "https://git.zx2c4.com/password-store/snapshot/"
+                              name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "05bk3lrp5jwg0v338lvylp7glpliydzz4jf5pjr6k3kagrv3jyik"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-after
+          ;; The script requires 'getopt' at run-time. We provide it with a
+          ;; wrapper instead of propagating util-linux.
+          'install 'wrap-getopt
+          (lambda* (#:key inputs outputs #:allow-other-keys)
+            (let* ((out    (assoc-ref outputs "out"))
+                   (pass   (string-append out "/bin/pass"))
+                   (getopt (string-append (assoc-ref inputs "getopt") "/bin")))
+              (wrap-program pass
+               `("PATH" ":" prefix (,getopt)))
+              #t))))
+       #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output))
+       #:test-target "test"))
+    (native-inputs `(("getopt" ,util-linux))) ; getopt for the tests
+    (inputs `(("gnupg" ,gnupg)
+              ("pwgen" ,pwgen)
+              ("xclip" ,xclip)
+              ("git" ,git)
+              ("tree" ,tree)
+              ("which" ,which)))
+    (home-page "http://www.passwordstore.org/")
+    (synopsis "Encrypted password manager")
+    (description "Password-store is a password manager which uses GnuPG to
+store and retrieve passwords.  The tool stores each password in its own
+GnuPG-encrypted file, allowing the program to be simple yet secure.
+Synchronization is possible using the integrated git support, which commits
+changes to your password database to a git repository that can be managed
+through the pass command.")
+    (license license:gpl2+)))
-- 
2.7.1


  reply	other threads:[~2016-03-02  8:30 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-08 22:27 [PATCH] gnu: Add pass Jessica Tallon
2016-02-09 21:33 ` Leo Famulari
2016-02-09 21:36 ` Ludovic Courtès
2016-02-09 22:55 ` Andreas Enge
2016-02-17 18:13   ` Andreas Enge
2016-02-28  8:39     ` Andreas Enge
2016-02-28 15:12       ` Jessica Tallon
2016-03-02  8:30         ` Leo Famulari [this message]
2016-03-02  8:39           ` Leo Famulari
2016-03-02  9:13             ` Ludovic Courtès
2016-03-02 19:19               ` Leo Famulari
2016-08-01 15:24     ` ng0
2016-08-03  1:17       ` Leo Famulari
2016-08-03 12:23         ` ng0
  -- strict thread matches above, loose matches on Subject: below --
2015-08-23  2:51 Steve Sprang
2015-08-27 21:11 ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20160302083040.GA3637@jasmine \
    --to=leo@famulari.name \
    --cc=guix-devel@gnu.org \
    --cc=tsyesika@tsyesika.se \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).