about summary refs log tree commit diff
path: root/nixpkgs/pkgs/tools/security/libacr38u/default.nix
blob: d858ed3fd6d37fed7edece0993306de7cf0f30ed (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
{ stdenv, fetchurl, pkgconfig, pcsclite , libusb }:

stdenv.mkDerivation rec {
  version = "1.7.11";
  name = "libacr38u-${version}";

  src = fetchurl {
    url = "http://http.debian.net/debian/pool/main/a/acr38/acr38_1.7.11.orig.tar.bz2";
    sha256 = "0lxbq17y51cablx6bcd89klwnyigvkz0rsf9nps1a97ggnllyzkx";
  };

  doCheck = true;

  nativeBuildInputs = [ pkgconfig ];
  buildInputs = [ pcsclite libusb ];

  preBuild = ''
    makeFlagsArray=(usbdropdir="$out/pcsc/drivers");
  '';

  meta = with stdenv.lib; {
    description = "ACR38U smartcard reader driver for pcsclite";
    longDescription = ''
      A PC/SC IFD handler implementation for the ACS ACR38U
      smartcard readers. This driver is for the non-CCID version only.

      This package is needed to communicate with the ACR38U smartcard readers through
      the PC/SC Lite resource manager (pcscd).

      It can be enabled in /etc/nixos/configuration.nix by adding:
        services.pcscd.enable = true;
        services.pcscd.plugins = [ libacr38u ];

      The package is based on the debian package libacr38u.
    '';
    homepage = https://www.acs.com.hk;
    license = licenses.lgpl2Plus;
    maintainers = with maintainers; [ berce ];
    platforms = with platforms; unix;
  };
}