Subject: Re: [bug#62293] [PATCH] gnu: add pcsc-cyberjack

From: Bruno Victal <[email-masked]>
Date: Mon, 20 Mar 2023 18:44:48 +0000

Hi Arvid,

On 2023-03-20 10:28, Arvid Krein wrote:
> +(define-public pcsc-cyberjack
> +  (package
> +    (name "pcsc-cyberjack")
> +    (version "3.99.5final.sp15")
> +    (synopsis "PC/SC driver for cyberJack chipcard readers")
> +    (home-page "http://www.reiner-sct.com/")
> +    (description
> +     "REINER SCT cyberJack USB chipcard reader user space driver
> + This package includes the IFD driver for the cyberJack contactless
> + (RFID) and contact USB chipcard reader.")

How about “This package includes the IFD driver for the cyberJack contactless (RFID) and contact USB chipcard readers.”

> +    (source (origin
> +              (method url-fetch)
> +              (uri
> + "https://support.reiner-sct.de/downloads/LINUX/V3.99.5_SP15/pcsc-cyberjack_3.99.5final.SP15.tar.bz2")> +              (sha256
> +               (base32
> + "0yj6plgb245r218v6lgdabb3422hxyrw8rrpf5b8fwah4j1w5dxc"))))

How about indenting this as:

(source
 (origin
   (method url-fetch)
   (uri ...)
   (sha256
     (base32 ...))))

> +    (arguments
> +     (list #:configure-flags #~(list (string-append "--with-usbdropdir="
> +                                                    (ungexp output "out")
> + "/pcsc/drivers")
> +                                     (string-append "--bindir="
> +                                                    (ungexp output "tools")
> +                                                    "/bin"))
> +           #:phases '(modify-phases %standard-phases
> +                       (add-after 'install 'install-tools
> +                         (lambda _
> +                           (invoke "make" "-C" "tools/cjflash" "install"))))))))

Do this:

(arguments
 (list
 #:configure-flags
 #~(list (string-append "--with-usbdropdir=" #$output "/pcsc/drivers")
         (string-append "--bindir=" #$output:tools  "/bin"))
 #:phases
 #~(modify-phases %standard-phases
    ... )))

Also, please reorder the package fields into something like:

(define-public ...
  (package
    (name ...)
    (version ...)
    (source ...)
    (build-system ...)
    (arguments ...)
    (native-inputs ...)
    (inputs ...)
    (outputs ...)
    (synopsis ...)
    (description ...)
    (home-page ...)
    (license ...)))

Cheers,
Bruno