summaryrefslogtreecommitdiff
path: root/gnu/packages/password-utils.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/password-utils.scm')
-rw-r--r--gnu/packages/password-utils.scm163
1 files changed, 97 insertions, 66 deletions
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index bcd323ced8..13174656cb 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -24,7 +24,7 @@
;;; Copyright © 2018, 2019, 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk>
;;; Copyright © 2019,2022 Tanguy Le Carrour <tanguy@bioneland.org>
-;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2020, 2024 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
@@ -39,6 +39,7 @@
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
+;;; Copyright © 2023 Christian Miller <christian.miller@dadoes.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -91,6 +92,8 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
+ #:use-module (gnu packages golang-build)
+ #:use-module (gnu packages golang-crypto)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages kerberos)
@@ -851,7 +854,7 @@ key URIs using the standard otpauth:// scheme.")
(define-public qtpass
(package
(name "qtpass")
- (version "1.3.2")
+ (version "1.4.0")
(source
(origin
(method git-fetch)
@@ -860,65 +863,37 @@ key URIs using the standard otpauth:// scheme.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "0748hjvhjrybi33ci3c8hcr74k9pdrf5jv8npf9hrsrmdyy1kr9x"))))
- (build-system gnu-build-system)
+ (base32 "10ixahm4ap0l1rrz4cyswblm22ns9z1baf5lv3dn23wprfdcp8m0"))))
+ (build-system qt-build-system)
(arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build qt-utils)
- (guix build utils))
- #:imported-modules (,@%gnu-build-system-modules
- (guix build qt-utils))
- #: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-after 'install 'wrap-qt
- (lambda* (#:key outputs inputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (wrap-qt-program "qtpass" #:output out #:inputs inputs))
- #t))
- (add-before 'check 'check-setup
- ;; Make Qt render "offscreen", required for tests.
- (lambda _
- (setenv "QT_QPA_PLATFORM" "offscreen")
- #t)))))
+ (list
+ #:test-target "check"
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (invoke "qmake"
+ "QMAKE_LRELEASE=lrelease"
+ "QMAKE_LUPDATE=lupdate"
+ (string-append "PREFIX=" #$output))))
+ (add-before 'check 'pre-check
+ ;; Fontconfig needs a writable cache.
+ (lambda _ (setenv "HOME" "/tmp")))
+ (add-after 'install 'install-auxilliary
+ ;; Install man-page, icon and .desktop file.
+ (lambda _
+ (let ((applications (string-append #$output "/share/applications"))
+ (icons (string-append #$output "/share/icons/hicolor/scalable/apps"))
+ (man (string-append #$output "/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)))))))
(native-inputs
(list qttools-5))
(inputs
- (list qtbase-5 qtsvg-5))
+ (list qtsvg-5))
(home-page "https://qtpass.org")
(synopsis "GUI for password manager password-store")
(description
@@ -1486,20 +1461,19 @@ HTTP.")
(define-public bruteforce-luks
(package
(name "bruteforce-luks")
- (version "1.4.0")
+ (version "1.4.1")
(source
(origin
- (method url-fetch)
- (uri (string-append "https://github.com/glv2/bruteforce-luks/releases/download/"
- version
- "/bruteforce-luks-"
- version
- ".tar.lz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/glv2/bruteforce-luks")
+ (commit version)))
+ (file-name (git-file-name name version))
(sha256
- (base32 "0yawrlbbklhmvwr99wm7li3r0d5kxvpkwf33a12rji7z0ya5p340"))))
+ (base32 "1fhvm7ykqv2anny6zavd4iwh6gq5rp1r27p3zhn78sd3y34xhkmp"))))
(build-system gnu-build-system)
(native-inputs
- (list lzip))
+ (list autoconf automake))
(inputs
(list cryptsetup))
(synopsis "LUKS encrypted volume cracker")
@@ -1510,6 +1484,32 @@ try every password contained in a file.")
(home-page "https://github.com/glv2/bruteforce-luks")
(license license:gpl3+)))
+(define-public bruteforce-salted-openssl
+ (package
+ (name "bruteforce-salted-openssl")
+ (version "1.5.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/glv2/bruteforce-salted-openssl")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "00w1szj04jb63rh7sq1spc50013jgmz2nwm8k552i9ir8h4phw45"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list autoconf automake))
+ (inputs
+ (list openssl))
+ (synopsis "Bruteforce cracker for openssl encrypted files")
+ (description
+ "This is a cracker for openssl encrypted files. It can be used either in
+exhaustive mode to try every password given a charset or in dictionary mode to
+try every password contained in a file.")
+ (home-page "https://github.com/glv2/bruteforce-salted-openssl")
+ (license license:gpl3+)))
+
(define-public makepasswd
(let ((commit "3545d57d3a589a392d7eb0df36a5286785345c9e")
(revision "1"))
@@ -1588,6 +1588,37 @@ therefore you don't need to manage more key or secret. Moreover, you can ask
pass-tomb to automatically close your store after a given time.")
(license license:gpl3+)))
+(define-public pass-coffin
+ (package
+ (name "pass-coffin")
+ (version "1.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ayushnix/pass-coffin")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1486ikwsdjsj74qf949vk47r8mfp2mbbdc3scs8786nnnkhzc89n"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:tests? #f ;No tests
+ #:make-flags #~(list (string-append "PREFIX="
+ #$output)
+ (string-append "BASHCOMPDIR="
+ #$output "/etc/bash_completion.d"))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs (list password-store tar))
+ (home-page "https://github.com/ayushnix/pass-coffin")
+ (synopsis "Pass extension to keep the tree of passwords encrypted")
+ (description
+ "Pass-coffin is a pass extension that hides the password store
+data inside a GPG encrypted file, which we'll call a coffin.")
+ (license license:gpl3)))
+
(define-public xkcdpass
(package
(name "xkcdpass")