diff options
author | sephalon <me@sephalon.net> | 2018-04-09 06:01:55 +0200 |
---|---|---|
committer | Matthew Justin Bauer <mjbauer95@gmail.com> | 2018-04-08 23:01:55 -0500 |
commit | 33eb77bad1fca64818f060b136abf212ac6290dd (patch) | |
tree | 31d6148b2790b3045284b0ba22ed40c8c7c76436 /pkgs/tools/security/pcsc-scm-scl011 | |
parent | 9191670c9e886a78d27ad5ffe44f21622b49f9ed (diff) |
pcsc-scm-scl011: init at 2.09 (#37732)
Diffstat (limited to 'pkgs/tools/security/pcsc-scm-scl011')
-rw-r--r-- | pkgs/tools/security/pcsc-scm-scl011/default.nix | 49 | ||||
-rw-r--r-- | pkgs/tools/security/pcsc-scm-scl011/eid.patch | 28 |
2 files changed, 77 insertions, 0 deletions
diff --git a/pkgs/tools/security/pcsc-scm-scl011/default.nix b/pkgs/tools/security/pcsc-scm-scl011/default.nix new file mode 100644 index 0000000000000..88b5c147f303f --- /dev/null +++ b/pkgs/tools/security/pcsc-scm-scl011/default.nix @@ -0,0 +1,49 @@ +{ stdenv, fetchurl, unzip, libusb }: + +let + arch = if stdenv.system == "i686-linux" then "32" + else if stdenv.system == "x86_64-linux" then "64" + else throw "Unsupported system: ${stdenv.system}"; +in +stdenv.mkDerivation rec { + name = "pcsc-scm-scl-${version}"; + version = "2.09"; + + src = fetchurl { + url = "http://files.identiv.com/products/smart-card-readers/contactless/scl010-011/Linux_Driver_Ver${version}.zip"; + sha256 = "0ik26sxgqgsqplksl87z61vwmx51k7plaqmrkdid7xidgfhfxr42"; + }; + + buildInputs = [ unzip ]; + + unpackPhase = '' + echo ${stdenv.system} + unzip $src + tar xf "Linux Driver Ver${version}/sclgeneric_${version}_linux_${arch}bit.tar.gz" + cd sclgeneric_${version}_linux_${arch}bit; export sourceRoot=`pwd` + ''; + + # Add support for SCL011 nPA (subsidized model for German eID) + patches = [ ./eid.patch ]; + + installPhase = '' + mkdir -p $out/pcsc/drivers + cp -r proprietary/*.bundle $out/pcsc/drivers + ''; + + libPath = stdenv.lib.makeLibraryPath [ libusb ]; + + fixupPhase = '' + patchelf --set-rpath $libPath \ + $out/pcsc/drivers/SCLGENERIC.bundle/Contents/Linux/libSCLGENERIC.so.${version}; + ''; + + meta = with stdenv.lib; { + description = "SCM Microsystems SCL011 chipcard reader user space driver"; + homepage = http://www.scm-pc-card.de/index.php?lang=en&page=product&function=show_product&product_id=630; + downloadPage = https://support.identiv.com/scl010-scl011/; + license = licenses.unfreeRedistributable; + maintainers = with maintainers; [ sephalon ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/tools/security/pcsc-scm-scl011/eid.patch b/pkgs/tools/security/pcsc-scm-scl011/eid.patch new file mode 100644 index 0000000000000..6e7ffd60f72fa --- /dev/null +++ b/pkgs/tools/security/pcsc-scm-scl011/eid.patch @@ -0,0 +1,28 @@ +diff --git a/proprietary/SCLGENERIC.bundle/Contents/Info.plist b/proprietary/SCLGENERIC.bundle/Contents/Info.plist +index 412d6b9..5d1c6cc 100755 +--- a/proprietary/SCLGENERIC.bundle/Contents/Info.plist ++++ b/proprietary/SCLGENERIC.bundle/Contents/Info.plist +@@ -34,6 +34,7 @@ + <string>0x04E6</string> + <string>0x04E6</string> + <string>0x04E6</string> ++ <string>0x04E6</string> + </array> + + <key>ifdProductID</key> +@@ -42,6 +43,7 @@ + <string>0x5291</string> + <string>0x5290</string> + <string>0x5293</string> ++ <string>0x5292</string> + </array> + + <key>ifdFriendlyName</key> +@@ -50,6 +52,7 @@ + <string>SCL010 Contactless Reader</string> + <string>SCR331CL-NTTCom</string> + <string>SCL011G Contactless Reader</string> ++ <string>SCM Microsystems, Inc. SCL011 RFID reader</string> + </array> + + </dict> |