diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/tools/security/opensc/default.nix')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/tools/security/opensc/default.nix | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/security/opensc/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/security/opensc/default.nix new file mode 100644 index 000000000000..735f7558e7a8 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/tools/security/opensc/default.nix @@ -0,0 +1,65 @@ +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, zlib, readline, openssl +, libiconv, pcsclite, libassuan, libXt +, docbook_xsl, libxslt, docbook_xml_dtd_412 +, Carbon, PCSC, buildPackages +, withApplePCSC ? stdenv.isDarwin +}: + +stdenv.mkDerivation rec { + pname = "opensc"; + version = "0.21.0"; + + src = fetchFromGitHub { + owner = "OpenSC"; + repo = "OpenSC"; + rev = version; + sha256 = "sha256-OjOfA1pIu8NeN+hPuow5UVMKsg0PrsLojw5h05/Qm+o="; + }; + + nativeBuildInputs = [ pkgconfig autoreconfHook ]; + buildInputs = [ + zlib readline openssl libassuan + libXt libxslt libiconv docbook_xml_dtd_412 + ] + ++ stdenv.lib.optional stdenv.isDarwin Carbon + ++ (if withApplePCSC then [ PCSC ] else [ pcsclite ]); + + NIX_CFLAGS_COMPILE = "-Wno-error"; + + configureFlags = [ + "--enable-zlib" + "--enable-readline" + "--enable-openssl" + "--enable-pcsc" + "--enable-sm" + "--enable-man" + "--enable-doc" + "--localstatedir=/var" + "--sysconfdir=/etc" + "--with-xsl-stylesheetsdir=${docbook_xsl}/xml/xsl/docbook" + "--with-pcsc-provider=${ + if withApplePCSC then + "${PCSC}/Library/Frameworks/PCSC.framework/PCSC" + else + "${stdenv.lib.getLib pcsclite}/lib/libpcsclite${stdenv.hostPlatform.extensions.sharedLibrary}" + }" + (stdenv.lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) + "XSLTPROC=${buildPackages.libxslt}/bin/xsltproc") + ]; + + PCSC_CFLAGS = stdenv.lib.optionalString withApplePCSC + "-I${PCSC}/Library/Frameworks/PCSC.framework/Headers"; + + installFlags = [ + "sysconfdir=$(out)/etc" + "completiondir=$(out)/etc" + ]; + + meta = with stdenv.lib; { + description = "Set of libraries and utilities to access smart cards"; + homepage = "https://github.com/OpenSC/OpenSC/wiki"; + license = licenses.lgpl21Plus; + platforms = platforms.all; + maintainers = [ maintainers.erictapen ]; + }; +} |