nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at 20.03 42 lines 1.3 kB view raw
1{ stdenv, fetchPypi, buildPythonPackage, swig, pcsclite, PCSC }: 2 3let 4 # Package does not support configuring the pcsc library. 5 withApplePCSC = stdenv.isDarwin; 6 7 inherit (stdenv.lib) getLib getDev optionalString optionals; 8 inherit (stdenv.hostPlatform.extensions) sharedLibrary; 9in 10 11buildPythonPackage rec { 12 version = "1.9.9"; 13 pname = "pyscard"; 14 15 src = fetchPypi { 16 inherit pname version; 17 sha256 = "082cjkbxadaz2jb4rbhr0mkrirzlqyqhcf3r823qb0q1k50ybgg6"; 18 }; 19 20 postPatch = if withApplePCSC then '' 21 substituteInPlace smartcard/scard/winscarddll.c \ 22 --replace "/System/Library/Frameworks/PCSC.framework/PCSC" \ 23 "${PCSC}/Library/Frameworks/PCSC.framework/PCSC" 24 '' else '' 25 substituteInPlace smartcard/scard/winscarddll.c \ 26 --replace "libpcsclite.so.1" \ 27 "${getLib pcsclite}/lib/libpcsclite${sharedLibrary}" 28 ''; 29 30 NIX_CFLAGS_COMPILE = optionalString (! withApplePCSC) 31 "-I ${getDev pcsclite}/include/PCSC"; 32 33 propagatedBuildInputs = if withApplePCSC then [ PCSC ] else [ pcsclite ]; 34 nativeBuildInputs = [ swig ]; 35 36 meta = { 37 homepage = https://pyscard.sourceforge.io/; 38 description = "Smartcard library for python"; 39 license = stdenv.lib.licenses.lgpl21; 40 maintainers = with stdenv.lib.maintainers; [ layus ]; 41 }; 42}