|
|
|
@ -1,34 +1,61 @@ |
|
|
|
|
{ lib, stdenv, fetchFromGitHub, autoreconfHook, pkg-config, which |
|
|
|
|
, gettext, libffi, libiconv, libtasn1 |
|
|
|
|
{ lib |
|
|
|
|
, stdenv |
|
|
|
|
, fetchFromGitHub |
|
|
|
|
, autoreconfHook |
|
|
|
|
, docbook-xsl-nons |
|
|
|
|
, gtk-doc |
|
|
|
|
, installShellFiles |
|
|
|
|
, libxslt # for xsltproc |
|
|
|
|
, pkg-config |
|
|
|
|
, which |
|
|
|
|
, libffi |
|
|
|
|
, libiconv |
|
|
|
|
, libintl |
|
|
|
|
, libtasn1 |
|
|
|
|
}: |
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
pname = "p11-kit"; |
|
|
|
|
version = "0.24.0"; |
|
|
|
|
version = "0.24.1"; |
|
|
|
|
|
|
|
|
|
src = fetchFromGitHub { |
|
|
|
|
owner = "p11-glue"; |
|
|
|
|
repo = pname; |
|
|
|
|
rev = version; |
|
|
|
|
sha256 = "sha256-jvUzOhMvbq05SxQ+kjKQHDDMzNwo4U6nFHu3JjygJHw="; |
|
|
|
|
hash = "sha256-1QIMEGBZsqLYU3v5ZswD5K9VcIGLBovJlC10lBHhH7c="; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
outputs = [ "out" "dev"]; |
|
|
|
|
outputBin = "dev"; |
|
|
|
|
outputs = [ "out" "bin" "dev"]; |
|
|
|
|
|
|
|
|
|
# for cross platform builds of p11-kit, libtasn1 in nativeBuildInputs |
|
|
|
|
# For cross platform builds of p11-kit, libtasn1 in nativeBuildInputs |
|
|
|
|
# provides the asn1Parser binary on the hostPlatform needed for building. |
|
|
|
|
# at the same time, libtasn1 in buildInputs provides the libasn1 library |
|
|
|
|
# to link against for the target platform. |
|
|
|
|
# hence, libtasn1 is required in both native and build inputs. |
|
|
|
|
nativeBuildInputs = [ autoreconfHook pkg-config which libtasn1 ]; |
|
|
|
|
buildInputs = [ gettext libffi libiconv libtasn1 ]; |
|
|
|
|
# Hence, libtasn1 is required in both native and build inputs. |
|
|
|
|
nativeBuildInputs = [ |
|
|
|
|
autoreconfHook |
|
|
|
|
docbook-xsl-nons |
|
|
|
|
gtk-doc |
|
|
|
|
installShellFiles |
|
|
|
|
libtasn1 |
|
|
|
|
libxslt.bin |
|
|
|
|
pkg-config |
|
|
|
|
which |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
buildInputs = [ |
|
|
|
|
libffi |
|
|
|
|
libiconv |
|
|
|
|
libintl |
|
|
|
|
libtasn1 |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
autoreconfPhase = '' |
|
|
|
|
NOCONFIGURE=1 ./autogen.sh |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
configureFlags = [ |
|
|
|
|
"--enable-doc" |
|
|
|
|
"--sysconfdir=/etc" |
|
|
|
|
"--localstatedir=/var" |
|
|
|
|
"--with-trust-paths=${lib.concatStringsSep ":" [ |
|
|
|
@ -53,6 +80,10 @@ stdenv.mkDerivation rec { |
|
|
|
|
"exampledir=${placeholder "out"}/etc/pkcs11" |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
postInstall = '' |
|
|
|
|
installShellCompletion --bash bash-completion/{p11-kit,trust} |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
meta = with lib; { |
|
|
|
|
description = "Library for loading and sharing PKCS#11 modules"; |
|
|
|
|
longDescription = '' |
|
|
|
@ -61,6 +92,10 @@ stdenv.mkDerivation rec { |
|
|
|
|
PKCS#11 modules in such a way that they're discoverable. |
|
|
|
|
''; |
|
|
|
|
homepage = "https://p11-glue.github.io/p11-glue/p11-kit.html"; |
|
|
|
|
changelog = [ |
|
|
|
|
"https://github.com/p11-glue/p11-kit/raw/${version}/NEWS" |
|
|
|
|
"https://github.com/p11-glue/p11-kit/releases/tag/${version}" |
|
|
|
|
]; |
|
|
|
|
platforms = platforms.all; |
|
|
|
|
license = licenses.bsd3; |
|
|
|
|
}; |
|
|
|
|