[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01/03: gnu: Add qtpass.
From: |
guix-commits |
Subject: |
01/03: gnu: Add qtpass. |
Date: |
Thu, 4 Jul 2019 06:31:58 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit 872da48eab09e23529137fa7751c286afcc1241d
Author: Jens Mølgaard <address@hidden>
Date: Thu Jun 20 19:24:47 2019 +1200
gnu: Add qtpass.
* gnu/packages/password-utils.scm (qtpass): New variable.
Signed-off-by: Ludovic Courtès <address@hidden>
---
gnu/packages/password-utils.scm | 73 +++++++++++++++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 10d04b1..49024b2 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -22,6 +22,7 @@
;;; Copyright © 2018 Pierre Neidhardt <address@hidden>
;;; Copyright © 2018 Amirouche Boubekki <address@hidden>
;;; Copyright © 2018 Tim Gesthuizen <address@hidden>
+;;; Copyright © 2019 Jens Mølgaard <address@hidden>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -562,6 +563,78 @@ one-time-password (OTP) secrets, generating OTP codes, and
displaying secret
key URIs using the standard otpauth:// scheme.")
(license license:gpl3+)))
+(define-public qtpass
+ (package
+ (name "qtpass")
+ (version "1.2.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/IJHack/QtPass.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1vfhfyccrxq9snyvayqfzm5rqik8ny2gysyv7nipc91kvhq3bhky"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; lupdate/lrelease need to find qmake.
+ (setenv "QMAKE" "qmake")
+ ;; qmake needs to find lrelease/lupdate.
+ (invoke "qmake"
+ "QMAKE_LRELEASE=lrelease"
+ "QMAKE_LUPDATE=lupdate"
+ (string-append "PREFIX=" out)))))
+ (add-after 'configure 'reset-resource-timestamps
+ ;; Reset timestamps on localization files for a reproducible build.
+ (lambda _
+ (with-directory-excursion "localization"
+ (for-each (lambda (file)
+ (let* ((base (basename file ".qm"))
+ (src (string-append base ".ts"))
+ (st (stat src)))
+ (set-file-time file st)))
+ (find-files "." ".*\\.qm")))
+ #t))
+ (add-after 'install 'install-auxilliary
+ ;; Install man-page, icon and .desktop file.
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (applications (string-append out "/share/applications"))
+ (icons (string-append out
"/share/icons/hicolor/scalable/apps"))
+ (man (string-append out "/share/man/man1")))
+ (install-file "qtpass.desktop" applications)
+ (install-file "artwork/icon.svg" icons)
+ (rename-file (string-append icons "/icon.svg")
+ (string-append icons "/qtpass-icon.svg"))
+ (install-file "qtpass.1" man)
+ #t)))
+ (add-before 'check 'check-setup
+ ;; Make Qt render "offscreen", required for tests.
+ (lambda _
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ #t)))))
+ (native-inputs
+ `(("qttools" ,qttools)))
+ (inputs
+ `(("qtbase" ,qtbase)
+ ("qtsvg" ,qtsvg)))
+ (home-page "https://qtpass.org")
+ (synopsis "GUI for password manager password-store")
+ (description
+ "Qt-based graphical user interface for the password manager
+password-store also known as pass. Can use either pass or gpg to interact
+with password-store files. Features configurable password generation,
+templates, clipboard handling, and per folder settings for multi-recipient
+encryption.")
+ (license license:gpl3+)))
+
(define-public argon2
(package
(name "argon2")