diff --git a/pkgs/development/libraries/tpm2-tss/default.nix b/pkgs/development/libraries/tpm2-tss/default.nix new file mode 100644 index 000000000000..0ea8107cad1b --- /dev/null +++ b/pkgs/development/libraries/tpm2-tss/default.nix @@ -0,0 +1,47 @@ +{ stdenv, lib, fetchurl +, cmocka, doxygen, ibm-sw-tpm2, iproute, openssl, perl, pkgconfig, procps +, uthash, which }: + +stdenv.mkDerivation rec { + pname = "tpm2-tss"; + version = "2.2.0"; + + src = fetchurl { + url = "https://github.com/tpm2-software/${pname}/releases/download/${version}/${pname}-${version}.tar.gz"; + sha256 = "10r5wgrq21p0y700gh5iirh26pc5gsaib2b8b2nzmbr27apiw4y9"; + }; + + nativeBuildInputs = [ + doxygen perl pkgconfig + # For unit tests and integration tests. + ibm-sw-tpm2 iproute procps which + ]; + buildInputs = [ + openssl + # For unit tests and integration tests. + cmocka uthash + ]; + + postPatch = "patchShebangs script"; + + configureFlags = [ + "--enable-unit" + "--enable-integration" + ]; + + doCheck = true; + + postInstall = '' + # Do not install the upstream udev rules, they rely on specific + # users/groups which aren't guaranteed to exist on the system. + rm -R $out/lib/udev + ''; + + meta = with lib; { + description = "OSS implementation of the TCG TPM2 Software Stack (TSS2)"; + homepage = https://github.com/tpm2-software/tpm2-tss; + license = licenses.bsd2; + platforms = platforms.linux; + maintainers = with maintainers; [ delroth ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index fd5f55db264e..e225431542a4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12837,6 +12837,8 @@ in totem-pl-parser = callPackage ../development/libraries/totem-pl-parser { }; + tpm2-tss = callPackage ../development/libraries/tpm2-tss { }; + tremor = callPackage ../development/libraries/tremor { }; twolame = callPackage ../development/libraries/twolame { };