unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: Jake Leporte <jakeleporte@outlook.com>
Cc: 61018-done@debbugs.gnu.org
Subject: bug#61018: [PATCH 0/2] Add pcsc-tools, and missing dependency perl-pcsc
Date: Tue, 21 Mar 2023 21:50:17 -0400	[thread overview]
Message-ID: <87edphk10m.fsf_-_@gmail.com> (raw)
In-Reply-To: <MN2PR20MB26051C7816FD8FB469354D27ACB69@MN2PR20MB2605.namprd20.prod.outlook.com> (Jake Leporte's message of "Sun, 5 Mar 2023 19:30:26 -0600")

Hello,

Jake Leporte <jakeleporte@outlook.com> writes:

> * gnu/packages/perl.scm (perl-pcsc): New variable.
> ---
>  gnu/packages/perl.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm
> index b6fb81e..a1a9983 100644
> --- a/gnu/packages/perl.scm
> +++ b/gnu/packages/perl.scm
> @@ -86,6 +86,7 @@ (define-module (gnu packages perl)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages readline)
>    #:use-module (gnu packages sdl)
> +  #:use-module (gnu packages security-token)
>    #:use-module (gnu packages textutils)
>    #:use-module (gnu packages video)
>    #:use-module (gnu packages web)
> @@ -12269,6 +12270,41 @@ (define-public perl-path-iterator-rule
>  arduous to type for one-liners.")
>      (license license:asl2.0)))
>  
> +(define-public perl-pcsc
> +  (package
> +    (name "perl-pcsc")
> +    (version "1.4.14")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append
> +                    "mirror://cpan/authors/id/W/WH/WHOM/pcsc-perl-" version
> +                    ".tar.bz2"))
> +              (sha256
> +               (base32
> +                "17f6i16jv6ci6459vh6y3sz94vgcvykjjszcl4xsykryakjvf8i7"))))
> +    (build-system perl-build-system)
> +    (arguments
> +     (list
> +           ;; The tests for this package require access to a
> +           ;; card reader with a card inserted, so they won't be
> +           ;; possible to run in the build environment
> +           #:tests? #f
> +           #:phases #~(modify-phases %standard-phases
> +                        (add-after 'unpack 'patch-dlopen
> +                          (lambda* (#:key inputs #:allow-other-keys)
> +                            (substitute* "PCSCperl.h"
> +                              (("libpcsclite.so.1")
> +                               (search-input-file inputs
> +                                                  "/lib/libpcsclite.so.1"))))))))
> +    (native-inputs (list pkg-config))
> +    (inputs (list pcsc-lite))
> +    (synopsis "Perl library for PC/SC")
> +    (description
> +     "This library allows communication with a smart card using PC/SC from a Perl
> +script.")
> +    (home-page "https://pcsc-perl.apdu.fr/")
> +    (license license:gpl2+)))
> +

I've also installed this one with the following changes:

modified   gnu/packages/security-token.scm
@@ -17,6 +17,7 @@
 ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 ;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
+;;; Copyright © 2023 Jake Leporte <jakeleporte@outlook.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -278,13 +279,12 @@ (define-public pcsc-tools
                         "\"/usr/local/pcsc/smartcard_list.txt\", "
                         "\"/usr/share/pcsc/smartcard_list.txt\", "
                         "\"/usr/local/share/pcsc/smartcard_list.txt\""))
-                      (string-append "\""
-                                     #$output
+                      (string-append "\"" #$output
                                      "/share/pcsc/smartcard_list.txt\"")))
                    (substitute* "ATR_analysis.1p"
-                     (("^([.]IR [.]/) ,\n$" _ cwd)
+                     (("^(\\.IR \\./) ,\n$" _ cwd)
                       (string-append cwd "\n"))
-                     (("^[.]I /usr/local/pcsc/\n$")
+                     (("^\\.I /usr/local/pcsc/\n$")
                       "")

Because \\. is more widespread (conventional) than [.] in the guix code
base.

                      (("/usr/share/pcsc/\n$")
                       (string-append #$output "/share/pcsc/\n")))))
@@ -292,26 +292,22 @@ (define-public pcsc-tools
                  (lambda _
                    (for-each
                     (lambda (prog)
-                      (wrap-program (string-append #$output
-                                                   "/bin/"
-                                                   prog)
-                        `("PERL5LIB" =
-                          (,(getenv "PERL5LIB")))))
+                      (wrap-program (string-append #$output "/bin/" prog)
+                        `("PERL5LIB" = (,(getenv "PERL5LIB")))))
                     '("ATR_analysis" "gscriptor" "scriptor"))
-                   (wrap-program (string-append #$output
-                                                "/bin/gscriptor")
-                     `("GI_TYPELIB_PATH" =
-                       (,(getenv "GI_TYPELIB_PATH")))))))))
+                   (wrap-program (string-append #$output "/bin/gscriptor")
+                     `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))))))

Tightened the indentation a bit (I guess this was 'guix style', which
doesn't always produce perfect results).

     (native-inputs (list autoconf automake libtool gnu-gettext pkg-config))
-    (inputs (list bash-minimal ;for wrap-program
+    (inputs (list bash-minimal          ;for wrap-program
                   perl
-                  perl-pcsc
                   perl-gtk3
-                  pcsc-lite))
-    (synopsis "Tools for use with smart cards and PC/SC")
-    (description
-     "This package provides @code{pcsc_scan}, @code{ATR_analysis}, @code{scriptor},
-and @code{gscriptor}.")
+                  pcsc-lite
+                  perl-pcsc))
+    (synopsis "Smart cards and PC/SC tools")

I streamlined the synopsis a bit,

+    (description "This package provides the @command{pcsc_scan},
+@command{ATR_analysis}, @command{scriptor}, and @command{gscriptor} commands,
+which are useful tools to test a PC/SC driver, card or reader or send commands
+in a friendly environment (text or graphical user interface).")
     (home-page "https://pcsc-tools.apdu.fr/")

and expounded the description, changing @code to @command.

Thank you!

-- 
Maxim




      parent reply	other threads:[~2023-03-22  1:51 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-23  4:29 [bug#61018] [PATCH 0/2] Add pcsc-tools, and missing dependency perl-pcsc Jake Leporte
2023-01-23  4:39 ` [bug#61018] [PATCH 1/2] gnu: Add perl-pcsc Jake Leporte
2023-01-23  4:40 ` [bug#61018] [PATCH 2/2] gnu: Add pcsc-tools Jake Leporte
2023-01-23 23:01 ` [bug#61018] [PATCH v2] gnu: Add perl-pcsc Jake Leporte
2023-01-27  2:26 ` [bug#61018] [PATCH v2] gnu: Add pcsc-tools Jake Leporte
2023-01-27 17:37 ` [bug#61018] [PATCH v3 1/2] gnu: Add perl-pcsc Jake Leporte
2023-01-28  2:57 ` [bug#61018] [PATCH v4] gnu: Add pcsc-tools Jake Leporte
2023-02-18  0:36 ` [bug#61018] [PATCH v5 1/2] gnu: Add perl-pcsc Jake Leporte
2023-02-27  0:42 ` [bug#61018] [PATCH v6 0/2] Add pcsc-tools and dependency Jake Leporte
2023-03-06  1:30 ` [bug#61018] [PATCH v7 1/2] gnu: Add perl-pcsc Jake Leporte
2023-03-22  1:40   ` [bug#61018] [PATCH 0/2] Add pcsc-tools, and missing dependency perl-pcsc Maxim Cournoyer
2023-03-22  1:50   ` Maxim Cournoyer [this message]

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=87edphk10m.fsf_-_@gmail.com \
    --to=maxim.cournoyer@gmail.com \
    --cc=61018-done@debbugs.gnu.org \
    --cc=jakeleporte@outlook.com \
    /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).