Subject: [PATCH] gnu: Add cardpeek
From: Denis 'GNUtoo' Carikli <[email-masked]>
To: [email-masked]
Cc: Denis 'GNUtoo' Carikli <[email-masked]>
Date: Sun, 24 Jul 2022 02:09:14 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

* gnu/packages/security-token.scm (cardpeek): New variable.

Signed-off-by: Denis 'GNUtoo' Carikli <[email-masked]>
---
 gnu/packages/security-token.scm | 48 +++++++++++++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm
index 74ea57137f..465dff7ec5 100644
--- a/gnu/packages/security-token.scm
+++ b/gnu/packages/security-token.scm
@@ -16,6 +16,7 @@
 ;;; Copyright © 2021 Ahmad Jarara <[email-masked]>
 ;;; Copyright © 2022 John Kehayias <[email-masked]>
 ;;; Copyright © 2022 Petr Hodina <[email-masked]>
+;;; Copyright © 2022 Denis 'GNUtoo' Carikli <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -55,6 +56,7 @@ (define-module (gnu packages security-token)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages dns)
   #:use-module (gnu packages gettext)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages graphviz)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gnupg)
@@ -62,6 +64,7 @@ (define-module (gnu packages security-token)
   #:use-module (gnu packages libbsd)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages lua)
   #:use-module (gnu packages man)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages cyrus-sasl)
@@ -922,3 +925,48 @@ (define-public libfido2
 libfido2 supports the FIDO U2F (CTAP 1) and FIDO 2.0 (CTAP 2) protocols.")
     (license license:bsd-2)
     (home-page "https://github.com/Yubico/libfido2")))
+
+(define-public cardpeek
+  (package
+    (name "cardpeek")
+    (version "0.8.4")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/L1L1/cardpeek")
+                    (commit (string-append "cardpeek-" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1ighpl7nvcvwnsd6r5h5n9p95kclwrq99hq7bry7s53yr57l6588"))))
+    (inputs (list curl
+                  gtk+
+                  lua-5.2
+                  openssl
+                  pcsc-lite
+                  readline))
+    (native-inputs (list autoconf
+                         automake
+                         `(,glib "bin") ;for glib-compile-resources
+                         libtool
+                         pkg-config))
+    (build-system gnu-build-system)
+    (synopsis "Tool to read the contents of various smart cards")
+    (description
+     "Cardpeek is a graphical tool to read the contents of ISO7816 smart cards.
+It is extensible with the LUA scripting language.
+
+It supports the following type of cards:
+@itemize
+@item Bank cards (VISA, MasterCard, CB and UK Post Office Account cards)
+@item Passports and the Belgian identity card
+@item Transport cards (Navigo, MOBIB, RavKav and VIVA cards)
+@item Older GSM SIM cards without USIM data
+@item Vitale 2 Health card
+@item Moneo Electronic purse card
+@item Driver Tachograph cards
+@item OpenPGP Cards (beta)
+@end itemize
+It also has limited support for Mifare Classic compatible cards (Thalys card)")
+    (license license:gpl3+)
+    (home-page "http://pannetrat.com/Cardpeek")))

base-commit: 7aab4eddd04e4b26986903680b28dce2de0f4db0
-- 
2.37.0