From e256dd0b807d9f05a6d45c69bd551dad66b8b670 Mon Sep 17 00:00:00 2001 From: Jan Kvapil Date: Tue, 26 Mar 2024 09:42:18 +0100 Subject: Add build with Nix flakes --- flake.lock | 61 +++++++++++++++++++++++++++++++ flake.nix | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 180 insertions(+) create mode 100644 flake.lock create mode 100644 flake.nix diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..355cf24 --- /dev/null +++ b/flake.lock @@ -0,0 +1,61 @@ +{ + "nodes": { + "flake-utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1711001935, + "narHash": "sha256-URtGpHue7HHZK0mrHnSf8wJ6OmMKYSsoLmJybrOLFSQ=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "20f77aa09916374aa3141cbc605c955626762c9a", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "root": { + "inputs": { + "flake-utils": "flake-utils", + "nixpkgs": "nixpkgs" + } + }, + "systems": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..d9113b6 --- /dev/null +++ b/flake.nix @@ -0,0 +1,119 @@ +{ + description = "ECTester"; + + inputs = { + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + flake-utils.url = "github:numtide/flake-utils"; + }; + + outputs = { self, nixpkgs, flake-utils, ... }: + flake-utils.lib.eachDefaultSystem (system: + let + overlays = [ ]; + pkgs = import nixpkgs { + inherit system overlays; + }; + # pythonPackages = with pkgs.python310Packages; [ + # venvShellHook + # pyyaml + # numpy + # jinja2 + # typing-extensions + # ]; + in + with pkgs; + { + devShells.default = mkShell rec { + buildInputs = [ + ant + jdk11 + pkg-config + global-platform-pro + # libraries to test + openssl + boringssl + libressl + libtomcrypt + libtommath + botan2 + cryptopp + + # libraries' dependencies + cmake + ninja + gawk + automake + go + gtest + libunwind + autoconf + libb64 + + clang + libgcrypt + mbedtls + nasm + libtool + perl + + wolfssl + nettle + libressl + ]; + + LD_LIBRARY_PATH = with pkgs; pkgs.lib.makeLibraryPath [ + libtomcrypt + cryptopp + ]; + + # NOTE: Mixing postVenvCreation aznd shellHook results in only shellHook being called + # shellHook = '' + # source ${venvDir}/bin/activate + # export PATH=$PATH:$HOME/projects/ts-spect-compiler/build/src/apps; + # export TS_REPO_ROOT=`pwd`; + # ''; + buildBoringSSL = '' + mkdir --parents build + pushd build + cmake -GNinja -DBUILD_SHARED_LIBS=1 .. + ninja + popd + ''; + + buildLibreSSL = '' + ./autogen.sh + mkdir --parents build + pushd build + cmake -GNinja -DBUILD_SHARED_LIBS=1 .. + ninja + popd + ''; + + buildIppCrypto = '' + CC=clang CXX=clang++ cmake CMakeLists.txt -GNinja -Bbuild -DARCH=intel64 # Does not work with GCC 12+ + mkdir --parents build + pushd build + ninja + popd + ''; + + # shellHook = '' + # git submodule update --init --recursive + + # pushd ext/boringssl + # ${buildBoringSSL} + # popd + + # pushd ext/ipp-crypto + # ${buildIppCrypto} + # popd + + # pushd ext/libressl + # ${buildLibreSSL} + # popd + # ''; + + }; + } + ); +} -- cgit v1.3.1 From 84c71b38c0c74cbb5bbdc85c8864118722f257a4 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 19 Jun 2024 12:52:30 +0200 Subject: Update Nix flake environment --- flake.nix | 52 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 51 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index d9113b6..d3662e2 100644 --- a/flake.nix +++ b/flake.nix @@ -25,10 +25,12 @@ { devShells.default = mkShell rec { buildInputs = [ + gdb ant jdk11 pkg-config global-platform-pro + gradle # libraries to test openssl boringssl @@ -59,11 +61,24 @@ wolfssl nettle libressl + + gmp + libgpg-error + wget + libconfig ]; LD_LIBRARY_PATH = with pkgs; pkgs.lib.makeLibraryPath [ + libtommath libtomcrypt + botan2 cryptopp + openssl + libgcrypt + nettle + gmp + libgpg-error + libconfig ]; # NOTE: Mixing postVenvCreation aznd shellHook results in only shellHook being called @@ -89,6 +104,11 @@ popd ''; + # TODO OpenJDK 64-Bit Server VM warning: You have loaded library + # /home/qup/.local/share/ECTesterStandalone/lib/lib_ippcp.so which + # might have disabled stack guard. The VM will try to fix the stack + # guard now. It's highly recommended that you fix the library with + # 'execstack -c ', or link it with '-z noexecstack'. buildIppCrypto = '' CC=clang CXX=clang++ cmake CMakeLists.txt -GNinja -Bbuild -DARCH=intel64 # Does not work with GCC 12+ mkdir --parents build @@ -97,7 +117,37 @@ popd ''; - # shellHook = '' + buildMbedTLS = '' + python -m venv virt + . virt/bin/activate + pip install -r scripts/basic.requirements.txt + cmake -GNinja -Bbuild -DUSE_SHARED_MBEDTLS_LIBRARY=On + cd build + ninja + ''; + + wolfCrypt-JNI = '' + mkdir junit + wget -P junit/ https://repo1.maven.org/maven2/junit/junit/4.13.2/junit-4.13.2.jar + wget -P junit/ https://repo1.maven.org/maven2/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar + make -f makefile.linux + env JUNIT_HOME=junit/ ant build-jce-release + ''; + + # TODO add LD_LIB properly + shellHook = '' + export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HOME/projects/ts-spect-compiler/build/src/cosim + + ''; + + # pushd ext/wolfcrypt-jni + # ${wolfCrypt-JNI} + # popd + + # pushd ext/mbedtls + # ${buildMbedTLS} + # popd + # ''; # git submodule update --init --recursive # pushd ext/boringssl -- cgit v1.3.1 From 456a6f920b7b97132dd8f875dd2971f7e899f32a Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 21 Jun 2024 16:50:07 +0200 Subject: Allow running different versions of OpenSSL Currently, only running different versions of OpenSSL is implemented as PoC to see if it would work. You can either build it or run it directly with: ``` $ nix run '.?submodules=1#openssl_316' list-libs # uses OpenSSL 3.1.6 $ nix run '.?submodules=1#openssl_322' list-libs # uses OpenSSL 3.2.2 $ nix run '.?submodules=1' list-libs # uses OpenSSL 3.3.1 ``` Adding new versions is possible, check `packages` part of `flake.nix`. To see the supported versions run: ``` $ nix flake show ``` --- flake.lock | 54 ++++- flake.nix | 204 +++++++++++++++++-- gradle.lock | 662 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 902 insertions(+), 18 deletions(-) create mode 100644 gradle.lock diff --git a/flake.lock b/flake.lock index 355cf24..fe1045b 100644 --- a/flake.lock +++ b/flake.lock @@ -18,7 +18,58 @@ "type": "github" } }, + "flake-utils_2": { + "locked": { + "lastModified": 1605370193, + "narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "5021eac20303a61fafe17224c087f5519baed54d", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "gradle2nix": { + "inputs": { + "flake-utils": "flake-utils_2", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1718325867, + "narHash": "sha256-UU9a/haXvr0qKo4noB40K7d47Zl9ZiigVE5rkeHBS7s=", + "owner": "tadfisher", + "repo": "gradle2nix", + "rev": "03c1b713ad139eb6dfc8d463b5bd348368125cf1", + "type": "github" + }, + "original": { + "owner": "tadfisher", + "repo": "gradle2nix", + "rev": "03c1b713ad139eb6dfc8d463b5bd348368125cf1", + "type": "github" + } + }, "nixpkgs": { + "locked": { + "lastModified": 1718530797, + "narHash": "sha256-pup6cYwtgvzDpvpSCFh1TEUjw2zkNpk8iolbKnyFmmU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "b60ebf54c15553b393d144357375ea956f89e9a9", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { "locked": { "lastModified": 1711001935, "narHash": "sha256-URtGpHue7HHZK0mrHnSf8wJ6OmMKYSsoLmJybrOLFSQ=", @@ -37,7 +88,8 @@ "root": { "inputs": { "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" + "gradle2nix": "gradle2nix", + "nixpkgs": "nixpkgs_2" } }, "systems": { diff --git a/flake.nix b/flake.nix index d3662e2..d7c55c4 100644 --- a/flake.nix +++ b/flake.nix @@ -4,37 +4,207 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; + gradle2nix.url = "github:tadfisher/gradle2nix/03c1b713ad139eb6dfc8d463b5bd348368125cf1"; + # FIXME how to add submodule declaratively? + # submodule = { + # url = ./ + # }; }; - outputs = { self, nixpkgs, flake-utils, ... }: + outputs = { self, nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let - overlays = [ ]; + openssl_3013 = pkgs.openssl.overrideAttrs (_old: rec { + version = "3.0.13"; + pname = "openssl"; + src = pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="; + }; + # FIXME this might cause unwanted things + patches = []; + }); + openssl_315 = pkgs.openssl.overrideAttrs (_old: rec { + version = "3.1.5"; + pname = "openssl"; + src = pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + hash = "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="; + }; + # FIXME this might cause unwanted things + patches = []; + }); + overlays = [ + # (final: prev: { + # openssl_01 = prev.openssl.overrideAttrs (old: rec{ + # version = "3.0.8"; + # pname = "openssl"; + # src = pkgs.fetchurl { + # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + # hash = "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="; + # }; + # # FIXME this might cause unwanted things + # patches = []; + # }); + # }) + ]; pkgs = import nixpkgs { inherit system overlays; }; - # pythonPackages = with pkgs.python310Packages; [ - # venvShellHook - # pyyaml - # numpy - # jinja2 - # typing-extensions - # ]; + buildECTesterStandalone = { opensslVersion, opensslHash }: ( + let + ov = opensslVersion; + patched_openssl = pkgs.openssl.overrideAttrs (_old: rec { + version = opensslVersion; + pname = "openssl"; + src = pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + hash = opensslHash; + }; + # FIXME this might cause unwanted things + patches = []; + }); + in + with pkgs; + gradle2nix.builders.${system}.buildGradlePackage rec { + pname = "ECTesterStandalone"; + version = "0.3.3"; + # gradleInstallFlags = [ "installDist" ]; + # gradleBuildFlags = [ "standalone:uberJar" ]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + lockFile = ./gradle.lock; + gradleBuildFlags = [ "libs" "-PlibName=openssl" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + src = ./.; + + nativeBuildInputs = [ + gdb + ant + jdk17 + pkg-config + global-platform-pro + gradle + patched_openssl + makeWrapper + + # libraries to test + # openssl_3013 + boringssl + # libressl + libtomcrypt + libtommath + botan2 + cryptopp + + # libraries' dependencies + # cmake + # ninja + gawk + automake + go + gtest + libunwind + autoconf + libb64 + + clang + libgcrypt + mbedtls + nasm + libtool + perl + + wolfssl + nettle + # libressl + + gmp + libgpg-error + wget + libconfig + ]; + + # preConfigure = '' + # pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni + # make lib_timing.so + # make lib_csignals.so + # make lib_cppsignals.so + # # make clean + # make openssl + # # openssl version + # popd + # ''; + + # buildPhase = '' + # ./gradlew clean build --offline + # ''; + + buildInputs = [ + jdk17_headless + patched_openssl + ]; + + LD_LIBRARY_PATH = lib.makeLibraryPath [ + libtommath + libtomcrypt + botan2 + cryptopp + libgcrypt + patched_openssl + ninja + nettle + gmp + libgpg-error + libconfig + ]; + + # FIXME more things to copy here + installPhase = '' + mkdir -p $out + cp -r standalone/build $out + echo ${opensslVersion} > $out/build/opensslVersion + ''; + + postFixup = '' + + makeWrapper \ + ${jdk17_headless}/bin/java $out/bin/${pname} \ + --add-flags "-jar $out/build/libs/${pname}.jar" \ + --set LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:$LD_LIBRARY_PATH + ''; + + }); in - with pkgs; { - devShells.default = mkShell rec { + packages = { + default = buildECTesterStandalone { + opensslVersion="3.3.1"; opensslHash="sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; + }; + openssl_331 = buildECTesterStandalone { + opensslVersion="3.3.1"; opensslHash="sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; + }; + openssl_322 = buildECTesterStandalone { + opensslVersion="3.2.2"; opensslHash="sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc="; + }; + openssl_316 = buildECTesterStandalone { + opensslVersion="3.1.6"; opensslHash="sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc="; + }; + openssl_3014 = buildECTesterStandalone { + opensslVersion="3.0.14"; opensslHash="sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o="; + }; + # openssl_111w = buildECTesterStandalone "1.1.1w" "sha256-zzCYlQy02FOtlcCEHx+cbT3BAtzPys1SHZOSUgi3asg="; + }; + devShells.default = with pkgs; mkShell rec { buildInputs = [ + # gradle2nix gdb ant - jdk11 + jdk17 pkg-config global-platform-pro gradle # libraries to test - openssl + openssl_3013 boringssl - libressl + # libressl libtomcrypt libtommath botan2 @@ -60,7 +230,7 @@ wolfssl nettle - libressl + # libressl gmp libgpg-error @@ -73,7 +243,7 @@ libtomcrypt botan2 cryptopp - openssl + openssl_3013 libgcrypt nettle gmp @@ -128,7 +298,7 @@ wolfCrypt-JNI = '' mkdir junit - wget -P junit/ https://repo1.maven.org/maven2/junit/junit/4.13.2/junit-4.13.2.jar + wget -P junit/ https://repo1.maven.org/maven2/junit/junit/4.13.2/junit-4.13.2.jar wget -P junit/ https://repo1.maven.org/maven2/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar make -f makefile.linux env JUNIT_HOME=junit/ ant build-jce-release diff --git a/gradle.lock b/gradle.lock new file mode 100644 index 0000000..fd60509 --- /dev/null +++ b/gradle.lock @@ -0,0 +1,662 @@ +{ + "com.adarshr:gradle-test-logger-plugin:4.0.0": { + "gradle-test-logger-plugin-4.0.0.jar": { + "url": "https://plugins.gradle.org/m2/com/adarshr/gradle-test-logger-plugin/4.0.0/gradle-test-logger-plugin-4.0.0.jar", + "hash": "sha256-5nhoOjPSvINWcb3U5YcQAErR2TFqqfmlTP4iQZpPbvk=" + }, + "gradle-test-logger-plugin-4.0.0.module": { + "url": "https://plugins.gradle.org/m2/com/adarshr/gradle-test-logger-plugin/4.0.0/gradle-test-logger-plugin-4.0.0.module", + "hash": "sha256-jERLLH/UQgDNSrMYJyJwHCCXWkOyPH6e35sCJgSavcI=" + }, + "gradle-test-logger-plugin-4.0.0.pom": { + "url": "https://plugins.gradle.org/m2/com/adarshr/gradle-test-logger-plugin/4.0.0/gradle-test-logger-plugin-4.0.0.pom", + "hash": "sha256-ienBpTqmJS2mx9fZscN/t/j8qQuysaNq+Ti8cNni3GE=" + } + }, + "com.adarshr.test-logger:com.adarshr.test-logger.gradle.plugin:4.0.0": { + "com.adarshr.test-logger.gradle.plugin-4.0.0.pom": { + "url": "https://plugins.gradle.org/m2/com/adarshr/test-logger/com.adarshr.test-logger.gradle.plugin/4.0.0/com.adarshr.test-logger.gradle.plugin-4.0.0.pom", + "hash": "sha256-sobTcqzS2uG4vHsg/ouoT49kiXMdiBpB83NqYCCFotc=" + } + }, + "com.github.martinpaljak:ant-javacard:20.03.25": { + "ant-javacard-20.03.25.jar": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/ant-javacard/20.03.25/ant-javacard-20.03.25.jar", + "hash": "sha256-AaeqhIfDXEcrMW2o0eO3sYdntwCnBIXvLKV2joXkfA8=" + }, + "ant-javacard-20.03.25.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/ant-javacard/20.03.25/ant-javacard-20.03.25.pom", + "hash": "sha256-5jjX7HmC23dhbeljE5XlDYpDlLca61MvltW/bs+0b5U=" + } + }, + "com.github.martinpaljak:apdu4j:20.08.12": { + "apdu4j-20.08.12.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/apdu4j/20.08.12/apdu4j-20.08.12.pom", + "hash": "sha256-ztab0pETf9vx4ekaLYezFS4W0piFmYaoV9vc3Zom+yk=" + } + }, + "com.github.martinpaljak:apdu4j:20.01.01": { + "apdu4j-20.01.01.pom": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/apdu4j/20.01.01/apdu4j-20.01.01.pom", + "hash": "sha256-Zi8AnPGl2jp4p9A12FhQQ0+l6BGI0LTiuFje+OUNbsk=" + } + }, + "com.github.martinpaljak:apdu4j-core:2020b1": { + "apdu4j-core-2020b1.jar": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/apdu4j-core/2020b1/apdu4j-core-2020b1.jar", + "hash": "sha256-12S0X1ZADPXjrS1XCF+FunWS7gBljBDu9ylirI9owh0=" + }, + "apdu4j-core-2020b1.pom": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/apdu4j-core/2020b1/apdu4j-core-2020b1.pom", + "hash": "sha256-Xm3Nrs7cvsY1nxU+JCOAaJ0yoagC3PsoCK6ezYzqqkc=" + } + }, + "com.github.martinpaljak:apdu4j-jnasmartcardio:0.2.7+191107": { + "apdu4j-jnasmartcardio-0.2.7+191107.jar": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/apdu4j-jnasmartcardio/0.2.7+191107/apdu4j-jnasmartcardio-0.2.7+191107.jar", + "hash": "sha256-DNtj+vB0ex1StCwd+5Nw0b7IvwbJKuWzAcm9reRl0c4=" + }, + "apdu4j-jnasmartcardio-0.2.7+191107.pom": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/apdu4j-jnasmartcardio/0.2.7+191107/apdu4j-jnasmartcardio-0.2.7+191107.pom", + "hash": "sha256-POAMo0RFbpG74ZewZEXQkoAJUbAClNXGgXVReyHXrX4=" + } + }, + "com.github.martinpaljak:apdu4j-pcsc:20.08.12": { + "apdu4j-pcsc-20.08.12.jar": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/apdu4j-pcsc/20.08.12/apdu4j-pcsc-20.08.12.jar", + "hash": "sha256-U2vhSqUZkArMVkoU4+pvjjbwiqtsSIRfCqtxi4U7mik=" + }, + "apdu4j-pcsc-20.08.12.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/apdu4j-pcsc/20.08.12/apdu4j-pcsc-20.08.12.pom", + "hash": "sha256-oTNIxr5QdONqBCjd9xQGAqfArFtaCo17h8iYBZQvs4o=" + } + }, + "com.github.martinpaljak:capfile:20.08.12": { + "capfile-20.08.12.jar": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/capfile/20.08.12/capfile-20.08.12.jar", + "hash": "sha256-iGwgQJ76QTN11+QleUnDbqgkV/Bx37Gnb+slpgf+tIs=" + }, + "capfile-20.08.12.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/capfile/20.08.12/capfile-20.08.12.pom", + "hash": "sha256-EfZru+/lXlp/iMvjq7sTXcOZGeJxTVFnIv7+WBeG4Yo=" + } + }, + "com.github.martinpaljak:capfile:20.02.19": { + "capfile-20.02.19.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/capfile/20.02.19/capfile-20.02.19.pom", + "hash": "sha256-nS29stixt+TAE5K1r7IJudLA375GPNLCpNSsrv0w9WM=" + } + }, + "com.github.martinpaljak:globalplatformpro:20.08.12": { + "globalplatformpro-20.08.12.jar": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/globalplatformpro/20.08.12/globalplatformpro-20.08.12.jar", + "hash": "sha256-euZ78fN7Y1AUTBUAzAXXReaPrbxIGESH+gO5rlJv8Lw=" + }, + "globalplatformpro-20.08.12.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/globalplatformpro/20.08.12/globalplatformpro-20.08.12.pom", + "hash": "sha256-q+xw/3RFIh1UCDa6pCefSPQBkYftJBzjpVrFDqnyHoA=" + } + }, + "com.github.martinpaljak:gppro:20.08.12": { + "gppro-20.08.12.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/gppro/20.08.12/gppro-20.08.12.pom", + "hash": "sha256-Aa4sLUSVzPYw9BgSU5jBbafj0EtCUR7fZlB/+S/4YBE=" + } + }, + "com.github.martinpaljak:gptool:20.08.12": { + "gptool-20.08.12.jar": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/gptool/20.08.12/gptool-20.08.12.jar", + "hash": "sha256-DvjUqhj2flSdbZRLoROzgg1FJqr71jo0RzCoexoSC8k=" + }, + "gptool-20.08.12.pom": { + "url": "https://javacard.pro/maven/com/github/martinpaljak/gptool/20.08.12/gptool-20.08.12.pom", + "hash": "sha256-+phLgJ2Q3PSpq0dvA+6c68duDHxo0cgzKSurtKpcr3E=" + } + }, + "com.github.martinpaljak:metacard:20.08.07": { + "metacard-20.08.07.pom": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/metacard/20.08.07/metacard-20.08.07.pom", + "hash": "sha256-yD2dp0zDBDK9u7aCTlTjCpMbKtOhaK8JbVUSsaNecYo=" + } + }, + "com.github.martinpaljak:metacard:20.02.19": { + "metacard-20.02.19.pom": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/metacard/20.02.19/metacard-20.02.19.pom", + "hash": "sha256-3uB4lZGXY6Y61yHaUxMxmVDilkP0C8AFIZjOBrW9c64=" + } + }, + "com.github.martinpaljak:metacard:19.10.01": { + "metacard-19.10.01.pom": { + "url": "https://repo.maven.apache.org/maven2/com/github/martinpaljak/metacard/19.10.01/metacard-19.10.01.pom", + "hash": "sha256-CwVwywO0djSumPdr6KNyo9YJNanaYLiu7/NE8AJZ1d8=" + } + }, + "com.google.code.findbugs:jsr305:3.0.2": { + "jsr305-3.0.2.jar": { + "url": "https://plugins.gradle.org/m2/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar", + "hash": "sha256-dmrSoHg/JoeWLIrXTO7MOKKLn3Ki0IXuQ4t4E+ko0Mc=" + }, + "jsr305-3.0.2.pom": { + "url": "https://plugins.gradle.org/m2/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.pom", + "hash": "sha256-GYidvfGyVLJgGl7mRbgUepdGRIgil2hMeYr+XWPXjf4=" + } + }, + "com.google.code.gson:gson:2.9.1": { + "gson-2.9.1.jar": { + "url": "https://plugins.gradle.org/m2/com/google/code/gson/gson/2.9.1/gson-2.9.1.jar", + "hash": "sha256-N4U04znm5tULFzb7Ort28cFdG+P0wTzsbVNkEuI9pgM=" + }, + "gson-2.9.1.pom": { + "url": "https://plugins.gradle.org/m2/com/google/code/gson/gson/2.9.1/gson-2.9.1.pom", + "hash": "sha256-5ZZjI9cUJXCzekvpeeIbwtroSBB+TcQW2PRNmqPwKQM=" + } + }, + "com.google.code.gson:gson-parent:2.9.1": { + "gson-parent-2.9.1.pom": { + "url": "https://plugins.gradle.org/m2/com/google/code/gson/gson-parent/2.9.1/gson-parent-2.9.1.pom", + "hash": "sha256-fKCEXnNoVhjePka9NDTQOko3PVIPq5OmgDGK1sjLKnk=" + } + }, + "com.google.osdetector:com.google.osdetector.gradle.plugin:1.7.3": { + "com.google.osdetector.gradle.plugin-1.7.3.pom": { + "url": "https://plugins.gradle.org/m2/com/google/osdetector/com.google.osdetector.gradle.plugin/1.7.3/com.google.osdetector.gradle.plugin-1.7.3.pom", + "hash": "sha256-gL7JV6QGQ/JKPyKKYq9qVrWPb6tzrWgsB1BkYj497q8=" + } + }, + "com.klinec:gradle-javacard:1.8.0": { + "gradle-javacard-1.8.0.jar": { + "url": "https://repo.maven.apache.org/maven2/com/klinec/gradle-javacard/1.8.0/gradle-javacard-1.8.0.jar", + "hash": "sha256-3BqW2ygiHAKAE5oqnRRTVvqdLn5ytfinlzU0ggxeTwQ=" + }, + "gradle-javacard-1.8.0.pom": { + "url": "https://repo.maven.apache.org/maven2/com/klinec/gradle-javacard/1.8.0/gradle-javacard-1.8.0.pom", + "hash": "sha256-acs7+60LOtrXFLKybmIuQkX8u9ivtwJXT6jy6VVGBdc=" + } + }, + "com.klinec:jcardsim:3.0.5.11": { + "jcardsim-3.0.5.11.jar": { + "url": "https://repo.maven.apache.org/maven2/com/klinec/jcardsim/3.0.5.11/jcardsim-3.0.5.11.jar", + "hash": "sha256-9sO2uBQEAaR88517nb/AUuOBR0xsOyIBgFECS+H8qXw=" + }, + "jcardsim-3.0.5.11.pom": { + "url": "https://repo.maven.apache.org/maven2/com/klinec/jcardsim/3.0.5.11/jcardsim-3.0.5.11.pom", + "hash": "sha256-pQ+boNGgeOswipNcHCmztjGzb7994xjXio9BijZ0WFU=" + } + }, + "com.klinec.gradle.javacard:com.klinec.gradle.javacard.gradle.plugin:1.8.0": { + "com.klinec.gradle.javacard.gradle.plugin-1.8.0.pom": { + "url": "https://plugins.gradle.org/m2/com/klinec/gradle/javacard/com.klinec.gradle.javacard.gradle.plugin/1.8.0/com.klinec.gradle.javacard.gradle.plugin-1.8.0.pom", + "hash": "sha256-Un2E9my/Evxt/nRe1QmLg6/ITxCD2VGfwnS4btfpj8I=" + } + }, + "com.payneteasy:ber-tlv:1.0-11": { + "ber-tlv-1.0-11.jar": { + "url": "https://repo.maven.apache.org/maven2/com/payneteasy/ber-tlv/1.0-11/ber-tlv-1.0-11.jar", + "hash": "sha256-pDXqu1JsfQbKrSDd3xZ3E2i6ZkDlUY/6yGFP3Kw9ioA=" + }, + "ber-tlv-1.0-11.pom": { + "url": "https://repo.maven.apache.org/maven2/com/payneteasy/ber-tlv/1.0-11/ber-tlv-1.0-11.pom", + "hash": "sha256-71UFphwg/y733c/62MYbVga5Aba0/zPnyCg6FGaZ9lw=" + } + }, + "commons-cli:commons-cli:1.5.0": { + "commons-cli-1.5.0.jar": { + "url": "https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.5.0/commons-cli-1.5.0.jar", + "hash": "sha256-vIuwH8D60lA4VwbiD5J93P9hc/Yzmzh9yHkjd1JWesY=" + }, + "commons-cli-1.5.0.pom": { + "url": "https://repo.maven.apache.org/maven2/commons-cli/commons-cli/1.5.0/commons-cli-1.5.0.pom", + "hash": "sha256-TuxDxPwoBMvrQ2mcq/qC+gYocfzB3P0QkCpdglIGdMA=" + } + }, + "gradle.plugin.com.google.gradle:osdetector-gradle-plugin:1.7.3": { + "osdetector-gradle-plugin-1.7.3.jar": { + "url": "https://plugins.gradle.org/m2/gradle/plugin/com/google/gradle/osdetector-gradle-plugin/1.7.3/osdetector-gradle-plugin-1.7.3.jar", + "hash": "sha256-a0aS+ROiGx+2Axae54uo8+SrKvnXYq+cqIt5EmwcCtE=" + }, + "osdetector-gradle-plugin-1.7.3.pom": { + "url": "https://plugins.gradle.org/m2/gradle/plugin/com/google/gradle/osdetector-gradle-plugin/1.7.3/osdetector-gradle-plugin-1.7.3.pom", + "hash": "sha256-gNpA8CGxqhjk0WqszV1o/J0iOs9qIEAfsNj8s1J7Hiw=" + } + }, + "gradle.plugin.com.klinec:gradle-javacard:1.8.0": { + "gradle-javacard-1.8.0.jar": { + "url": "https://plugins.gradle.org/m2/gradle/plugin/com/klinec/gradle-javacard/1.8.0/gradle-javacard-1.8.0.jar", + "hash": "sha256-3BqW2ygiHAKAE5oqnRRTVvqdLn5ytfinlzU0ggxeTwQ=" + }, + "gradle-javacard-1.8.0.pom": { + "url": "https://plugins.gradle.org/m2/gradle/plugin/com/klinec/gradle-javacard/1.8.0/gradle-javacard-1.8.0.pom", + "hash": "sha256-1naGr/W283OGw8RSCJGL2hu/xMjNNPfBQbn8uYQKH20=" + } + }, + "kr.motd.maven:os-maven-plugin:1.7.1": { + "os-maven-plugin-1.7.1.jar": { + "url": "https://plugins.gradle.org/m2/kr/motd/maven/os-maven-plugin/1.7.1/os-maven-plugin-1.7.1.jar", + "hash": "sha256-9Hru+Ggh5SsrGHWJeL0EXwPXIikuMudHCCEixiKJUuA=" + }, + "os-maven-plugin-1.7.1.pom": { + "url": "https://plugins.gradle.org/m2/kr/motd/maven/os-maven-plugin/1.7.1/os-maven-plugin-1.7.1.pom", + "hash": "sha256-S3WABEIrljPdMY8p54Tx0YC9ilkgzVCvGTCGH21qVHY=" + } + }, + "net.java.dev.jna:jna:5.5.0": { + "jna-5.5.0.jar": { + "url": "https://repo.maven.apache.org/maven2/net/java/dev/jna/jna/5.5.0/jna-5.5.0.jar", + "hash": "sha256-swj66/5O1AnehBDgpjLRZLISawNfbqz/lo05CMr7TZ4=" + }, + "jna-5.5.0.pom": { + "url": "https://repo.maven.apache.org/maven2/net/java/dev/jna/jna/5.5.0/jna-5.5.0.pom", + "hash": "sha256-pRrZTj90+Fo8362XU5KCkxZFJmn1iCA8e0nl+Beb5Tk=" + } + }, + "net.sf.jopt-simple:jopt-simple:5.0.4": { + "jopt-simple-5.0.4.jar": { + "url": "https://repo.maven.apache.org/maven2/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.jar", + "hash": "sha256-3ybMWPI19HfbB/dTulo6skPr5Xidn4ns9o3WLqmmbCg=" + }, + "jopt-simple-5.0.4.pom": { + "url": "https://repo.maven.apache.org/maven2/net/sf/jopt-simple/jopt-simple/5.0.4/jopt-simple-5.0.4.pom", + "hash": "sha256-amd2O3avzZyAuV5cXiR4LRjMGw49m0VK0/h1THa3aBU=" + } + }, + "org.apache:apache:23": { + "apache-23.pom": { + "url": "https://repo.maven.apache.org/maven2/org/apache/apache/23/apache-23.pom", + "hash": "sha256-vBBiTgYj82V3+sVjnKKTbTJA7RUvttjVM6tNJwVDSRw=" + } + }, + "org.apache.commons:commons-parent:52": { + "commons-parent-52.pom": { + "url": "https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/52/commons-parent-52.pom", + "hash": "sha256-ddvo806Y5MP/QtquSi+etMvNO18QR9VEYKzpBtu0UC4=" + } + }, + "org.apiguardian:apiguardian-api:1.1.2": { + "apiguardian-api-1.1.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar", + "hash": "sha256-tQlEisUG1gcxnxglN/CzXXEAdYLsdBgyofER5bW3Czg=" + }, + "apiguardian-api-1.1.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.module", + "hash": "sha256-4IAoExN1s1fR0oc06aT7QhbahLJAZByz7358fWKCI/w=" + }, + "apiguardian-api-1.1.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.pom", + "hash": "sha256-MjVQgdEJCVw9XTdNWkO09MG3XVSemD71ByPidy5TAqA=" + } + }, + "org.bouncycastle:bcpkix-jdk15on:1.66": { + "bcpkix-jdk15on-1.66.jar": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcpkix-jdk15on/1.66/bcpkix-jdk15on-1.66.jar", + "hash": "sha256-AtYSaDUv2zXbqZbJymij95PXuL+nV1Sqxm1pZRekIb0=" + }, + "bcpkix-jdk15on-1.66.pom": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcpkix-jdk15on/1.66/bcpkix-jdk15on-1.66.pom", + "hash": "sha256-kBX+SX7lth+nT71hCRnDqsBrQnlavO46IWCkuLvyGus=" + } + }, + "org.bouncycastle:bcpkix-jdk18on:1.77": { + "bcpkix-jdk18on-1.77.jar": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcpkix-jdk18on/1.77/bcpkix-jdk18on-1.77.jar", + "hash": "sha256-Gsf+jv1bLzjNwWW+WgZ1c0/kSAjauScHIB8DpTXW8bg=" + }, + "bcpkix-jdk18on-1.77.pom": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcpkix-jdk18on/1.77/bcpkix-jdk18on-1.77.pom", + "hash": "sha256-j7CSbwLixLLcUuR+uwk/kvHTu28UnCpcyl4qZI0sSY0=" + } + }, + "org.bouncycastle:bcprov-jdk15on:1.66": { + "bcprov-jdk15on-1.66.jar": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcprov-jdk15on/1.66/bcprov-jdk15on-1.66.jar", + "hash": "sha256-G4YduhxURd6bOKF4nCEe8oudB+JtH6OL7nF+W1EWL/4=" + }, + "bcprov-jdk15on-1.66.pom": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcprov-jdk15on/1.66/bcprov-jdk15on-1.66.pom", + "hash": "sha256-qk0WoZst+s6rlMZDbGQE6uWw+3U0n5/gYQNkZbQg8nA=" + } + }, + "org.bouncycastle:bcprov-jdk18on:1.77": { + "bcprov-jdk18on-1.77.jar": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcprov-jdk18on/1.77/bcprov-jdk18on-1.77.jar", + "hash": "sha256-2ruYwk1yybn1hWM9HfnFzVjZrTc9DNaBNn5qYDpJXVg=" + }, + "bcprov-jdk18on-1.77.pom": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcprov-jdk18on/1.77/bcprov-jdk18on-1.77.pom", + "hash": "sha256-rROCz80DvN2L4TkTwC9E/UadCnalPPLK71vhgK3DayM=" + } + }, + "org.bouncycastle:bcutil-jdk18on:1.77": { + "bcutil-jdk18on-1.77.jar": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcutil-jdk18on/1.77/bcutil-jdk18on-1.77.jar", + "hash": "sha256-lHZzvLxajd4tL6aIpbdZjQym4qdKfqMM2T8E9rOtaPg=" + }, + "bcutil-jdk18on-1.77.pom": { + "url": "https://repo.maven.apache.org/maven2/org/bouncycastle/bcutil-jdk18on/1.77/bcutil-jdk18on-1.77.pom", + "hash": "sha256-Fj36ZjL/uSinBcqDciNQys6knM1iPOc2RaXMOw+p5ug=" + } + }, + "org.fusesource:fusesource-pom:1.12": { + "fusesource-pom-1.12.pom": { + "url": "https://plugins.gradle.org/m2/org/fusesource/fusesource-pom/1.12/fusesource-pom-1.12.pom", + "hash": "sha256-xA2WDarc73sBwbHGZXr7rE//teUxaPj8sLKLhOb9zKE=" + } + }, + "org.fusesource.jansi:jansi:2.4.0": { + "jansi-2.4.0.jar": { + "url": "https://plugins.gradle.org/m2/org/fusesource/jansi/jansi/2.4.0/jansi-2.4.0.jar", + "hash": "sha256-bNkZkTI917L7KMqT16wSr1qGovUyeeKzWCezAxP9C58=" + }, + "jansi-2.4.0.pom": { + "url": "https://plugins.gradle.org/m2/org/fusesource/jansi/jansi/2.4.0/jansi-2.4.0.pom", + "hash": "sha256-rECp8tDB7mMfw7CO+OLwvRS6IgEcp2/xvPZftWnq3zU=" + } + }, + "org.gradle.toolchains:foojay-resolver:0.7.0": { + "foojay-resolver-0.7.0.jar": { + "url": "https://plugins.gradle.org/m2/org/gradle/toolchains/foojay-resolver/0.7.0/foojay-resolver-0.7.0.jar", + "hash": "sha256-k2crR0Cg/b+7W68INT24rpqbsl9rEKk8B4EmxxfbOsA=" + }, + "foojay-resolver-0.7.0.module": { + "url": "https://plugins.gradle.org/m2/org/gradle/toolchains/foojay-resolver/0.7.0/foojay-resolver-0.7.0.module", + "hash": "sha256-7WdGoJ8yv63bkLApECrmIybiSBKaaLdGYqSkM9VTFLg=" + }, + "foojay-resolver-0.7.0.pom": { + "url": "https://plugins.gradle.org/m2/org/gradle/toolchains/foojay-resolver/0.7.0/foojay-resolver-0.7.0.pom", + "hash": "sha256-iCa8+5Iq8MIR5BPTmwgWWRPAgwZkE+BzDNgrLgsKie4=" + } + }, + "org.gradle.toolchains.foojay-resolver-convention:org.gradle.toolchains.foojay-resolver-convention.gradle.plugin:0.7.0": { + "org.gradle.toolchains.foojay-resolver-convention.gradle.plugin-0.7.0.pom": { + "url": "https://plugins.gradle.org/m2/org/gradle/toolchains/foojay-resolver-convention/org.gradle.toolchains.foojay-resolver-convention.gradle.plugin/0.7.0/org.gradle.toolchains.foojay-resolver-convention.gradle.plugin-0.7.0.pom", + "hash": "sha256-yKRD4vrvh28zijkSM8IKka1bg/acHGuiDTmns5EGJAo=" + } + }, + "org.jacoco:org.jacoco.agent:0.8.11": { + "org.jacoco.agent-0.8.11.jar": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.agent/0.8.11/org.jacoco.agent-0.8.11.jar", + "hash": "sha256-0+2F3qeKntVYRqdzjjoMoVxwLGYe5LyMv+Aqi59KmcA=" + }, + "org.jacoco.agent-0.8.11.pom": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.agent/0.8.11/org.jacoco.agent-0.8.11.pom", + "hash": "sha256-FuBen0liG4fFPmk1AUDzxG1C2WbGepM730sGOiscj8U=" + } + }, + "org.jacoco:org.jacoco.ant:0.8.11": { + "org.jacoco.ant-0.8.11.jar": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.ant/0.8.11/org.jacoco.ant-0.8.11.jar", + "hash": "sha256-gdfriJDZvjCpOWEsKVYDVBBjUpzdA6UyZaunRHS3C3w=" + }, + "org.jacoco.ant-0.8.11.pom": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.ant/0.8.11/org.jacoco.ant-0.8.11.pom", + "hash": "sha256-ftED2VnQzue6v7Ewf6bkUbFpb/01JwYVU7VQ3lUgHYU=" + } + }, + "org.jacoco:org.jacoco.build:0.8.11": { + "org.jacoco.build-0.8.11.pom": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.build/0.8.11/org.jacoco.build-0.8.11.pom", + "hash": "sha256-W4SxXPLu8+WeuRvCJ4SDMQCwnfmRHjMZAww7xki9iws=" + } + }, + "org.jacoco:org.jacoco.core:0.8.11": { + "org.jacoco.core-0.8.11.jar": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.core/0.8.11/org.jacoco.core-0.8.11.jar", + "hash": "sha256-/NGIxohHP8jcwMbKrzVeeziVAiQ1J8M7lZej7Ch5H0c=" + }, + "org.jacoco.core-0.8.11.pom": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.core/0.8.11/org.jacoco.core-0.8.11.pom", + "hash": "sha256-u2E18Qo2NJy4SlYA/Yz3P8EpahNbLxStzYPejPJMq7E=" + } + }, + "org.jacoco:org.jacoco.report:0.8.11": { + "org.jacoco.report-0.8.11.jar": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.report/0.8.11/org.jacoco.report-0.8.11.jar", + "hash": "sha256-g5MpWuJGgO0QytgzOQcED5KLhxMySRWBylvHhOLLT74=" + }, + "org.jacoco.report-0.8.11.pom": { + "url": "https://repo.maven.apache.org/maven2/org/jacoco/org.jacoco.report/0.8.11/org.jacoco.report-0.8.11.pom", + "hash": "sha256-jjtzR3nV4/1oPsAVQT1S+WGYTFDLkEX9orI7/160I4E=" + } + }, + "org.junit:junit-bom:5.10.2": { + "junit-bom-5.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/junit-bom/5.10.2/junit-bom-5.10.2.module", + "hash": "sha256-3iOxFLPkEZqP5usXvtWjhSgWaYus5nBxV51tkn67CAo=" + }, + "junit-bom-5.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/junit-bom/5.10.2/junit-bom-5.10.2.pom", + "hash": "sha256-Fp3ZBKSw9lIM/+ZYzGIpK/6fPBSpifqSEgckzeQ6mWg=" + } + }, + "org.junit:junit-bom:5.9.2": { + "junit-bom-5.9.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/junit-bom/5.9.2/junit-bom-5.9.2.module", + "hash": "sha256-qxN7pajjLJsGa/kSahx23VYUtyS6XAsCVJdyten0zx8=" + }, + "junit-bom-5.9.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/junit-bom/5.9.2/junit-bom-5.9.2.pom", + "hash": "sha256-LtB9ZYRRMfUzaoZHbJpAVrWdC1i5gVqzZ5uw82819wU=" + } + }, + "org.junit-pioneer:junit-pioneer:2.2.0": { + "junit-pioneer-2.2.0.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit-pioneer/junit-pioneer/2.2.0/junit-pioneer-2.2.0.jar", + "hash": "sha256-gstBVfiCotbv88qS2WzOUmEqrVNFtltl4fyCg3u1304=" + }, + "junit-pioneer-2.2.0.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit-pioneer/junit-pioneer/2.2.0/junit-pioneer-2.2.0.module", + "hash": "sha256-OTy766Wk3fzMU0WXD7MRB12pGp4TVh+E344z8ROWBkY=" + }, + "junit-pioneer-2.2.0.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit-pioneer/junit-pioneer/2.2.0/junit-pioneer-2.2.0.pom", + "hash": "sha256-XKZOqAvyb+fysJlnDcPgPYHzZZ3EZOzQBtrwh2d/Buc=" + } + }, + "org.junit.jupiter:junit-jupiter:5.10.2": { + "junit-jupiter-5.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter/5.10.2/junit-jupiter-5.10.2.jar", + "hash": "sha256-Jj5DRH9LQPEmrWsdy9ffN5RIQTve244NJAxby7p8ek8=" + }, + "junit-jupiter-5.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter/5.10.2/junit-jupiter-5.10.2.module", + "hash": "sha256-cjF2bPGyuJLGehQsljkU5rc/u1BhpschROt/jnJ3DsE=" + }, + "junit-jupiter-5.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter/5.10.2/junit-jupiter-5.10.2.pom", + "hash": "sha256-1bcMXC10Ui2mEM04d28iW6wDSsJZGEO+6Xl6urOIDqs=" + } + }, + "org.junit.jupiter:junit-jupiter-api:5.10.2": { + "junit-jupiter-api-5.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-api/5.10.2/junit-jupiter-api-5.10.2.jar", + "hash": "sha256-r/93wYbNMXJ1gDhy+lEzqoAf1qxAvZHHimz4AJtLF8w=" + }, + "junit-jupiter-api-5.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-api/5.10.2/junit-jupiter-api-5.10.2.module", + "hash": "sha256-QRtKlsKm2wmY1uWOiZNn8NElQWPzBBydmOeu38o3RBk=" + }, + "junit-jupiter-api-5.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-api/5.10.2/junit-jupiter-api-5.10.2.pom", + "hash": "sha256-u12jBgImsbPOtUCEldxptZRlv1DX6+Y+75TyWQnPGQA=" + } + }, + "org.junit.jupiter:junit-jupiter-engine:5.10.2": { + "junit-jupiter-engine-5.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-engine/5.10.2/junit-jupiter-engine-5.10.2.jar", + "hash": "sha256-tt812nUKVGrpMjdvEbPA34QfDJDHyylEzTmttDKIbks=" + }, + "junit-jupiter-engine-5.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-engine/5.10.2/junit-jupiter-engine-5.10.2.module", + "hash": "sha256-FD7yda5mlRGdeCEqkyRazrv5I1tTdbn0wdSvcy87Uwo=" + }, + "junit-jupiter-engine-5.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-engine/5.10.2/junit-jupiter-engine-5.10.2.pom", + "hash": "sha256-q+csj7+anI+e55usKbpkedMrDf+quICApQKRHSTTlGM=" + } + }, + "org.junit.jupiter:junit-jupiter-params:5.10.2": { + "junit-jupiter-params-5.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-params/5.10.2/junit-jupiter-params-5.10.2.jar", + "hash": "sha256-7bHkP/C4BnYm/7VeXp7sodmrJHgUGnx/JT0RWynMfPI=" + }, + "junit-jupiter-params-5.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-params/5.10.2/junit-jupiter-params-5.10.2.module", + "hash": "sha256-IMLmXVKjnIVJbo4XDgjG7Sk1x/NeZRAT2WTcG7dcgns=" + }, + "junit-jupiter-params-5.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/jupiter/junit-jupiter-params/5.10.2/junit-jupiter-params-5.10.2.pom", + "hash": "sha256-8n19CW20igXW56/YQalUVEJOVcUj167RZoF4szpjy9c=" + } + }, + "org.junit.platform:junit-platform-commons:1.10.2": { + "junit-platform-commons-1.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-commons/1.10.2/junit-platform-commons-1.10.2.jar", + "hash": "sha256-tWpewACked9Jc7GLuiTJj+Dbj6oUyJB9PvRR2Mcf2K4=" + }, + "junit-platform-commons-1.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-commons/1.10.2/junit-platform-commons-1.10.2.module", + "hash": "sha256-HoFCGmL4cryk0gIgs56hniexNfNre3gXBPkvrVQxlhg=" + }, + "junit-platform-commons-1.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-commons/1.10.2/junit-platform-commons-1.10.2.pom", + "hash": "sha256-8/glx8o72JcU1IlEfHfHbifqOPAoX195ahAAoX/KS+c=" + } + }, + "org.junit.platform:junit-platform-engine:1.10.2": { + "junit-platform-engine-1.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-engine/1.10.2/junit-platform-engine-1.10.2.jar", + "hash": "sha256-kFy6m0mYzMKdEjkIWn+x/g4oAk11JhUjVtgQ7ewKSaM=" + }, + "junit-platform-engine-1.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-engine/1.10.2/junit-platform-engine-1.10.2.module", + "hash": "sha256-4dG63P7cJyRFQeC+XV6EtyoicNevYWhrJvEc/Edw2kI=" + }, + "junit-platform-engine-1.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-engine/1.10.2/junit-platform-engine-1.10.2.pom", + "hash": "sha256-EqqGyhwNZIoiXU58aWBUwfx26IeCxcOft983muI7728=" + } + }, + "org.junit.platform:junit-platform-launcher:1.10.2": { + "junit-platform-launcher-1.10.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-launcher/1.10.2/junit-platform-launcher-1.10.2.jar", + "hash": "sha256-rtT0L7kK2ps0fCMfE2VvwJEhuiDattxkamvZ1Nox5Ko=" + }, + "junit-platform-launcher-1.10.2.module": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-launcher/1.10.2/junit-platform-launcher-1.10.2.module", + "hash": "sha256-/1YhIQJQJSv9rbYiu+LqZuzsMahnc2zqSz1K3yGcp/8=" + }, + "junit-platform-launcher-1.10.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/junit/platform/junit-platform-launcher/1.10.2/junit-platform-launcher-1.10.2.pom", + "hash": "sha256-WjEXCOeQa7l0YpwayHC8EWV0ZbmJ2koHfkVBa9mHJeQ=" + } + }, + "org.opentest4j:opentest4j:1.3.0": { + "opentest4j-1.3.0.jar": { + "url": "https://repo.maven.apache.org/maven2/org/opentest4j/opentest4j/1.3.0/opentest4j-1.3.0.jar", + "hash": "sha256-SOLfY2yrZWPO1k3N/4q7I1VifLI27wvzdZhoLd90Lxs=" + }, + "opentest4j-1.3.0.module": { + "url": "https://repo.maven.apache.org/maven2/org/opentest4j/opentest4j/1.3.0/opentest4j-1.3.0.module", + "hash": "sha256-SL8dbItdyU90ZSvReQD2VN63FDUCSM9ej8onuQkMjg0=" + }, + "opentest4j-1.3.0.pom": { + "url": "https://repo.maven.apache.org/maven2/org/opentest4j/opentest4j/1.3.0/opentest4j-1.3.0.pom", + "hash": "sha256-m/fP/EEPPoNywlIleN+cpW2dQ72TfjCUhwbCMqlDs1U=" + } + }, + "org.ow2:ow2:1.5.1": { + "ow2-1.5.1.pom": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/ow2/1.5.1/ow2-1.5.1.pom", + "hash": "sha256-Mh3bt+5v5PU96mtM1tt0FU1r+kI5HB92OzYbn0hazwU=" + } + }, + "org.ow2.asm:asm:9.6": { + "asm-9.6.jar": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm/9.6/asm-9.6.jar", + "hash": "sha256-PG+sJCTbPUqFO2afTj0dnDxVIjXhmjGWc/iHCDwjA6E=" + }, + "asm-9.6.pom": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm/9.6/asm-9.6.pom", + "hash": "sha256-ku7iS8PIQ+SIHUbB3WUFRx7jFC+s+0ZrQoz+paVsa2A=" + } + }, + "org.ow2.asm:asm-bom:9.6": { + "asm-bom-9.6.pom": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm-bom/9.6/asm-bom-9.6.pom", + "hash": "sha256-ig5fYk/ikwt6jWmVb0OORe9TKZa01kQJthbErvSxrE4=" + } + }, + "org.ow2.asm:asm-commons:9.6": { + "asm-commons-9.6.jar": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm-commons/9.6/asm-commons-9.6.jar", + "hash": "sha256-eu/Q1cCQFwHGn3UT/tp2X7a+M68s56oXxXgfyHZXxRE=" + }, + "asm-commons-9.6.pom": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm-commons/9.6/asm-commons-9.6.pom", + "hash": "sha256-qYrkiVM0uvj/hr1mUWIQ29mgPxpuFeR92oKvz2tT13w=" + } + }, + "org.ow2.asm:asm-tree:9.6": { + "asm-tree-9.6.jar": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm-tree/9.6/asm-tree-9.6.jar", + "hash": "sha256-xD7PF7U5x3fhXae1uGVTs3fi05poPeYoVWfVKDiI5+8=" + }, + "asm-tree-9.6.pom": { + "url": "https://repo.maven.apache.org/maven2/org/ow2/asm/asm-tree/9.6/asm-tree-9.6.pom", + "hash": "sha256-G8tIHX/Ba5VbtgygfIz6JCS87ni9xAW7oxx9b13C0RM=" + } + }, + "org.slf4j:slf4j-api:1.7.30": { + "slf4j-api-1.7.30.jar": { + "url": "https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar", + "hash": "sha256-zboHlk0btAoHYUhcax6ML4/Z6x0ZxTkorA1/lRAQXFc=" + }, + "slf4j-api-1.7.30.pom": { + "url": "https://repo.maven.apache.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.pom", + "hash": "sha256-fgdHdR6bZ+Gdy1IG8E6iLMA9JQxCJCZALq3QNRPywxQ=" + } + }, + "org.slf4j:slf4j-parent:1.7.30": { + "slf4j-parent-1.7.30.pom": { + "url": "https://repo.maven.apache.org/maven2/org/slf4j/slf4j-parent/1.7.30/slf4j-parent-1.7.30.pom", + "hash": "sha256-EWR5VuSKDFv7OsM/bafoPzQQAraFfv0zWlBbaHvjS3U=" + } + }, + "org.sonatype.oss:oss-parent:9": { + "oss-parent-9.pom": { + "url": "https://plugins.gradle.org/m2/org/sonatype/oss/oss-parent/9/oss-parent-9.pom", + "hash": "sha256-+0AmX5glSCEv+C42LllzKyGH7G8NgBgohcFO8fmCgno=" + } + }, + "org.sonatype.oss:oss-parent:7": { + "oss-parent-7.pom": { + "url": "https://plugins.gradle.org/m2/org/sonatype/oss/oss-parent/7/oss-parent-7.pom", + "hash": "sha256-tR+IZ8kranIkmVV/w6H96ne9+e9XRyL+kM5DailVlFQ=" + } + }, + "org.sonatype.oss:oss-parent:4": { + "oss-parent-4.pom": { + "url": "https://repo.maven.apache.org/maven2/org/sonatype/oss/oss-parent/4/oss-parent-4.pom", + "hash": "sha256-xROZXPAZ2SE9T9pmZYmTeyvxvqXEzdM35hcOgLGEBu4=" + } + }, + "org.yaml:snakeyaml:2.2": { + "snakeyaml-2.2.jar": { + "url": "https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/2.2/snakeyaml-2.2.jar", + "hash": "sha256-FGeTFEiggXaWrigFt7iyC/sIJlK/nE767VKJMNxJOJs=" + }, + "snakeyaml-2.2.pom": { + "url": "https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/2.2/snakeyaml-2.2.pom", + "hash": "sha256-6YLq3HiMac8uTeUKn2MrGCwx26UGEoMNNI/EtLqN19Y=" + } + }, + "org.yaml:snakeyaml:1.26": { + "snakeyaml-1.26.jar": { + "url": "https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/1.26/snakeyaml-1.26.jar", + "hash": "sha256-2H1gflAIhTVsA8HK5h6MLgXWl9+Hh9WroTSEwut2qEQ=" + }, + "snakeyaml-1.26.pom": { + "url": "https://repo.maven.apache.org/maven2/org/yaml/snakeyaml/1.26/snakeyaml-1.26.pom", + "hash": "sha256-xVd6BoDYqN70GDqk1q7RwBICaz2JvaZc2g4YrhYTAVc=" + } + } +} \ No newline at end of file -- cgit v1.3.1 From 562263257560b06a0759972744ddbfbaa5bc81f8 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 18 Jul 2024 13:43:15 +0200 Subject: Don't build LibreSSL from submodule --- flake.nix | 230 +++++++++++++++++---- .../crcs/ectester/standalone/libs/LibresslLib.java | 2 +- .../cz/crcs/ectester/standalone/libs/jni/Makefile | 11 +- 3 files changed, 192 insertions(+), 51 deletions(-) diff --git a/flake.nix b/flake.nix index d7c55c4..7a622a7 100644 --- a/flake.nix +++ b/flake.nix @@ -14,25 +14,84 @@ outputs = { self, nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let - openssl_3013 = pkgs.openssl.overrideAttrs (_old: rec { - version = "3.0.13"; - pname = "openssl"; - src = pkgs.fetchurl { - url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="; - }; - # FIXME this might cause unwanted things - patches = []; + libresslShim = with pkgs; stdenv.mkDerivation { + name = "LibreSSLShim"; + src = ./standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + libressl + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make libressl + ''; + + installPhase = '' + mkdir --parents $out/lib + cp libressl_provider.so $out/lib + ''; + }; + # openssl_3013 = pkgs.openssl.overrideAttrs (_old: rec { + # version = "3.0.13"; + # pname = "openssl"; + # src = pkgs.fetchurl { + # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + # hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="; + # }; + # # FIXME this might cause unwanted things + # patches = []; + # }); + # openssl_315 = pkgs.openssl.overrideAttrs (_old: rec { + # version = "3.1.5"; + # pname = "openssl"; + # src = pkgs.fetchurl { + # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + # hash = "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="; + # }; + # # FIXME this might cause unwanted things + # patches = []; + # }); + boirngssl = pkgs.boringssl.overrideAttrs (_old: rec { + postFixup = '' + ls + ''; }); - openssl_315 = pkgs.openssl.overrideAttrs (_old: rec { - version = "3.1.5"; - pname = "openssl"; - src = pkgs.fetchurl { - url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - hash = "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="; - }; - # FIXME this might cause unwanted things - patches = []; + libressl = pkgs.libressl.overrideAttrs (_old: rec { + # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; + # pname = "libressl"; + # version = "3.9.2"; + # includes = [ "tests/tlstest.sh" ]; + # src = pkgs.fetchurl { + # url = "mirror://openbsd/LibreSSL/${pname}-${version}.tar.gz"; + # hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; + # }; + # nativeBuildInputs = _old.nativeBuildInputs ++ (with pkgs; [ + # pkg-config + # ]); + + # Patched according to the previous versions: + # https://github.com/NixOS/nixpkgs/blob/nixos-24.05/pkgs/development/libraries/libressl/default.nix#L118 + # For unknown reasons the newer versions are not patched this way (yet?) + patches = [ + (pkgs.fetchpatch { + url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; + includes = [ "tests/tlstest.sh" ]; + hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; + }) + ]; + + # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. + postFixup = pkgs.lib.concatLines [ + _old.postFixup + '' + cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc + sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc + ln -s $out/lib/libcrypto.so $out/lib/libresslcrypto.so + '' + ]; + }); overlays = [ # (final: prev: { @@ -43,7 +102,7 @@ # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; # hash = "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="; # }; - # # FIXME this might cause unwanted things + # FIXME Removing patches might cause unwanted things. # patches = []; # }); # }) @@ -53,7 +112,6 @@ }; buildECTesterStandalone = { opensslVersion, opensslHash }: ( let - ov = opensslVersion; patched_openssl = pkgs.openssl.overrideAttrs (_old: rec { version = opensslVersion; pname = "openssl"; @@ -61,9 +119,16 @@ url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; hash = opensslHash; }; - # FIXME this might cause unwanted things + # FIXME Removing patches might cause unwanted things. patches = []; }); + + # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; + # libressl = pkgs.libressl.overrideAttrs (_old: { + # fixupPhase = '' + # cp ${devLibPath}/openssl.pc ${devLibPath}/libressl.pc + # ''; + # }); in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -72,23 +137,33 @@ # gradleInstallFlags = [ "installDist" ]; # gradleBuildFlags = [ "standalone:uberJar" ]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" lockFile = ./gradle.lock; - gradleBuildFlags = [ "libs" "-PlibName=openssl" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + gradleBuildFlags = [ "standalone:libs" "-PlibName=libressl" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" src = ./.; + # cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + # ls -lat standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/libressl_provider.so + # exit 1 + preConfigure = '' + pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + make lib_timing.so lib_csignals.so lib_cppsignals.so + popd + ''; + nativeBuildInputs = [ + # libresslShim gdb ant jdk17 pkg-config global-platform-pro gradle - patched_openssl + # patched_openssl makeWrapper # libraries to test # openssl_3013 - boringssl - # libressl + # boringssl + libressl libtomcrypt libtommath botan2 @@ -114,7 +189,6 @@ wolfssl nettle - # libressl gmp libgpg-error @@ -122,33 +196,86 @@ libconfig ]; - # preConfigure = '' - # pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni - # make lib_timing.so - # make lib_csignals.so - # make lib_cppsignals.so - # # make clean - # make openssl - # # openssl version + # buildBoringSSL = '' + # pushd ext/boringssl + # mkdir --parents build + # pushd build + # cmake -GNinja -DBUILD_SHARED_LIBS=1 .. + # ninja + # popd + # ''; + + # buildLibreSSL = '' + # pushd ext/libressl + # ./autogen.sh + # mkdir --parents build + # pushd build + # cmake -GNinja -DBUILD_SHARED_LIBS=1 .. + # ninja # popd # ''; + # TODO OpenJDK 64-Bit Server VM warning: You have loaded library + # /home/qup/.local/share/ECTesterStandalone/lib/lib_ippcp.so which + # might have disabled stack guard. The VM will try to fix the stack + # guard now. It's highly recommended that you fix the library with + # 'execstack -c ', or link it with '-z noexecstack'. + # buildIppCrypto = '' + # pushd ext/ipp-crypto + # CC=clang CXX=clang++ cmake CMakeLists.txt -GNinja -Bbuild -DARCH=intel64 # Does not work with GCC 12+ + # mkdir --parents build + # pushd build + # ninja + # popd + # ''; + + # buildMbedTLS = '' + # pushd ext/mbedtls + # python -m venv virt + # . virt/bin/activate + # pip install -r scripts/basic.requirements.txt + # cmake -GNinja -Bbuild -DUSE_SHARED_MBEDTLS_LIBRARY=On + # cd build + # ninja + # ''; + + # wolfCrypt-JNI = '' + # pushd ext/wolfcrypt-jni + # mkdir junit + # wget -P junit/ https://repo1.maven.org/maven2/junit/junit/4.13.2/junit-4.13.2.jar + # wget -P junit/ https://repo1.maven.org/maven2/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar + # make -f makefile.linux + # env JUNIT_HOME=junit/ ant build-jce-release + # ''; + + # preConfigure = lib.concatLines [ + # buildBoringSSL + # buildLibreSSL + # buildIppCrypto + # buildMbedTLS + # wolfCrypt-JNI + # ]; + # buildPhase = '' # ./gradlew clean build --offline # ''; buildInputs = [ jdk17_headless - patched_openssl + libressl + # patched_openssl ]; LD_LIBRARY_PATH = lib.makeLibraryPath [ + # libresslShim + libtommath libtomcrypt botan2 cryptopp libgcrypt patched_openssl + libressl ninja nettle gmp @@ -193,8 +320,19 @@ # openssl_111w = buildECTesterStandalone "1.1.1w" "sha256-zzCYlQy02FOtlcCEHx+cbT3BAtzPys1SHZOSUgi3asg="; }; devShells.default = with pkgs; mkShell rec { + nativeBuildInputs = [ + libresslShim + ]; + + preConfigure = '' + cp ${libresslShim.out}/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + ls standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni + ''; + + buildInputs = [ - # gradle2nix + # # gradle2nix + # libresslShim gdb ant jdk17 @@ -202,9 +340,10 @@ global-platform-pro gradle # libraries to test - openssl_3013 + # openssl + libressl + # glibc boringssl - # libressl libtomcrypt libtommath botan2 @@ -221,7 +360,7 @@ autoconf libb64 - clang + # clang libgcrypt mbedtls nasm @@ -243,7 +382,7 @@ libtomcrypt botan2 cryptopp - openssl_3013 + # openssl libgcrypt nettle gmp @@ -257,6 +396,9 @@ # export PATH=$PATH:$HOME/projects/ts-spect-compiler/build/src/apps; # export TS_REPO_ROOT=`pwd`; # ''; + + # NIX_CFLAGS_COMPILE=""; + buildBoringSSL = '' mkdir --parents build pushd build @@ -305,10 +447,10 @@ ''; # TODO add LD_LIB properly - shellHook = '' - export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HOME/projects/ts-spect-compiler/build/src/cosim - - ''; + # shellHook = '' + # export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HOME/projects/ts-spect-compiler/build/src/cosim + # NIX_CFLAGS_COMPILE= + # ''; # pushd ext/wolfcrypt-jni # ${wolfCrypt-JNI} diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java index 2dba049..a403896 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java @@ -8,7 +8,7 @@ import java.util.Set; */ public class LibresslLib extends NativeECLibrary { public LibresslLib() { - super("LibreSSL", "libressl_provider", "lib_libressl.so"); + super("LibreSSL", "libressl_provider"); } @Override diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 6282574..0fc0ca6 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -189,15 +189,14 @@ nettle.o: nettle.c # LibreSSL shim libressl: libressl_provider.so -lib_libressl.so: - cp $(PROJECT_ROOT_PATH)/ext/libressl/build/crypto/libcrypto.so lib_libressl.so +# lib_libressl.so: +# cp $(PROJECT_ROOT_PATH)/ext/libressl/build/crypto/libcrypto.so lib_libressl.so -libressl_provider.so: libressl.o c_utils.o | lib_timing.so lib_csignals.so lib_libressl.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_libressl.so -l:lib_timing.so -l:lib_csignals.so +libressl_provider.so: libressl.o c_utils.o | lib_timing.so lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs libresslcrypto) -l:lib_timing.so -l:lib_csignals.so libressl.o: libressl.c - $(CC) -I$(PROJECT_ROOT_PATH)/ext/libressl/build/include/ $(CFLAGS) -c $< - + $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< help: @echo "# This makefile builds the JNI shims necessary to test native libraries." -- cgit v1.3.1 From 134ff1082d11bad6fb95692a999e8b9dbd19f827 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 18 Jul 2024 13:47:38 +0200 Subject: Build LibreSSLShim as a separate derivation --- flake.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index 7a622a7..d768111 100644 --- a/flake.nix +++ b/flake.nix @@ -137,13 +137,11 @@ # gradleInstallFlags = [ "installDist" ]; # gradleBuildFlags = [ "standalone:uberJar" ]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" lockFile = ./gradle.lock; - gradleBuildFlags = [ "standalone:libs" "-PlibName=libressl" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + gradleBuildFlags = [ ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" src = ./.; - # cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - # ls -lat standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/libressl_provider.so - # exit 1 preConfigure = '' + cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd -- cgit v1.3.1 From 556c45f5bd203ef79ae81687d4986fbbf4bd5f19 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 18 Jul 2024 14:00:11 +0200 Subject: Build LibreSSL alongside OpenSSL --- flake.nix | 4 ++-- .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index d768111..e4b92f9 100644 --- a/flake.nix +++ b/flake.nix @@ -338,7 +338,7 @@ global-platform-pro gradle # libraries to test - # openssl + openssl libressl # glibc boringssl @@ -380,7 +380,7 @@ libtomcrypt botan2 cryptopp - # openssl + openssl libgcrypt nettle gmp diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 0fc0ca6..1e67beb 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -193,10 +193,10 @@ libressl: libressl_provider.so # cp $(PROJECT_ROOT_PATH)/ext/libressl/build/crypto/libcrypto.so lib_libressl.so libressl_provider.so: libressl.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs libresslcrypto) -l:lib_timing.so -l:lib_csignals.so + NIX_CFLAGS_COMPILE= $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs libresslcrypto) -l:lib_timing.so -l:lib_csignals.so libressl.o: libressl.c - $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< + NIX_CFLAGS_COMPILE= $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< help: @echo "# This makefile builds the JNI shims necessary to test native libraries." -- cgit v1.3.1 From 4fbc4542e007b6b8c3a49d6eb68a07985689477c Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:22:11 +0200 Subject: Set default for phase --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index e4b92f9..12319ea 100644 --- a/flake.nix +++ b/flake.nix @@ -84,7 +84,7 @@ # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. postFixup = pkgs.lib.concatLines [ - _old.postFixup + ( _old.postFixup or "" ) '' cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc -- cgit v1.3.1 From 156fcc306b5661ffb0b25929da1004bbc01e740e Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:23:21 +0200 Subject: Build shared libs for BoringSSL --- flake.nix | 44 +++++++++++++++++++++++++++++++++++++++----- 1 file changed, 39 insertions(+), 5 deletions(-) diff --git a/flake.nix b/flake.nix index 12319ea..a1786fe 100644 --- a/flake.nix +++ b/flake.nix @@ -14,23 +14,57 @@ outputs = { self, nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let - libresslShim = with pkgs; stdenv.mkDerivation { - name = "LibreSSLShim"; + patched_boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { + src = fetchgit { + url = "https://boringssl.googlesource.com/boringssl"; + # rev = "d274b1bacdca36f3941bf78e43dc38acf676a1a8"; # master at the time of writing + # hash = "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; + # NOTE + rev = "80a243e07ef77156af66efa7d22ac35aba44c1b3"; # ECTester submodule version at the time of writing + hash = "sha256-Sa1XjU7wi4umVQ6BUj9BxJMHYlXNg6xw9Cb/vBE+ScQ="; + }; + + # NOTE this build does not match upstream, but is what ECTester did at the time of writing + buildPhase = '' + cmake -GNinja -DBUILD_SHARED_LIBS=1 -Bbuild + pushd build + ninja crypto + popd + ''; + + installPhase = '' + mkdir --parents $bin/bin $dev $out/lib + mv include $dev + + pushd build + mv crypto/libcrypto.so $out/lib/lib_boringssl.so + popd + ''; + + }); + + boringsslShim = with pkgs; stdenv.mkDerivation { + name = "BoringSSLShim"; src = ./standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; buildInputs = [ - libressl + patched_boringssl pkg-config jdk11_headless ]; buildPhase = '' - make libressl + make boringssl ''; + BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + # LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath [ + # patched_boringssl + # ]; + installPhase = '' mkdir --parents $out/lib - cp libressl_provider.so $out/lib + cp boringssl_provider.so $out/lib ''; }; # openssl_3013 = pkgs.openssl.overrideAttrs (_old: rec { -- cgit v1.3.1 From 53126547ccdf7221dd0ac7c2f9d4a936d6203ec4 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:25:47 +0200 Subject: Build BoringSSL shim from packaged BoringSSL --- flake.nix | 110 ++++++++++---------------------------------------------------- 1 file changed, 17 insertions(+), 93 deletions(-) diff --git a/flake.nix b/flake.nix index a1786fe..63ff8f6 100644 --- a/flake.nix +++ b/flake.nix @@ -19,7 +19,7 @@ url = "https://boringssl.googlesource.com/boringssl"; # rev = "d274b1bacdca36f3941bf78e43dc38acf676a1a8"; # master at the time of writing # hash = "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; - # NOTE + # NOTE rev = "80a243e07ef77156af66efa7d22ac35aba44c1b3"; # ECTester submodule version at the time of writing hash = "sha256-Sa1XjU7wi4umVQ6BUj9BxJMHYlXNg6xw9Cb/vBE+ScQ="; }; @@ -67,31 +67,7 @@ cp boringssl_provider.so $out/lib ''; }; - # openssl_3013 = pkgs.openssl.overrideAttrs (_old: rec { - # version = "3.0.13"; - # pname = "openssl"; - # src = pkgs.fetchurl { - # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - # hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="; - # }; - # # FIXME this might cause unwanted things - # patches = []; - # }); - # openssl_315 = pkgs.openssl.overrideAttrs (_old: rec { - # version = "3.1.5"; - # pname = "openssl"; - # src = pkgs.fetchurl { - # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - # hash = "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="; - # }; - # # FIXME this might cause unwanted things - # patches = []; - # }); - boirngssl = pkgs.boringssl.overrideAttrs (_old: rec { - postFixup = '' - ls - ''; - }); + libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; # pname = "libressl"; @@ -176,6 +152,8 @@ preConfigure = '' cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + cp ${patched_boringssl.out}/lib/lib_boringssl.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd @@ -196,6 +174,7 @@ # openssl_3013 # boringssl libressl + patched_boringssl libtomcrypt libtommath botan2 @@ -228,78 +207,15 @@ libconfig ]; - # buildBoringSSL = '' - # pushd ext/boringssl - # mkdir --parents build - # pushd build - # cmake -GNinja -DBUILD_SHARED_LIBS=1 .. - # ninja - # popd - # ''; - - # buildLibreSSL = '' - # pushd ext/libressl - # ./autogen.sh - # mkdir --parents build - # pushd build - # cmake -GNinja -DBUILD_SHARED_LIBS=1 .. - # ninja - # popd - # ''; - - # TODO OpenJDK 64-Bit Server VM warning: You have loaded library - # /home/qup/.local/share/ECTesterStandalone/lib/lib_ippcp.so which - # might have disabled stack guard. The VM will try to fix the stack - # guard now. It's highly recommended that you fix the library with - # 'execstack -c ', or link it with '-z noexecstack'. - # buildIppCrypto = '' - # pushd ext/ipp-crypto - # CC=clang CXX=clang++ cmake CMakeLists.txt -GNinja -Bbuild -DARCH=intel64 # Does not work with GCC 12+ - # mkdir --parents build - # pushd build - # ninja - # popd - # ''; - - # buildMbedTLS = '' - # pushd ext/mbedtls - # python -m venv virt - # . virt/bin/activate - # pip install -r scripts/basic.requirements.txt - # cmake -GNinja -Bbuild -DUSE_SHARED_MBEDTLS_LIBRARY=On - # cd build - # ninja - # ''; - - # wolfCrypt-JNI = '' - # pushd ext/wolfcrypt-jni - # mkdir junit - # wget -P junit/ https://repo1.maven.org/maven2/junit/junit/4.13.2/junit-4.13.2.jar - # wget -P junit/ https://repo1.maven.org/maven2/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar - # make -f makefile.linux - # env JUNIT_HOME=junit/ ant build-jce-release - # ''; - - # preConfigure = lib.concatLines [ - # buildBoringSSL - # buildLibreSSL - # buildIppCrypto - # buildMbedTLS - # wolfCrypt-JNI - # ]; - - # buildPhase = '' - # ./gradlew clean build --offline - # ''; - buildInputs = [ jdk17_headless - libressl + # libressl # patched_openssl ]; LD_LIBRARY_PATH = lib.makeLibraryPath [ # libresslShim + boringsslShim libtommath libtomcrypt @@ -308,6 +224,7 @@ libgcrypt patched_openssl libressl + patched_boringssl ninja nettle gmp @@ -315,6 +232,8 @@ libconfig ]; + BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + # FIXME more things to copy here installPhase = '' mkdir -p $out @@ -323,7 +242,6 @@ ''; postFixup = '' - makeWrapper \ ${jdk17_headless}/bin/java $out/bin/${pname} \ --add-flags "-jar $out/build/libs/${pname}.jar" \ @@ -375,7 +293,7 @@ openssl libressl # glibc - boringssl + patched_boringssl libtomcrypt libtommath botan2 @@ -415,6 +333,7 @@ botan2 cryptopp openssl + patched_boringssl libgcrypt nettle gmp @@ -422,6 +341,11 @@ libconfig ]; + BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + # CFLAGS = with pkgs; [ + # patched_boringssl.dev + # ]; + # NOTE: Mixing postVenvCreation aznd shellHook results in only shellHook being called # shellHook = '' # source ${venvDir}/bin/activate -- cgit v1.3.1 From 20aee84cb5ba178965556245100941d97fcc0d9f Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:26:44 +0200 Subject: Clear overlays --- flake.nix | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/flake.nix b/flake.nix index 63ff8f6..370be64 100644 --- a/flake.nix +++ b/flake.nix @@ -103,20 +103,7 @@ ]; }); - overlays = [ - # (final: prev: { - # openssl_01 = prev.openssl.overrideAttrs (old: rec{ - # version = "3.0.8"; - # pname = "openssl"; - # src = pkgs.fetchurl { - # url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - # hash = "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="; - # }; - # FIXME Removing patches might cause unwanted things. - # patches = []; - # }); - # }) - ]; + overlays = []; pkgs = import nixpkgs { inherit system overlays; }; -- cgit v1.3.1 From 8f8d79757184c5cd6b79e3e174d480219c1e1240 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:27:23 +0200 Subject: Build MbedTLS shim with packaged MbedTLS --- flake.nix | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/flake.nix b/flake.nix index 370be64..680085a 100644 --- a/flake.nix +++ b/flake.nix @@ -103,6 +103,25 @@ ]; }); + mbedtlsShim = with pkgs; stdenv.mkDerivation rec { + name = "MbedTLSShim"; + src = ./standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + mbedtls + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make mbedtls + ''; + + installPhase = '' + mkdir --parents $out/lib + cp mbedtls_provider.so $out/lib + ''; + }; overlays = []; pkgs = import nixpkgs { inherit system overlays; @@ -141,6 +160,7 @@ cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${patched_boringssl.out}/lib/lib_boringssl.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + cp ${mbedtlsShim.out}/lib/mbedtls_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd -- cgit v1.3.1 From a6f468f0d33a324cce5daf6d48e7bcf6b80a4c4b Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:37:32 +0200 Subject: Build shims in separate files --- flake.nix | 46 +++------------------------------------------- nix/boringsslshim.nix | 28 ++++++++++++++++++++++++++++ nix/libresslshim.nix | 23 +++++++++++++++++++++++ nix/mbedtlsshim.nix | 22 ++++++++++++++++++++++ 4 files changed, 76 insertions(+), 43 deletions(-) create mode 100644 nix/boringsslshim.nix create mode 100644 nix/libresslshim.nix create mode 100644 nix/mbedtlsshim.nix diff --git a/flake.nix b/flake.nix index 680085a..e081630 100644 --- a/flake.nix +++ b/flake.nix @@ -43,30 +43,6 @@ }); - boringsslShim = with pkgs; stdenv.mkDerivation { - name = "BoringSSLShim"; - src = ./standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; - - buildInputs = [ - patched_boringssl - pkg-config - jdk11_headless - ]; - - buildPhase = '' - make boringssl - ''; - - BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; - # LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath [ - # patched_boringssl - # ]; - - installPhase = '' - mkdir --parents $out/lib - cp boringssl_provider.so $out/lib - ''; - }; libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; @@ -103,25 +79,9 @@ ]; }); - mbedtlsShim = with pkgs; stdenv.mkDerivation rec { - name = "MbedTLSShim"; - src = ./standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; - - buildInputs = [ - mbedtls - pkg-config - jdk11_headless - ]; - - buildPhase = '' - make mbedtls - ''; - - installPhase = '' - mkdir --parents $out/lib - cp mbedtls_provider.so $out/lib - ''; - }; + libresslShim = import ./nix/libresslshim.nix { pkgs = pkgs; libressl = libressl; }; + boringsslShim = import ./nix/boringsslshim.nix { pkgs = pkgs; boringssl = patched_boringssl; }; + mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; overlays = []; pkgs = import nixpkgs { inherit system overlays; diff --git a/nix/boringsslshim.nix b/nix/boringsslshim.nix new file mode 100644 index 0000000..1ed63d3 --- /dev/null +++ b/nix/boringsslshim.nix @@ -0,0 +1,28 @@ +{ + pkgs + , boringssl +}: +with pkgs; stdenv.mkDerivation { + name = "BoringSSLShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + boringssl + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make boringssl + ''; + + BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; + # LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath [ + # boringssl + # ]; + + installPhase = '' + mkdir --parents $out/lib + cp boringssl_provider.so $out/lib + ''; +} diff --git a/nix/libresslshim.nix b/nix/libresslshim.nix new file mode 100644 index 0000000..97bc3d9 --- /dev/null +++ b/nix/libresslshim.nix @@ -0,0 +1,23 @@ +{ + pkgs + , libressl +}: +with pkgs; stdenv.mkDerivation rec { + name = "LibreSSLShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + libressl + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make libressl + ''; + + installPhase = '' + mkdir --parents $out/lib + cp libressl_provider.so $out/lib + ''; +} diff --git a/nix/mbedtlsshim.nix b/nix/mbedtlsshim.nix new file mode 100644 index 0000000..2dff2f0 --- /dev/null +++ b/nix/mbedtlsshim.nix @@ -0,0 +1,22 @@ +{ + pkgs +}: +with pkgs; stdenv.mkDerivation rec { + name = "MbedTLSShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + mbedtls + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make mbedtls + ''; + + installPhase = '' + mkdir --parents $out/lib + cp mbedtls_provider.so $out/lib + ''; +} -- cgit v1.3.1 From af299ba4547319a2bcd6a0e035e2fd5cfadd47a7 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:38:29 +0200 Subject: Remove unnecessary dependency since MbedTLS package is now used --- .../src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java index e44598c..26b4d09 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class MbedTLSLib extends NativeECLibrary { public MbedTLSLib() { - super("mbedTLS", "mbedtls_provider", "lib_mbedtls.so"); + super("mbedTLS", "mbedtls_provider"); } @Override -- cgit v1.3.1 From f27f67cbab4323816b830c0ffe5f3cfe2331bdc0 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:38:53 +0200 Subject: Fix build instruction for BoringSSL and MbedTLS --- .../cz/crcs/ectester/standalone/libs/jni/Makefile | 27 ++++++++++++++-------- .../crcs/ectester/standalone/libs/jni/boringssl.c | 3 ++- 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 1e67beb..5c71f87 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -96,14 +96,14 @@ openssl.o: openssl.c # BoringSSL shim boringssl: boringssl_provider.so -lib_boringssl.so: - cp $(PROJECT_ROOT_PATH)/ext/boringssl/build/crypto/libcrypto.so lib_boringssl.so +# lib_boringssl.so: +# cp $(PROJECT_ROOT_PATH)/ext/boringssl/build/crypto/libcrypto.so lib_boringssl.so -boringssl_provider.so: boringssl.o c_utils.o | lib_timing.so lib_csignals.so lib_boringssl.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_boringssl.so -l:lib_timing.so -l:lib_csignals.so +boringssl_provider.so: boringssl.o c_utils.o | lib_timing.so lib_csignals.so + NIX_CFLAGS_COMPILE= $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -l:lib_boringssl.so -l:lib_timing.so -l:lib_csignals.so boringssl.o: boringssl.c - $(CC) -I$(PROJECT_ROOT_PATH)/ext/boringssl/include/ $(CFLAGS) -c $< + NIX_CFLAGS_COMPILE= $(CC) -I$(BORINGSSL_CFLAGS) $(CFLAGS) -c $< # libgcrypt shim @@ -153,14 +153,21 @@ cryptopp.o: cryptopp.cpp # mbedTLS shim mbedtls: mbedtls_provider.so -lib_mbedtls.so: - cp $(PROJECT_ROOT_PATH)/ext/mbedtls/build/library/libmbedcrypto.so lib_mbedtls.so +# lib_mbedtls.so: +# cp $(PROJECT_ROOT_PATH)/ext/mbedtls/build/library/libmbedcrypto.so lib_mbedtls.so -mbedtls_provider.so: mbedtls.o c_utils.o | lib_timing.so lib_csignals.so lib_mbedtls.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_mbedtls.so -l:lib_timing.so -l:lib_csignals.so +# mbedtls_provider.so: mbedtls.o c_utils.o | lib_timing.so lib_csignals.so lib_mbedtls.so +# $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_mbedtls.so -l:lib_timing.so -l:lib_csignals.so + +# mbedtls.o: mbedtls.c +# $(CC) -I$(PROJECT_ROOT_PATH)/ext/mbedtls/build/include/ $(CFLAGS) -c $< + +mbedtls_provider.so: mbedtls.o c_utils.o | lib_timing.so lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -lmbedcrypto -l:lib_timing.so -l:lib_csignals.so mbedtls.o: mbedtls.c - $(CC) -I$(PROJECT_ROOT_PATH)/ext/mbedtls/build/include/ $(CFLAGS) -c $< + $(CC) $(CFLAGS) -c $< + # Intel Performance Primitives crypto shim diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/boringssl.c b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/boringssl.c index 919cc79..307d611 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/boringssl.c +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/boringssl.c @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -569,4 +570,4 @@ JNIEXPORT jboolean JNICALL Java_cz_crcs_ectester_standalone_libs_jni_NativeSigna EC_KEY_free(pub); EC_GROUP_free(curve); return (result == 1) ? JNI_TRUE : JNI_FALSE; -} \ No newline at end of file +} -- cgit v1.3.1 From 694bf4fa8cb4e2d749a1f497f26829b5ada63eb3 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 13:44:45 +0200 Subject: Match the packaged BoringSSL to the submodule one --- flake.nix | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/flake.nix b/flake.nix index e081630..8311b35 100644 --- a/flake.nix +++ b/flake.nix @@ -17,11 +17,8 @@ patched_boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { src = fetchgit { url = "https://boringssl.googlesource.com/boringssl"; - # rev = "d274b1bacdca36f3941bf78e43dc38acf676a1a8"; # master at the time of writing - # hash = "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; - # NOTE - rev = "80a243e07ef77156af66efa7d22ac35aba44c1b3"; # ECTester submodule version at the time of writing - hash = "sha256-Sa1XjU7wi4umVQ6BUj9BxJMHYlXNg6xw9Cb/vBE+ScQ="; + rev = "67422ed4434116daa8898773692165ddd51a6ac2"; + hash = "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc="; }; # NOTE this build does not match upstream, but is what ECTester did at the time of writing -- cgit v1.3.1 From 272a2b40619bb07d05c6ae5df9e6db839cb0404c Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 22 Jul 2024 16:17:05 +0200 Subject: Link BoringSSL statically In order to prevent problems with dynamic linking of OpenSSL, LibreSSL and BoringSSL -- that all have libcrypto.so -- we link statically into the providers. --- flake.nix | 12 +++++------- .../java/cz/crcs/ectester/standalone/libs/BoringsslLib.java | 2 +- .../resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/flake.nix b/flake.nix index 8311b35..6d85575 100644 --- a/flake.nix +++ b/flake.nix @@ -23,7 +23,7 @@ # NOTE this build does not match upstream, but is what ECTester did at the time of writing buildPhase = '' - cmake -GNinja -DBUILD_SHARED_LIBS=1 -Bbuild + cmake -GNinja -Bbuild pushd build ninja crypto popd @@ -34,7 +34,7 @@ mv include $dev pushd build - mv crypto/libcrypto.so $out/lib/lib_boringssl.so + mv crypto/libcrypto.a $out/lib/lib_boringssl.a popd ''; @@ -116,7 +116,7 @@ preConfigure = '' cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - cp ${patched_boringssl.out}/lib/lib_boringssl.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + cp ${patched_boringssl.out}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${mbedtlsShim.out}/lib/mbedtls_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so @@ -235,15 +235,13 @@ }; devShells.default = with pkgs; mkShell rec { nativeBuildInputs = [ - libresslShim + pkg-config ]; preConfigure = '' - cp ${libresslShim.out}/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - ls standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni + cp ${patched_boringssl}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ ''; - buildInputs = [ # # gradle2nix # libresslShim diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java index af4d969..ddc25c6 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java @@ -8,7 +8,7 @@ import java.util.Set; */ public class BoringsslLib extends NativeECLibrary { public BoringsslLib() { - super("BoringSSL", "boringssl_provider", "lib_boringssl.so"); + super("BoringSSL", "boringssl_provider"); } @Override diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 5c71f87..32df65f 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -100,7 +100,7 @@ boringssl: boringssl_provider.so # cp $(PROJECT_ROOT_PATH)/ext/boringssl/build/crypto/libcrypto.so lib_boringssl.so boringssl_provider.so: boringssl.o c_utils.o | lib_timing.so lib_csignals.so - NIX_CFLAGS_COMPILE= $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -l:lib_boringssl.so -l:lib_timing.so -l:lib_csignals.so + NIX_CFLAGS_COMPILE= $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -l:lib_boringssl.a -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so boringssl.o: boringssl.c NIX_CFLAGS_COMPILE= $(CC) -I$(BORINGSSL_CFLAGS) $(CFLAGS) -c $< -- cgit v1.3.1 From c867651a7f2c034ee1d48c2426fbad1a50ff956f Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 23 Jul 2024 10:26:51 +0200 Subject: Build IPP Crypto from package --- flake.lock | 17 ++++++++++++++ flake.nix | 13 ++++++++++- nix/ippcryptoshim.nix | 26 ++++++++++++++++++++++ .../cz/crcs/ectester/standalone/libs/jni/Makefile | 9 +++----- 4 files changed, 58 insertions(+), 7 deletions(-) create mode 100644 nix/ippcryptoshim.nix diff --git a/flake.lock b/flake.lock index fe1045b..b2ef9c5 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,21 @@ { "nodes": { + "custom-nixpkgs": { + "locked": { + "lastModified": 1721657519, + "narHash": "sha256-GX9DU5wHfUsUlBNX5WZzLLj1SbawinMDPMCfwKuOKlU=", + "owner": "quapka", + "repo": "nixpkgs", + "rev": "951e69f7ca8f1ade27297bac8e5dc6e292d9be3b", + "type": "github" + }, + "original": { + "owner": "quapka", + "ref": "add-ipp-crypto", + "repo": "nixpkgs", + "type": "github" + } + }, "flake-utils": { "inputs": { "systems": "systems" @@ -87,6 +103,7 @@ }, "root": { "inputs": { + "custom-nixpkgs": "custom-nixpkgs", "flake-utils": "flake-utils", "gradle2nix": "gradle2nix", "nixpkgs": "nixpkgs_2" diff --git a/flake.nix b/flake.nix index 6d85575..7a8256b 100644 --- a/flake.nix +++ b/flake.nix @@ -5,13 +5,14 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; gradle2nix.url = "github:tadfisher/gradle2nix/03c1b713ad139eb6dfc8d463b5bd348368125cf1"; + custom-nixpkgs.url = "github:quapka/nixpkgs/add-ipp-crypto"; # custom for of nixpkgs with ipp-crypto packaged # FIXME how to add submodule declaratively? # submodule = { # url = ./ # }; }; - outputs = { self, nixpkgs, flake-utils, gradle2nix, ... }: + outputs = { self, nixpkgs, custom-nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let patched_boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { @@ -79,10 +80,15 @@ libresslShim = import ./nix/libresslshim.nix { pkgs = pkgs; libressl = libressl; }; boringsslShim = import ./nix/boringsslshim.nix { pkgs = pkgs; boringssl = patched_boringssl; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; + ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; + overlays = []; pkgs = import nixpkgs { inherit system overlays; }; + customPkgs = import custom-nixpkgs { + inherit system overlays; + }; buildECTesterStandalone = { opensslVersion, opensslHash }: ( let patched_openssl = pkgs.openssl.overrideAttrs (_old: rec { @@ -283,6 +289,8 @@ nettle # libressl + customPkgs.ipp-crypto + gmp libgpg-error wget @@ -392,6 +400,9 @@ # ${buildLibreSSL} # popd # ''; + IPP_CRYPTO_HEADER = "${customPkgs.ipp-crypto.dev}/include"; + IPP_CRYPTO_LIB = "${customPkgs.ipp-crypto}/lib/"; + }; } diff --git a/nix/ippcryptoshim.nix b/nix/ippcryptoshim.nix new file mode 100644 index 0000000..b8e06f1 --- /dev/null +++ b/nix/ippcryptoshim.nix @@ -0,0 +1,26 @@ +{ + pkgs + , ipp-crypto +}: + with pkgs; stdenv.mkDerivation rec { + name = "IppCryptoShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + ipp-crypto + pkg-config + jdk11_headless + ]; + + IPP_CRYPTO_HEADER = "${ipp-crypto.dev}/include"; + IPP_CRYPTO_LIB = "${ipp-crypto}/lib/" + + buildPhase = '' + make ippcrypto + ''; + + installPhase = '' + mkdir --parents $out/lib + cp mbedtls_provider.so $out/lib + ''; +} diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 32df65f..1b3b761 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -173,14 +173,11 @@ mbedtls.o: mbedtls.c # Intel Performance Primitives crypto shim ippcp: ippcp_provider.so -lib_ippcp.so: - cp $(PROJECT_ROOT_PATH)/ext/ipp-crypto/build/.build/RELEASE/lib/libippcp.so lib_ippcp.so - -ippcp_provider.so: ippcp.o c_utils.o | lib_timing.so lib_csignals.so lib_ippcp.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_ippcp.so -l:lib_timing.so -l:lib_csignals.so +ippcp_provider.so: ippcp.o c_utils.o | lib_timing.so lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L$(IPP_CRYPTO_LIB) -Wl,-Bstatic -l:libippcp.a -L. -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so ippcp.o: ippcp.c - $(CC) -I$(PROJECT_ROOT_PATH)/ext/ipp-crypto/build/.build/RELEASE/include/ $(CFLAGS) -c $< + $(CC) -I$(IPP_CRYPTO_HEADER) $(CFLAGS) -c $< # Nettle shim -- cgit v1.3.1 From 50c9d5b3b7c9bbf3273ba588c5ff9ce1dee2db1a Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 23 Jul 2024 10:33:15 +0200 Subject: Clear deprecated build targets --- .../cz/crcs/ectester/standalone/libs/jni/Makefile | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 1b3b761..e4a0b26 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -96,9 +96,6 @@ openssl.o: openssl.c # BoringSSL shim boringssl: boringssl_provider.so -# lib_boringssl.so: -# cp $(PROJECT_ROOT_PATH)/ext/boringssl/build/crypto/libcrypto.so lib_boringssl.so - boringssl_provider.so: boringssl.o c_utils.o | lib_timing.so lib_csignals.so NIX_CFLAGS_COMPILE= $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -l:lib_boringssl.a -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so @@ -153,15 +150,6 @@ cryptopp.o: cryptopp.cpp # mbedTLS shim mbedtls: mbedtls_provider.so -# lib_mbedtls.so: -# cp $(PROJECT_ROOT_PATH)/ext/mbedtls/build/library/libmbedcrypto.so lib_mbedtls.so - -# mbedtls_provider.so: mbedtls.o c_utils.o | lib_timing.so lib_csignals.so lib_mbedtls.so -# $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_mbedtls.so -l:lib_timing.so -l:lib_csignals.so - -# mbedtls.o: mbedtls.c -# $(CC) -I$(PROJECT_ROOT_PATH)/ext/mbedtls/build/include/ $(CFLAGS) -c $< - mbedtls_provider.so: mbedtls.o c_utils.o | lib_timing.so lib_csignals.so $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -lmbedcrypto -l:lib_timing.so -l:lib_csignals.so @@ -193,9 +181,6 @@ nettle.o: nettle.c # LibreSSL shim libressl: libressl_provider.so -# lib_libressl.so: -# cp $(PROJECT_ROOT_PATH)/ext/libressl/build/crypto/libcrypto.so lib_libressl.so - libressl_provider.so: libressl.o c_utils.o | lib_timing.so lib_csignals.so NIX_CFLAGS_COMPILE= $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs libresslcrypto) -l:lib_timing.so -l:lib_csignals.so -- cgit v1.3.1 From 4bb7652c58962fe0e97c7941003f5468c0ba0673 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 23 Jul 2024 10:49:56 +0200 Subject: Clean up old build instructions --- flake.nix | 90 ++------------------------------------------------------------- 1 file changed, 2 insertions(+), 88 deletions(-) diff --git a/flake.nix b/flake.nix index 7a8256b..8485e17 100644 --- a/flake.nix +++ b/flake.nix @@ -312,94 +312,8 @@ ]; BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; - # CFLAGS = with pkgs; [ - # patched_boringssl.dev - # ]; - - # NOTE: Mixing postVenvCreation aznd shellHook results in only shellHook being called - # shellHook = '' - # source ${venvDir}/bin/activate - # export PATH=$PATH:$HOME/projects/ts-spect-compiler/build/src/apps; - # export TS_REPO_ROOT=`pwd`; - # ''; - - # NIX_CFLAGS_COMPILE=""; - - buildBoringSSL = '' - mkdir --parents build - pushd build - cmake -GNinja -DBUILD_SHARED_LIBS=1 .. - ninja - popd - ''; - - buildLibreSSL = '' - ./autogen.sh - mkdir --parents build - pushd build - cmake -GNinja -DBUILD_SHARED_LIBS=1 .. - ninja - popd - ''; - - # TODO OpenJDK 64-Bit Server VM warning: You have loaded library - # /home/qup/.local/share/ECTesterStandalone/lib/lib_ippcp.so which - # might have disabled stack guard. The VM will try to fix the stack - # guard now. It's highly recommended that you fix the library with - # 'execstack -c ', or link it with '-z noexecstack'. - buildIppCrypto = '' - CC=clang CXX=clang++ cmake CMakeLists.txt -GNinja -Bbuild -DARCH=intel64 # Does not work with GCC 12+ - mkdir --parents build - pushd build - ninja - popd - ''; - - buildMbedTLS = '' - python -m venv virt - . virt/bin/activate - pip install -r scripts/basic.requirements.txt - cmake -GNinja -Bbuild -DUSE_SHARED_MBEDTLS_LIBRARY=On - cd build - ninja - ''; - - wolfCrypt-JNI = '' - mkdir junit - wget -P junit/ https://repo1.maven.org/maven2/junit/junit/4.13.2/junit-4.13.2.jar - wget -P junit/ https://repo1.maven.org/maven2/org/hamcrest/hamcrest-all/1.3/hamcrest-all-1.3.jar - make -f makefile.linux - env JUNIT_HOME=junit/ ant build-jce-release - ''; - - # TODO add LD_LIB properly - # shellHook = '' - # export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HOME/projects/ts-spect-compiler/build/src/cosim - # NIX_CFLAGS_COMPILE= - # ''; - - # pushd ext/wolfcrypt-jni - # ${wolfCrypt-JNI} - # popd - - # pushd ext/mbedtls - # ${buildMbedTLS} - # popd - # ''; - # git submodule update --init --recursive - - # pushd ext/boringssl - # ${buildBoringSSL} - # popd - - # pushd ext/ipp-crypto - # ${buildIppCrypto} - # popd - - # pushd ext/libressl - # ${buildLibreSSL} - # popd - # ''; + + IPP_CRYPTO_HEADER = "${customPkgs.ipp-crypto.dev}/include"; IPP_CRYPTO_LIB = "${customPkgs.ipp-crypto}/lib/"; -- cgit v1.3.1 From 40dde8f2c1297f8bb85ddf34f9e278af9d8b3904 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 23 Jul 2024 10:53:56 +0200 Subject: Fix IPPCP ECLib requirements --- standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java index 115fe00..1b0047e 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class IppcpLib extends NativeECLibrary { public IppcpLib() { - super("IPPCP", "ippcp_provider", "lib_ippcp.so"); + super("IPPCP", "ippcp_provider"); } @Override -- cgit v1.3.1 From bddeacb5fa82b3d066230f08f706266b9e3d7674 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 23 Jul 2024 18:26:48 +0200 Subject: Don't use newer version of WolfCrypt --- flake.lock | 8 ++++---- flake.nix | 15 ++++++++++++++- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/flake.lock b/flake.lock index b2ef9c5..bb646a9 100644 --- a/flake.lock +++ b/flake.lock @@ -2,16 +2,16 @@ "nodes": { "custom-nixpkgs": { "locked": { - "lastModified": 1721657519, - "narHash": "sha256-GX9DU5wHfUsUlBNX5WZzLLj1SbawinMDPMCfwKuOKlU=", + "lastModified": 1721747370, + "narHash": "sha256-H+T7mrJ6JdnFLecs7xXwvuEM4aSUgUOc5uSvjbXoSOQ=", "owner": "quapka", "repo": "nixpkgs", - "rev": "951e69f7ca8f1ade27297bac8e5dc6e292d9be3b", + "rev": "ab32dd2547891356585d1cdb2f03f7070b1d1f89", "type": "github" }, "original": { "owner": "quapka", - "ref": "add-ipp-crypto", + "ref": "customPkgs", "repo": "nixpkgs", "type": "github" } diff --git a/flake.nix b/flake.nix index 8485e17..f0338b7 100644 --- a/flake.nix +++ b/flake.nix @@ -5,7 +5,7 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; gradle2nix.url = "github:tadfisher/gradle2nix/03c1b713ad139eb6dfc8d463b5bd348368125cf1"; - custom-nixpkgs.url = "github:quapka/nixpkgs/add-ipp-crypto"; # custom for of nixpkgs with ipp-crypto packaged + custom-nixpkgs.url = "github:quapka/nixpkgs/customPkgs"; # custom for of nixpkgs with ipp-crypto packaged # FIXME how to add submodule declaratively? # submodule = { # url = ./ @@ -15,6 +15,14 @@ outputs = { self, nixpkgs, custom-nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let + wolfcryptjni = with customPkgs; wolfcrypt-jni.overrideAttrs (final: prev: { + src = pkgs.fetchFromGitHub { + owner = "wolfSSL"; + repo = "wolfcrypt-jni"; + rev = "0497ee767c994775beda2f2091009593961e5c7e"; + hash = "sha256-mtUXUyIKJ617WzAWjlOaMscWM7zuGBISVMEAbmQNBOg="; + }; + }); patched_boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { src = fetchgit { url = "https://boringssl.googlesource.com/boringssl"; @@ -124,6 +132,7 @@ cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${patched_boringssl.out}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${mbedtlsShim.out}/lib/mbedtls_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + cp ${wolfcryptjni}/lib/* standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd @@ -200,9 +209,11 @@ gmp libgpg-error libconfig + wolfcryptjni ]; BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; # FIXME more things to copy here installPhase = '' @@ -309,9 +320,11 @@ gmp libgpg-error libconfig + wolfcryptjni ]; BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; IPP_CRYPTO_HEADER = "${customPkgs.ipp-crypto.dev}/include"; -- cgit v1.3.1 From 1d108189cf1e018e7ad43d591fed0ee95b2cf5bf Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 23 Jul 2024 18:28:42 +0200 Subject: Clean unnecessary WolfCrypt build instructions --- standalone/build.gradle.kts | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/standalone/build.gradle.kts b/standalone/build.gradle.kts index 5ad3fb4..9a15e48 100644 --- a/standalone/build.gradle.kts +++ b/standalone/build.gradle.kts @@ -10,12 +10,8 @@ repositories { } dependencies { - // Fallback to bundled wolfcrypt-jni if the submodule one is not built. - if (file("$rootDir/ext/wolfcrypt-jni/lib/wolfcrypt-jni.jar").exists()) { - implementation(files("$rootDir/ext/wolfcrypt-jni/lib/wolfcrypt-jni.jar")) - } else { - implementation(files("$rootDir/ext/wolfcrypt-jni.jar")) - } + val wolfcryptLibPath = System.getenv("WOLFCRYPT_LIB_PATH") + "/wolfcrypt-jni.jar"; + implementation(files(wolfcryptLibPath)) implementation(project(":common")) testImplementation(platform("org.junit:junit-bom:5.10.2")) @@ -51,10 +47,6 @@ tasks.named("test") { jvmArgs("--add-exports", "java.base/sun.security.ec=ALL-UNNAMED") } - // Add wolfcrypt JNI lib path to LD_LIBRARY_PATH (as our native library loading does not handle it) - environment( - "LD_LIBRARY_PATH", "$rootDir/ext/wolfcrypt-jni/lib/:" + System.getenv("LD_LIBRARY_PATH") - ) // Add a path where we will store our test results. environment( "RESULT_PATH", resultsDir.absolutePath -- cgit v1.3.1 From ccdd0a2b894abc2aad1e777643813d20956e0fe3 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 24 Jul 2024 16:02:19 +0200 Subject: Unify patching OpenSSL for all Flake outputs --- flake.nix | 47 +++++++++------------- .../crcs/ectester/standalone/libs/OpensslLib.java | 2 +- 2 files changed, 20 insertions(+), 29 deletions(-) diff --git a/flake.nix b/flake.nix index f0338b7..93d87ed 100644 --- a/flake.nix +++ b/flake.nix @@ -46,10 +46,17 @@ mv crypto/libcrypto.a $out/lib/lib_boringssl.a popd ''; - }); - - + # FIXME: `nix develeop` now has different version than `nix run` + openssl = { version ? "", hash ? "" }: (pkgs.openssl.override { static = true; }).overrideAttrs (final: prev: rec { + pname = "openssl"; + src = if version != "" then pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + hash = hash; + } else prev.src; + # FIXME Removing patches might cause unwanted things; this should be version based! + patches = []; + }); libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; # pname = "libressl"; @@ -99,23 +106,7 @@ }; buildECTesterStandalone = { opensslVersion, opensslHash }: ( let - patched_openssl = pkgs.openssl.overrideAttrs (_old: rec { - version = opensslVersion; - pname = "openssl"; - src = pkgs.fetchurl { - url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - hash = opensslHash; - }; - # FIXME Removing patches might cause unwanted things. - patches = []; - }); - - # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; - # libressl = pkgs.libressl.overrideAttrs (_old: { - # fixupPhase = '' - # cp ${devLibPath}/openssl.pc ${devLibPath}/libressl.pc - # ''; - # }); + opensslx = (openssl { version = opensslVersion; hash = opensslHash; }); in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -146,7 +137,7 @@ pkg-config global-platform-pro gradle - # patched_openssl + opensslx makeWrapper # libraries to test @@ -189,7 +180,7 @@ buildInputs = [ jdk17_headless # libressl - # patched_openssl + opensslx ]; LD_LIBRARY_PATH = lib.makeLibraryPath [ @@ -201,8 +192,7 @@ botan2 cryptopp libgcrypt - patched_openssl - libressl + opensslx patched_boringssl ninja nettle @@ -219,9 +209,9 @@ installPhase = '' mkdir -p $out cp -r standalone/build $out - echo ${opensslVersion} > $out/build/opensslVersion + ls ${opensslx}/lib/* > $out/po ''; - + postFixup = '' makeWrapper \ ${jdk17_headless}/bin/java $out/bin/${pname} \ @@ -269,7 +259,7 @@ global-platform-pro gradle # libraries to test - openssl + (openssl {}) libressl # glibc patched_boringssl @@ -313,7 +303,8 @@ libtomcrypt botan2 cryptopp - openssl + # (openssl {}) + (openssl {}) patched_boringssl libgcrypt nettle diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/OpensslLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/OpensslLib.java index 61f00a4..23d7ac1 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/OpensslLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/OpensslLib.java @@ -8,7 +8,7 @@ import java.util.Set; */ public class OpensslLib extends NativeECLibrary { public OpensslLib() { - super("OpenSSL", "openssl_provider", "crypto"); + super("OpenSSL", "openssl_provider"); } @Override -- cgit v1.3.1 From a899f7d5eb46d56ca7c5d79767cf5e12baec17e0 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 24 Jul 2024 16:51:35 +0200 Subject: Link GNU Crypto library statically --- flake.nix | 13 ++++++++++++- .../resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 93d87ed..33563a6 100644 --- a/flake.nix +++ b/flake.nix @@ -57,6 +57,12 @@ # FIXME Removing patches might cause unwanted things; this should be version based! patches = []; }); + libgcrypt = pkgs.libgcrypt.overrideAttrs (final: prev: { + configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; + }); + libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { + configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; + }); libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; # pname = "libressl"; @@ -115,7 +121,8 @@ # gradleInstallFlags = [ "installDist" ]; # gradleBuildFlags = [ "standalone:uberJar" ]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" lockFile = ./gradle.lock; - gradleBuildFlags = [ ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + # FIXME all libs need to be built, but combining Gradle build all-libs and dedicated shim derivations won't work + gradleBuildFlags = [ "libs" "-PlibName=gcrypt" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" src = ./.; preConfigure = '' @@ -163,6 +170,7 @@ clang libgcrypt + libgpg-error mbedtls nasm libtool @@ -192,6 +200,7 @@ botan2 cryptopp libgcrypt + libgpg-error opensslx patched_boringssl ninja @@ -281,6 +290,7 @@ # clang libgcrypt + libgpg-error mbedtls nasm libtool @@ -307,6 +317,7 @@ (openssl {}) patched_boringssl libgcrypt + libgpg-error nettle gmp libgpg-error diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index e4a0b26..ec72744 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -107,7 +107,7 @@ boringssl.o: boringssl.c gcrypt: gcrypt_provider.so gcrypt_provider.so: gcrypt.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -pthread -lpthread $(shell libgcrypt-config --libs) -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -pthread -lpthread -Wl,-Bstatic $(shell libgcrypt-config --libs) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so gcrypt.o: gcrypt.c $(CC) $(shell libgcrypt-config --cflags) $(CFLAGS) -c $< -- cgit v1.3.1 From eed2fbf135dace7d911aa042e3d79fa27cbe3d52 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 24 Jul 2024 16:54:16 +0200 Subject: Build OpenSSL statically --- .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index ec72744..3acff8b 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -87,7 +87,7 @@ cpp_utils.o: cpp_utils.cpp openssl: openssl_provider.so openssl_provider.so: openssl.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs openssl) -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -Wl,-Bstatic $(shell pkg-config --libs libcrypto) -lcrypto -L. -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so openssl.o: openssl.c $(CC) $(shell pkg-config --cflags openssl) $(CFLAGS) -c $< -- cgit v1.3.1 From d798fffc674fe8d84c26f14ce935611f8afefb6c Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 24 Jul 2024 17:13:07 +0200 Subject: Linked tomcrypt statically --- flake.nix | 5 ++++- .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 33563a6..27a0927 100644 --- a/flake.nix +++ b/flake.nix @@ -63,6 +63,9 @@ libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); + libtomcrypt = pkgs.libtomcrypt.overrideAttrs (final: prev: { + makefile = "makefile"; + }); libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; # pname = "libressl"; @@ -122,7 +125,7 @@ # gradleBuildFlags = [ "standalone:uberJar" ]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" lockFile = ./gradle.lock; # FIXME all libs need to be built, but combining Gradle build all-libs and dedicated shim derivations won't work - gradleBuildFlags = [ "libs" "-PlibName=gcrypt" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + gradleBuildFlags = [ "libs" "-PlibName=tomcrypt" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" src = ./.; preConfigure = '' diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 3acff8b..aee0a5e 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -117,7 +117,7 @@ gcrypt.o: gcrypt.c tomcrypt: tomcrypt_provider.so tomcrypt_provider.so: tomcrypt.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -ltommath $(shell pkg-config --libs libtomcrypt) -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -ltommath -Wl,-Bstatic $(shell pkg-config --libs libtomcrypt) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so tomcrypt.o: tomcrypt.c $(CC) -DLTM_DESC $(shell pkg-config --cflags libtomcrypt) $(CFLAGS) -c $< -- cgit v1.3.1 From 282704b9ee92d33b67292700cb265deffc052ad6 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 24 Jul 2024 17:17:48 +0200 Subject: Link Botan statically --- .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index aee0a5e..f3d95c0 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -127,7 +127,7 @@ tomcrypt.o: tomcrypt.c botan: botan_provider.so botan_provider.so: botan.o cpp_utils.o | lib_timing.so lib_cppsignals.so - $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs botan-2) -l:lib_timing.so -l:lib_cppsignals.so + $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs botan-2) -Wl,-Bdynamic -l:lib_timing.so -l:lib_cppsignals.so botan.o: botan.cpp $(CXX) $(shell pkg-config --cflags botan-2) $(CXXFLAGS) -c $< -- cgit v1.3.1 From 98e95fbfe9b3b1dc889cd227a1b700ff0a61e136 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 10:09:32 +0200 Subject: Static linking does not require loading botan-2 --- flake.nix | 2 +- standalone/src/main/java/cz/crcs/ectester/standalone/libs/BotanLib.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 27a0927..0f8c3f6 100644 --- a/flake.nix +++ b/flake.nix @@ -64,7 +64,7 @@ configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); libtomcrypt = pkgs.libtomcrypt.overrideAttrs (final: prev: { - makefile = "makefile"; + makefile = "makefile.unix"; }); libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BotanLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BotanLib.java index e8f6e13..3ed27f2 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BotanLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BotanLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class BotanLib extends NativeECLibrary { public BotanLib() { - super("Botan", "botan_provider", "botan-2"); + super("Botan", "botan_provider"); } @Override -- cgit v1.3.1 From c7300fb4a772b0d2364b0fff20f9676fdb79ac9b Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 10:11:36 +0200 Subject: Link Crypto++ statically --- flake.nix | 1 + .../src/main/java/cz/crcs/ectester/standalone/libs/CryptoppLib.java | 2 +- .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 0f8c3f6..7265e2f 100644 --- a/flake.nix +++ b/flake.nix @@ -66,6 +66,7 @@ libtomcrypt = pkgs.libtomcrypt.overrideAttrs (final: prev: { makefile = "makefile.unix"; }); + cryptopp = pkgs.cryptopp.override { enableStatic = true; }; libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; # pname = "libressl"; diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/CryptoppLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/CryptoppLib.java index 66aa9ea..6e001e2 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/CryptoppLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/CryptoppLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class CryptoppLib extends NativeECLibrary { public CryptoppLib() { - super("Crypto++","cryptopp_provider", "cryptopp"); + super("Crypto++","cryptopp_provider"); } @Override diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index f3d95c0..fa9e3ed 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -141,7 +141,7 @@ endif cryptopp: cryptopp_provider.so cryptopp_provider.so: cryptopp.o cpp_utils.o | lib_timing.so lib_cppsignals.so - $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs $(CRYPTOPP_NAME)) -l:lib_timing.so -l:lib_cppsignals.so + $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs $(CRYPTOPP_NAME)) -Wl,-Bdynamic -l:lib_timing.so -l:lib_cppsignals.so cryptopp.o: cryptopp.cpp $(CXX) $(shell pkg-config --cflags $(CRYPTOPP_NAME)) $(CXXFLAGS) -c $< -- cgit v1.3.1 From f3ce8a2f3d2b4a08ccf7c06f063244d372ce9160 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 10:20:01 +0200 Subject: Link Nettle statically --- flake.nix | 3 +++ .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 7265e2f..4cba1fd 100644 --- a/flake.nix +++ b/flake.nix @@ -66,6 +66,9 @@ libtomcrypt = pkgs.libtomcrypt.overrideAttrs (final: prev: { makefile = "makefile.unix"; }); + nettle = pkgs.nettle.overrideAttrs (final: prev: { + configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; + }); cryptopp = pkgs.cryptopp.override { enableStatic = true; }; libressl = pkgs.libressl.overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index fa9e3ed..845915c 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -172,7 +172,7 @@ ippcp.o: ippcp.c nettle: nettle_provider.so nettle_provider.so: nettle.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs nettle) -l:lib_timing.so -l:lib_csignals.so $(shell pkg-config --libs hogweed) -lgmp + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs nettle) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so $(shell pkg-config --libs hogweed) -lgmp nettle.o: nettle.c $(CC) $(shell pkg-config --cflags nettle) $(shell pkg-config --libs hogweed) -lgmp $(CFLAGS) -c $< -- cgit v1.3.1 From 20633c4bd5dbbfdebace4998d2d13f43e7122915 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 10:22:33 +0200 Subject: Link Mbedtls statically --- .../src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 845915c..3d3eecd 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -151,7 +151,7 @@ cryptopp.o: cryptopp.cpp mbedtls: mbedtls_provider.so mbedtls_provider.so: mbedtls.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -lmbedcrypto -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -lmbedcrypto -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so mbedtls.o: mbedtls.c $(CC) $(CFLAGS) -c $< -- cgit v1.3.1 From 36bb4958a2b304ec7383f8cfcdaa37f49e8c1b3b Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 10:46:43 +0200 Subject: Link LibreSSL statically --- flake.nix | 8 ++++---- .../main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/flake.nix b/flake.nix index 4cba1fd..b930630 100644 --- a/flake.nix +++ b/flake.nix @@ -70,7 +70,7 @@ configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); cryptopp = pkgs.cryptopp.override { enableStatic = true; }; - libressl = pkgs.libressl.overrideAttrs (_old: rec { + libressl = (pkgs.libressl.override { buildShared = false; } ).overrideAttrs (_old: rec { # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; # pname = "libressl"; # version = "3.9.2"; @@ -101,6 +101,7 @@ cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc ln -s $out/lib/libcrypto.so $out/lib/libresslcrypto.so + ln -s $out/lib/libcrypto.a $out/lib/libresslcrypto.a '' ]; @@ -155,10 +156,8 @@ makeWrapper # libraries to test - # openssl_3013 - # boringssl - libressl patched_boringssl + # libressl libtomcrypt libtommath botan2 @@ -209,6 +208,7 @@ libgcrypt libgpg-error opensslx + # libressl patched_boringssl ninja nettle diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 3d3eecd..8ea1f8d 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -182,7 +182,7 @@ nettle.o: nettle.c libressl: libressl_provider.so libressl_provider.so: libressl.o c_utils.o | lib_timing.so lib_csignals.so - NIX_CFLAGS_COMPILE= $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs libresslcrypto) -l:lib_timing.so -l:lib_csignals.so + NIX_CFLAGS_COMPILE= $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs libresslcrypto) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so libressl.o: libressl.c NIX_CFLAGS_COMPILE= $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< -- cgit v1.3.1 From d4ffadb99305eed9fca8154687db4fee678115a3 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 14:15:21 +0200 Subject: Derive common libs with Nix --- flake.nix | 9 ++++++--- nix/commonlibs.nix | 27 +++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 3 deletions(-) create mode 100644 nix/commonlibs.nix diff --git a/flake.nix b/flake.nix index b930630..e7adaa9 100644 --- a/flake.nix +++ b/flake.nix @@ -15,6 +15,7 @@ outputs = { self, nixpkgs, custom-nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let + commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; wolfcryptjni = with customPkgs; wolfcrypt-jni.overrideAttrs (final: prev: { src = pkgs.fetchFromGitHub { owner = "wolfSSL"; @@ -133,6 +134,8 @@ gradleBuildFlags = [ "libs" "-PlibName=tomcrypt" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" src = ./.; + jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; + preConfigure = '' cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ @@ -142,6 +145,7 @@ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd + cp ${commonLibs}/lib/* ${jniLibsPath} ''; nativeBuildInputs = [ @@ -195,12 +199,10 @@ jdk17_headless # libressl opensslx + commonLibs ]; LD_LIBRARY_PATH = lib.makeLibraryPath [ - # libresslShim - boringsslShim - libtommath libtomcrypt botan2 @@ -216,6 +218,7 @@ libgpg-error libconfig wolfcryptjni + commonLibs ]; BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; diff --git a/nix/commonlibs.nix b/nix/commonlibs.nix new file mode 100644 index 0000000..525d4aa --- /dev/null +++ b/nix/commonlibs.nix @@ -0,0 +1,27 @@ +{ + pkgs +}: +with pkgs; stdenv.mkDerivation rec { + name = "Common Libraries"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + pkg-config + cmake + which + jdk17_headless + ]; + + dontUseCmakeConfigure = true; + + libs = "lib_cppsignals.so lib_csignals.so lib_timing.so"; + + buildPhase = '' + make ${libs} + ''; + + installPhase = '' + mkdir --parents $out/lib + cp ${libs} $out/lib + ''; +} -- cgit v1.3.1 From 2c484515b9f2d9584e4954ca06ffe6c173db0a7b Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 14:20:31 +0200 Subject: Build Botan shim through Nix --- flake.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/flake.nix b/flake.nix index e7adaa9..bd93f5e 100644 --- a/flake.nix +++ b/flake.nix @@ -109,6 +109,7 @@ }); libresslShim = import ./nix/libresslshim.nix { pkgs = pkgs; libressl = libressl; }; boringsslShim = import ./nix/boringsslshim.nix { pkgs = pkgs; boringssl = patched_boringssl; }; + botanShim = import ./nix/botanshim.nix { inherit pkgs; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; @@ -145,6 +146,7 @@ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd + cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; -- cgit v1.3.1 From b29f697ad640653c976f9f25c97358aa96a509a9 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 14:22:14 +0200 Subject: Link TomCrypt statically and build the shim with Nix --- flake.nix | 13 ++++++++++++- .../java/cz/crcs/ectester/standalone/libs/TomcryptLib.java | 2 +- .../resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 2 +- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index bd93f5e..c841ce4 100644 --- a/flake.nix +++ b/flake.nix @@ -64,9 +64,17 @@ libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); - libtomcrypt = pkgs.libtomcrypt.overrideAttrs (final: prev: { + libtomcrypt = (pkgs.libtomcrypt.override { libtommath = libtommath; }).overrideAttrs (final: prev: { makefile = "makefile.unix"; }); + libtommath = pkgs.libtommath.overrideAttrs (final: prev: rec { + makefile = "makefile.unix"; + version = "1.3.0"; + src = pkgs.fetchurl { + url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; + sha256 = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; + }; + }); nettle = pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); @@ -109,6 +117,8 @@ }); libresslShim = import ./nix/libresslshim.nix { pkgs = pkgs; libressl = libressl; }; boringsslShim = import ./nix/boringsslshim.nix { pkgs = pkgs; boringssl = patched_boringssl; }; + # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl + tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; @@ -146,6 +156,7 @@ pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ make lib_timing.so lib_csignals.so lib_cppsignals.so popd + cp ${tomcryptShim.out}/lib/tomcrypt_provider.so ${jniLibsPath} cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/TomcryptLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/TomcryptLib.java index 8c000a2..9339986 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/TomcryptLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/TomcryptLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class TomcryptLib extends NativeECLibrary { public TomcryptLib() { - super("tomcrypt","tomcrypt_provider", "tommath", "tomcrypt"); + super("tomcrypt","tomcrypt_provider"); } @Override diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 8ea1f8d..1e98956 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -117,7 +117,7 @@ gcrypt.o: gcrypt.c tomcrypt: tomcrypt_provider.so tomcrypt_provider.so: tomcrypt.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -ltommath -Wl,-Bstatic $(shell pkg-config --libs libtomcrypt) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs libtomcrypt libtommath) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so tomcrypt.o: tomcrypt.c $(CC) -DLTM_DESC $(shell pkg-config --cflags libtomcrypt) $(CFLAGS) -c $< -- cgit v1.3.1 From f251b602bf597ad42d061dd0501baae8634a830a Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 14:25:36 +0200 Subject: Add missing Nix derivation for Botan shim --- nix/botanshim.nix | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 nix/botanshim.nix diff --git a/nix/botanshim.nix b/nix/botanshim.nix new file mode 100644 index 0000000..f6de723 --- /dev/null +++ b/nix/botanshim.nix @@ -0,0 +1,22 @@ +{ + pkgs +}: +with pkgs; stdenv.mkDerivation { + name = "BotanShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + botan2 + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make botan + ''; + + installPhase = '' + mkdir --parents $out/lib + cp botan_provider.so $out/lib/ + ''; +} -- cgit v1.3.1 From 943c182453bb22e7bd704dfe8ac9414286d06690 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 14:31:20 +0200 Subject: Add missing Nix derivation for TomCrypt shim --- nix/tomcryptshim.nix | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 nix/tomcryptshim.nix diff --git a/nix/tomcryptshim.nix b/nix/tomcryptshim.nix new file mode 100644 index 0000000..64e22b4 --- /dev/null +++ b/nix/tomcryptshim.nix @@ -0,0 +1,25 @@ +{ + pkgs + , libtomcrypt + , libtommath +}: +with pkgs; stdenv.mkDerivation { + name = "TomCryptShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + libtommath + libtomcrypt + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make tomcrypt + ''; + + installPhase = '' + mkdir --parents $out/lib + cp tomcrypt_provider.so $out/lib + ''; +} -- cgit v1.3.1 From c625e03c43a3089c42ec34ba272f25dff0733611 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 14:42:53 +0200 Subject: Build Crypto++ shim through Nix --- flake.nix | 2 ++ nix/cryptoppshim.nix | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 nix/cryptoppshim.nix diff --git a/flake.nix b/flake.nix index c841ce4..44fe3f6 100644 --- a/flake.nix +++ b/flake.nix @@ -120,6 +120,7 @@ # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; + cryptoppShim = import ./nix/cryptoppshim.nix { inherit pkgs cryptopp; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; @@ -158,6 +159,7 @@ popd cp ${tomcryptShim.out}/lib/tomcrypt_provider.so ${jniLibsPath} cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} + cp ${cryptoppShim.out}/lib/cryptopp_provider.so ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; diff --git a/nix/cryptoppshim.nix b/nix/cryptoppshim.nix new file mode 100644 index 0000000..1c3532c --- /dev/null +++ b/nix/cryptoppshim.nix @@ -0,0 +1,23 @@ +{ + pkgs + , cryptopp +}: +with pkgs; stdenv.mkDerivation { + name = "Crypto++ Shim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + cryptopp + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make cryptopp + ''; + + installPhase = '' + mkdir --parents $out/lib + cp cryptopp_provider.so $out/lib/ + ''; +} -- cgit v1.3.1 From c36381570b1e4e2f0e16a95d0ccd7b69a6780b92 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 15:12:34 +0200 Subject: Build OpenSSL shim through Nix --- flake.nix | 8 +++----- nix/opensslshim.nix | 23 +++++++++++++++++++++++ 2 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 nix/opensslshim.nix diff --git a/flake.nix b/flake.nix index 44fe3f6..3444be5 100644 --- a/flake.nix +++ b/flake.nix @@ -121,6 +121,7 @@ tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; cryptoppShim = import ./nix/cryptoppshim.nix { inherit pkgs cryptopp; }; + opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (openssl { version = version; hash = hash;}); }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; @@ -133,7 +134,7 @@ }; buildECTesterStandalone = { opensslVersion, opensslHash }: ( let - opensslx = (openssl { version = opensslVersion; hash = opensslHash; }); + opensslShim = (opensslShimBuilder { version = opensslVersion; hash = opensslHash; }); in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -160,6 +161,7 @@ cp ${tomcryptShim.out}/lib/tomcrypt_provider.so ${jniLibsPath} cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} cp ${cryptoppShim.out}/lib/cryptopp_provider.so ${jniLibsPath} + cp ${opensslShim.out}/lib/openssl_provider.so ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; @@ -171,7 +173,6 @@ pkg-config global-platform-pro gradle - opensslx makeWrapper # libraries to test @@ -213,7 +214,6 @@ buildInputs = [ jdk17_headless # libressl - opensslx commonLibs ]; @@ -224,7 +224,6 @@ cryptopp libgcrypt libgpg-error - opensslx # libressl patched_boringssl ninja @@ -243,7 +242,6 @@ installPhase = '' mkdir -p $out cp -r standalone/build $out - ls ${opensslx}/lib/* > $out/po ''; postFixup = '' diff --git a/nix/opensslshim.nix b/nix/opensslshim.nix new file mode 100644 index 0000000..6260b71 --- /dev/null +++ b/nix/opensslshim.nix @@ -0,0 +1,23 @@ +{ + pkgs + , openssl +}: +with pkgs; stdenv.mkDerivation { + name = "OpenSSL Shim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + openssl + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make openssl + ''; + + installPhase = '' + mkdir --parents $out/lib + cp openssl_provider.so $out/lib/ + ''; +} -- cgit v1.3.1 From 7600a40601b9ab9d417b240188316b1c0e299e8b Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 15:19:51 +0200 Subject: Clean up Nix build of BoringSSL shim --- flake.nix | 16 +++++----------- nix/boringsslshim.nix | 3 --- 2 files changed, 5 insertions(+), 14 deletions(-) diff --git a/flake.nix b/flake.nix index 3444be5..2b7cd8d 100644 --- a/flake.nix +++ b/flake.nix @@ -116,12 +116,12 @@ }); libresslShim = import ./nix/libresslshim.nix { pkgs = pkgs; libressl = libressl; }; - boringsslShim = import ./nix/boringsslshim.nix { pkgs = pkgs; boringssl = patched_boringssl; }; # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; cryptoppShim = import ./nix/cryptoppshim.nix { inherit pkgs cryptopp; }; opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (openssl { version = version; hash = hash;}); }; + boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = patched_boringssl; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; @@ -150,18 +150,12 @@ jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; preConfigure = '' - cp ${libresslShim.out}/lib/libressl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - cp ${patched_boringssl.out}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - cp ${mbedtlsShim.out}/lib/mbedtls_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - cp ${wolfcryptjni}/lib/* standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - pushd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - make lib_timing.so lib_csignals.so lib_cppsignals.so - popd cp ${tomcryptShim.out}/lib/tomcrypt_provider.so ${jniLibsPath} cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} cp ${cryptoppShim.out}/lib/cryptopp_provider.so ${jniLibsPath} cp ${opensslShim.out}/lib/openssl_provider.so ${jniLibsPath} + cp ${boringsslShim.out}/lib/boringssl_provider.so ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; @@ -176,7 +170,7 @@ makeWrapper # libraries to test - patched_boringssl + # patched_boringssl # libressl libtomcrypt libtommath @@ -225,7 +219,7 @@ libgcrypt libgpg-error # libressl - patched_boringssl + # patched_boringssl ninja nettle gmp @@ -235,7 +229,7 @@ commonLibs ]; - BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + # BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; # FIXME more things to copy here diff --git a/nix/boringsslshim.nix b/nix/boringsslshim.nix index 1ed63d3..3969381 100644 --- a/nix/boringsslshim.nix +++ b/nix/boringsslshim.nix @@ -17,9 +17,6 @@ with pkgs; stdenv.mkDerivation { ''; BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; - # LD_LIBRARY_PATH = with pkgs; lib.makeLibraryPath [ - # boringssl - # ]; installPhase = '' mkdir --parents $out/lib -- cgit v1.3.1 From 07bce9657c2975f11baaed7f920ccd7592c7efbd Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 15:23:51 +0200 Subject: Build Gcrypt shim through Nix --- flake.nix | 3 ++- nix/gcryptshim.nix | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100644 nix/gcryptshim.nix diff --git a/flake.nix b/flake.nix index 2b7cd8d..e423566 100644 --- a/flake.nix +++ b/flake.nix @@ -122,6 +122,7 @@ cryptoppShim = import ./nix/cryptoppshim.nix { inherit pkgs cryptopp; }; opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (openssl { version = version; hash = hash;}); }; boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = patched_boringssl; }; + gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; @@ -150,12 +151,12 @@ jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; preConfigure = '' - cp ${boringsslShim.out}/lib/boringssl_provider.so standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ cp ${tomcryptShim.out}/lib/tomcrypt_provider.so ${jniLibsPath} cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} cp ${cryptoppShim.out}/lib/cryptopp_provider.so ${jniLibsPath} cp ${opensslShim.out}/lib/openssl_provider.so ${jniLibsPath} cp ${boringsslShim.out}/lib/boringssl_provider.so ${jniLibsPath} + cp ${gcryptShim.out}/lib/gcrypt_provider.so ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; diff --git a/nix/gcryptshim.nix b/nix/gcryptshim.nix new file mode 100644 index 0000000..bfe027b --- /dev/null +++ b/nix/gcryptshim.nix @@ -0,0 +1,25 @@ +{ + pkgs + , libgcrypt + , libgpg-error +}: +with pkgs; stdenv.mkDerivation { + name = "Gcrypt Shim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + libgcrypt + libgpg-error + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make gcrypt + ''; + + installPhase = '' + mkdir --parents $out/lib + cp gcrypt_provider.so $out/lib/ + ''; +} -- cgit v1.3.1 From aa36d350ddc4545bf777d7ee1740137c868ea498 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 15:27:38 +0200 Subject: Remove runtime lib deps unnecessary due to static linking --- flake.nix | 5 ----- .../src/main/java/cz/crcs/ectester/standalone/libs/GcryptLib.java | 2 +- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/flake.nix b/flake.nix index e423566..d13f707 100644 --- a/flake.nix +++ b/flake.nix @@ -190,8 +190,6 @@ libb64 clang - libgcrypt - libgpg-error mbedtls nasm libtool @@ -217,14 +215,11 @@ libtomcrypt botan2 cryptopp - libgcrypt - libgpg-error # libressl # patched_boringssl ninja nettle gmp - libgpg-error libconfig wolfcryptjni commonLibs diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/GcryptLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/GcryptLib.java index 83d78ef..7dffb3f 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/GcryptLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/GcryptLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class GcryptLib extends NativeECLibrary { public GcryptLib() { - super("libgcrypt","gcrypt_provider", "gcrypt", "gpg-error"); + super("libgcrypt","gcrypt_provider"); } @Override -- cgit v1.3.1 From dd5e280b30bf0330f7723c8a2aea397b3a7758d2 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 15:30:42 +0200 Subject: Clean up Nix build of MbedTLS shim --- flake.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index d13f707..3ea66cf 100644 --- a/flake.nix +++ b/flake.nix @@ -157,6 +157,9 @@ cp ${opensslShim.out}/lib/openssl_provider.so ${jniLibsPath} cp ${boringsslShim.out}/lib/boringssl_provider.so ${jniLibsPath} cp ${gcryptShim.out}/lib/gcrypt_provider.so ${jniLibsPath} + cp ${libresslShim.out}/lib/libressl_provider.so ${jniLibsPath} + cp ${mbedtlsShim.out}/lib/mbedtls_provider.so ${jniLibsPath} + cp ${wolfcryptjni}/lib/* ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; @@ -190,7 +193,6 @@ libb64 clang - mbedtls nasm libtool perl -- cgit v1.3.1 From 86597bff993b1ff954f81347236d96691ee8e795 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 25 Jul 2024 21:13:18 +0200 Subject: Rename IPP Crypto shim --- flake.nix | 2 ++ nix/ippcpshim.nix | 26 ++++++++++++++++++++++++++ nix/ippcryptoshim.nix | 26 -------------------------- 3 files changed, 28 insertions(+), 26 deletions(-) create mode 100644 nix/ippcpshim.nix delete mode 100644 nix/ippcryptoshim.nix diff --git a/flake.nix b/flake.nix index 3ea66cf..ae43bb1 100644 --- a/flake.nix +++ b/flake.nix @@ -125,6 +125,7 @@ gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; + ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; overlays = []; pkgs = import nixpkgs { @@ -159,6 +160,7 @@ cp ${gcryptShim.out}/lib/gcrypt_provider.so ${jniLibsPath} cp ${libresslShim.out}/lib/libressl_provider.so ${jniLibsPath} cp ${mbedtlsShim.out}/lib/mbedtls_provider.so ${jniLibsPath} + cp ${ippcpShim.out}/lib/ippcp_provider.so ${jniLibsPath} cp ${wolfcryptjni}/lib/* ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; diff --git a/nix/ippcpshim.nix b/nix/ippcpshim.nix new file mode 100644 index 0000000..43ec4d6 --- /dev/null +++ b/nix/ippcpshim.nix @@ -0,0 +1,26 @@ +{ + pkgs + , ipp-crypto +}: + with pkgs; stdenv.mkDerivation rec { + name = "IppCryptoShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + ipp-crypto + pkg-config + jdk11_headless + ]; + + IPP_CRYPTO_HEADER = "${ipp-crypto.dev}/include"; + IPP_CRYPTO_LIB = "${ipp-crypto}/lib/"; + + buildPhase = '' + make ippcp + ''; + + installPhase = '' + mkdir --parents $out/lib + cp ippcp_provider.so $out/lib + ''; +} diff --git a/nix/ippcryptoshim.nix b/nix/ippcryptoshim.nix deleted file mode 100644 index b8e06f1..0000000 --- a/nix/ippcryptoshim.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - pkgs - , ipp-crypto -}: - with pkgs; stdenv.mkDerivation rec { - name = "IppCryptoShim"; - src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; - - buildInputs = [ - ipp-crypto - pkg-config - jdk11_headless - ]; - - IPP_CRYPTO_HEADER = "${ipp-crypto.dev}/include"; - IPP_CRYPTO_LIB = "${ipp-crypto}/lib/" - - buildPhase = '' - make ippcrypto - ''; - - installPhase = '' - mkdir --parents $out/lib - cp mbedtls_provider.so $out/lib - ''; -} -- cgit v1.3.1 From d75a844eee9a248d3abeb3ab80821fd4e3a02788 Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 26 Jul 2024 10:41:56 +0200 Subject: Remove redundant IPP Crypto shim --- flake.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/flake.nix b/flake.nix index ae43bb1..2c821ab 100644 --- a/flake.nix +++ b/flake.nix @@ -124,7 +124,6 @@ boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = patched_boringssl; }; gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; - ippcryptoShim = import ./nix/ippcryptoshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; overlays = []; -- cgit v1.3.1 From 888bf25d03940d87960df8fc1be1076afbc723aa Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 26 Jul 2024 10:43:24 +0200 Subject: Keep consistent shims build ordering --- flake.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 2c821ab..efcdac1 100644 --- a/flake.nix +++ b/flake.nix @@ -115,7 +115,6 @@ ]; }); - libresslShim = import ./nix/libresslshim.nix { pkgs = pkgs; libressl = libressl; }; # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; @@ -125,6 +124,7 @@ gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; + libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; overlays = []; pkgs = import nixpkgs { @@ -157,9 +157,9 @@ cp ${opensslShim.out}/lib/openssl_provider.so ${jniLibsPath} cp ${boringsslShim.out}/lib/boringssl_provider.so ${jniLibsPath} cp ${gcryptShim.out}/lib/gcrypt_provider.so ${jniLibsPath} - cp ${libresslShim.out}/lib/libressl_provider.so ${jniLibsPath} cp ${mbedtlsShim.out}/lib/mbedtls_provider.so ${jniLibsPath} cp ${ippcpShim.out}/lib/ippcp_provider.so ${jniLibsPath} + cp ${libresslShim.out}/lib/libressl_provider.so ${jniLibsPath} cp ${wolfcryptjni}/lib/* ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} ''; -- cgit v1.3.1 From c44faa20a356c45bad7769b76f7111dd5dbeeb06 Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 26 Jul 2024 10:46:19 +0200 Subject: Clean up Nix Gradle build --- flake.nix | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index efcdac1..59e9da3 100644 --- a/flake.nix +++ b/flake.nix @@ -141,11 +141,10 @@ gradle2nix.builders.${system}.buildGradlePackage rec { pname = "ECTesterStandalone"; version = "0.3.3"; - # gradleInstallFlags = [ "installDist" ]; - # gradleBuildFlags = [ "standalone:uberJar" ]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" lockFile = ./gradle.lock; - # FIXME all libs need to be built, but combining Gradle build all-libs and dedicated shim derivations won't work - gradleBuildFlags = [ "libs" "-PlibName=tomcrypt" ":standalone:uberJar"]; # ":standalone:compileJava" ":standalone:uberJar" ]; "--no-build-cache" + + # NOTE: the shims are built separately, therefore no need to call libs + gradleBuildFlags = [ ":standalone:uberJar"]; src = ./.; jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; -- cgit v1.3.1 From 11530dfa6766dfc26bef7dc9441c2af8bf1590a5 Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 26 Jul 2024 11:22:35 +0200 Subject: Build Nettle shim through Nix --- flake.nix | 2 ++ nix/nettleshim.nix | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 nix/nettleshim.nix diff --git a/flake.nix b/flake.nix index 59e9da3..e48a485 100644 --- a/flake.nix +++ b/flake.nix @@ -124,6 +124,7 @@ gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; + nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle; }; libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; overlays = []; @@ -158,6 +159,7 @@ cp ${gcryptShim.out}/lib/gcrypt_provider.so ${jniLibsPath} cp ${mbedtlsShim.out}/lib/mbedtls_provider.so ${jniLibsPath} cp ${ippcpShim.out}/lib/ippcp_provider.so ${jniLibsPath} + cp ${nettleShim.out}/lib/nettle_provider.so ${jniLibsPath} cp ${libresslShim.out}/lib/libressl_provider.so ${jniLibsPath} cp ${wolfcryptjni}/lib/* ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} diff --git a/nix/nettleshim.nix b/nix/nettleshim.nix new file mode 100644 index 0000000..f00c4e4 --- /dev/null +++ b/nix/nettleshim.nix @@ -0,0 +1,23 @@ +{ + pkgs + , nettle +}: +with pkgs; stdenv.mkDerivation rec { + name = "NettleShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + nettle + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make nettle + ''; + + installPhase = '' + mkdir --parents $out/lib + cp nettle_provider.so $out/lib + ''; +} -- cgit v1.3.1 From 5660a09d092e5619fb309a8a6433a3d40f677a4b Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 29 Jul 2024 17:33:37 +0200 Subject: Expose static libtommath and libtomcrypt through pkg-config --- flake.nix | 49 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 46 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index e48a485..abbca89 100644 --- a/flake.nix +++ b/flake.nix @@ -64,16 +64,59 @@ libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); - libtomcrypt = (pkgs.libtomcrypt.override { libtommath = libtommath; }).overrideAttrs (final: prev: { - makefile = "makefile.unix"; + libtomcrypt = (pkgs.libtomcrypt.override { libtommath = libtommath; }).overrideAttrs (final: prev: rec { + makefile = "makefile"; + version = "1.18.2"; + src = pkgs.fetchurl { + url = "https://github.com/libtom/libtomcrypt/releases/download/v${version}/crypt-${version}.tar.xz"; + sha256 = "113vfrgapyv72lalhd3nkw7jnks8az0gcb5wqn9hj19nhcxlrbcn"; + }; + patches = ( prev.patches or [] ) ++ [ + ( pkgs.writeText "pkgconfig-for-static.patch" '' +diff --git a/makefile b/makefile +index cd94b86f..ffb65402 100644 +--- a/makefile ++++ b/makefile +@@ -79,6 +79,9 @@ $(foreach demo, $(strip $(DEMOS)), $(eval $(call DEMO_template,$(demo)))) + #as root in order to have a high enough permission to write to the correct + #directories and to set the owner and group to root. + install: $(call print-help,install,Installs the library and headers) .common_install ++ sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' libtomcrypt.pc.in > libtomcrypt.pc ++ install -p -d $(DESTDIR)$(LIBPATH)/pkgconfig ++ install -p -m 644 libtomcrypt.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ + + install_bins: $(call print-help,install_bins,Installs the useful demos ($(USEFUL_DEMOS))) .common_install_bins + + '') + ]; }); libtommath = pkgs.libtommath.overrideAttrs (final: prev: rec { - makefile = "makefile.unix"; + makefile = "makefile"; version = "1.3.0"; src = pkgs.fetchurl { url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; sha256 = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + patches = ( prev.patches or [] ) ++ + [ + ( pkgs.writeText "pkgconfig-for-static.patch" '' +diff --git a/makefile b/makefile +index bee51a1..b36a13a 100644 +--- a/makefile ++++ b/makefile +@@ -90,6 +90,10 @@ install: $(LIBNAME) + install -d $(DESTDIR)$(INCPATH) + install -m 644 $(LIBNAME) $(DESTDIR)$(LIBPATH) + install -m 644 $(HEADERS_PUB) $(DESTDIR)$(INCPATH) ++ sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' -e 's,@CMAKE_INSTALL_LIBDIR@,lib,' \ ++ -e 's,@CMAKE_INSTALL_INCLUDEDIR@,include,' libtommath.pc.in > libtommath.pc ++ install -d $(DESTDIR)$(LIBPATH)/pkgconfig ++ install -m 644 libtommath.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ + + uninstall: + rm $(DESTDIR)$(LIBPATH)/$(LIBNAME) + '') + ]; }); nettle = pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; -- cgit v1.3.1 From ebacdc272271eff51698500f190937a1cfa41a8a Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 29 Jul 2024 17:45:06 +0200 Subject: Don't use LTC_PTHREAD in TomCrypt --- flake.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/flake.nix b/flake.nix index abbca89..7d459e7 100644 --- a/flake.nix +++ b/flake.nix @@ -71,6 +71,13 @@ url = "https://github.com/libtom/libtomcrypt/releases/download/v${version}/crypt-${version}.tar.xz"; sha256 = "113vfrgapyv72lalhd3nkw7jnks8az0gcb5wqn9hj19nhcxlrbcn"; }; + preBuild = '' + makeFlagsArray+=(PREFIX=$out \ + CFLAGS="-DUSE_LTM -DLTM_DESC" \ + EXTRALIBS=\"-ltommath\" \ + INSTALL_GROUP=$(id -g) \ + INSTALL_USER=$(id -u)) + ''; patches = ( prev.patches or [] ) ++ [ ( pkgs.writeText "pkgconfig-for-static.patch" '' diff --git a/makefile b/makefile -- cgit v1.3.1 From 52bd3d1382cc1d7922ef3c83983004627e08d9da Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 29 Jul 2024 17:49:35 +0200 Subject: Explain libtommath and libtomcrypt patches --- flake.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 7d459e7..a15be19 100644 --- a/flake.nix +++ b/flake.nix @@ -79,6 +79,8 @@ INSTALL_USER=$(id -u)) ''; patches = ( prev.patches or [] ) ++ [ + # NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). + # This patch copies the necessary code from `makefile.shared`. ( pkgs.writeText "pkgconfig-for-static.patch" '' diff --git a/makefile b/makefile index cd94b86f..ffb65402 100644 @@ -104,8 +106,9 @@ index cd94b86f..ffb65402 100644 url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; sha256 = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; - patches = ( prev.patches or [] ) ++ - [ + patches = ( prev.patches or [] ) ++ [ + # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). + # This patch copies the necessary code from `makefile.shared`. ( pkgs.writeText "pkgconfig-for-static.patch" '' diff --git a/makefile b/makefile index bee51a1..b36a13a 100644 -- cgit v1.3.1 From 095a210092b536fd70c10d5dd58c2668c4ce9331 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 29 Jul 2024 18:51:44 +0200 Subject: Link Nettle statically and build the shim with Nix --- flake.nix | 29 +++++++--------------- nix/nettleshim.nix | 2 ++ .../crcs/ectester/standalone/libs/NettleLib.java | 2 +- .../cz/crcs/ectester/standalone/libs/jni/Makefile | 5 ++-- 4 files changed, 15 insertions(+), 23 deletions(-) diff --git a/flake.nix b/flake.nix index a15be19..630cb8a 100644 --- a/flake.nix +++ b/flake.nix @@ -133,21 +133,6 @@ index bee51a1..b36a13a 100644 }); cryptopp = pkgs.cryptopp.override { enableStatic = true; }; libressl = (pkgs.libressl.override { buildShared = false; } ).overrideAttrs (_old: rec { - # devLibPath = pkgs.lib.makeLibraryPath [ pkgs.libressl.dev ]; - # pname = "libressl"; - # version = "3.9.2"; - # includes = [ "tests/tlstest.sh" ]; - # src = pkgs.fetchurl { - # url = "mirror://openbsd/LibreSSL/${pname}-${version}.tar.gz"; - # hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; - # }; - # nativeBuildInputs = _old.nativeBuildInputs ++ (with pkgs; [ - # pkg-config - # ]); - - # Patched according to the previous versions: - # https://github.com/NixOS/nixpkgs/blob/nixos-24.05/pkgs/development/libraries/libressl/default.nix#L118 - # For unknown reasons the newer versions are not patched this way (yet?) patches = [ (pkgs.fetchpatch { url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; @@ -157,7 +142,10 @@ index bee51a1..b36a13a 100644 ]; # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. - postFixup = pkgs.lib.concatLines [ + # This is not needed for building the individual shims through Nix, as libresslShim build env does not + # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple + # lib shims are built alongside each other. + postFixup = pkgs.lib.concatLines [ ( _old.postFixup or "" ) '' cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc @@ -168,6 +156,7 @@ index bee51a1..b36a13a 100644 ]; }); + gmp = pkgs.gmp.override { withStatic = true; }; # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; @@ -177,7 +166,7 @@ index bee51a1..b36a13a 100644 gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; - nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle; }; + nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle gmp; }; libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; overlays = []; @@ -255,7 +244,7 @@ index bee51a1..b36a13a 100644 wolfssl nettle - gmp + # gmp libgpg-error wget libconfig @@ -275,8 +264,8 @@ index bee51a1..b36a13a 100644 # libressl # patched_boringssl ninja - nettle - gmp + # nettle + # gmp libconfig wolfcryptjni commonLibs diff --git a/nix/nettleshim.nix b/nix/nettleshim.nix index f00c4e4..b431a2a 100644 --- a/nix/nettleshim.nix +++ b/nix/nettleshim.nix @@ -1,6 +1,7 @@ { pkgs , nettle + , gmp }: with pkgs; stdenv.mkDerivation rec { name = "NettleShim"; @@ -8,6 +9,7 @@ with pkgs; stdenv.mkDerivation rec { buildInputs = [ nettle + gmp pkg-config jdk11_headless ]; diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NettleLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NettleLib.java index d4df414..6dcdb24 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NettleLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NettleLib.java @@ -18,7 +18,7 @@ import java.util.Set; public class NettleLib extends NativeECLibrary { public NettleLib() { - super("Nettle", "nettle_provider", "nettle","hogweed", "gmp"); + super("Nettle", "nettle_provider"); } @Override diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 1e98956..0ee834c 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -172,10 +172,11 @@ ippcp.o: ippcp.c nettle: nettle_provider.so nettle_provider.so: nettle.o c_utils.o | lib_timing.so lib_csignals.so - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs nettle) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so $(shell pkg-config --libs hogweed) -lgmp + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs nettle hogweed gmp) \ + -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so nettle.o: nettle.c - $(CC) $(shell pkg-config --cflags nettle) $(shell pkg-config --libs hogweed) -lgmp $(CFLAGS) -c $< + $(CC) -Wl,-static $(shell pkg-config --cflags nettle hogweed gmp) $(CFLAGS) -c $< # LibreSSL shim -- cgit v1.3.1 From 9c6de288457a6a0036cd18378e7c6e58d3e01985 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 30 Jul 2024 09:56:32 +0200 Subject: Clean up the Nix build a bit --- flake.nix | 170 ++++++------------------ nix/libtomcrypt-pkgconfig-for-static.patch | 16 +++ nix/libtommath-pkgconfig-for-static-build.patch | 15 +++ 3 files changed, 70 insertions(+), 131 deletions(-) create mode 100644 nix/libtomcrypt-pkgconfig-for-static.patch create mode 100644 nix/libtommath-pkgconfig-for-static-build.patch diff --git a/flake.nix b/flake.nix index 630cb8a..0e91ccd 100644 --- a/flake.nix +++ b/flake.nix @@ -5,26 +5,22 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; gradle2nix.url = "github:tadfisher/gradle2nix/03c1b713ad139eb6dfc8d463b5bd348368125cf1"; - custom-nixpkgs.url = "github:quapka/nixpkgs/customPkgs"; # custom for of nixpkgs with ipp-crypto packaged - # FIXME how to add submodule declaratively? - # submodule = { - # url = ./ - # }; + custom-nixpkgs.url = "github:quapka/nixpkgs/customPkgs"; }; outputs = { self, nixpkgs, custom-nixpkgs, flake-utils, gradle2nix, ... }: flake-utils.lib.eachDefaultSystem (system: let - commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; - wolfcryptjni = with customPkgs; wolfcrypt-jni.overrideAttrs (final: prev: { - src = pkgs.fetchFromGitHub { - owner = "wolfSSL"; - repo = "wolfcrypt-jni"; - rev = "0497ee767c994775beda2f2091009593961e5c7e"; - hash = "sha256-mtUXUyIKJ617WzAWjlOaMscWM7zuGBISVMEAbmQNBOg="; - }; - }); - patched_boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { + overlays = []; + pkgs = import nixpkgs { + inherit system overlays; + }; + customPkgs = import custom-nixpkgs { + inherit system overlays; + }; + + # Altered upstream packages + boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { src = fetchgit { url = "https://boringssl.googlesource.com/boringssl"; rev = "67422ed4434116daa8898773692165ddd51a6ac2"; @@ -81,22 +77,7 @@ patches = ( prev.patches or [] ) ++ [ # NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). # This patch copies the necessary code from `makefile.shared`. - ( pkgs.writeText "pkgconfig-for-static.patch" '' -diff --git a/makefile b/makefile -index cd94b86f..ffb65402 100644 ---- a/makefile -+++ b/makefile -@@ -79,6 +79,9 @@ $(foreach demo, $(strip $(DEMOS)), $(eval $(call DEMO_template,$(demo)))) - #as root in order to have a high enough permission to write to the correct - #directories and to set the owner and group to root. - install: $(call print-help,install,Installs the library and headers) .common_install -+ sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' libtomcrypt.pc.in > libtomcrypt.pc -+ install -p -d $(DESTDIR)$(LIBPATH)/pkgconfig -+ install -p -m 644 libtomcrypt.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ - - install_bins: $(call print-help,install_bins,Installs the useful demos ($(USEFUL_DEMOS))) .common_install_bins - - '') + ./nix/libtomcrypt-pkgconfig-for-static.patch ]; }); libtommath = pkgs.libtommath.overrideAttrs (final: prev: rec { @@ -109,23 +90,7 @@ index cd94b86f..ffb65402 100644 patches = ( prev.patches or [] ) ++ [ # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). # This patch copies the necessary code from `makefile.shared`. - ( pkgs.writeText "pkgconfig-for-static.patch" '' -diff --git a/makefile b/makefile -index bee51a1..b36a13a 100644 ---- a/makefile -+++ b/makefile -@@ -90,6 +90,10 @@ install: $(LIBNAME) - install -d $(DESTDIR)$(INCPATH) - install -m 644 $(LIBNAME) $(DESTDIR)$(LIBPATH) - install -m 644 $(HEADERS_PUB) $(DESTDIR)$(INCPATH) -+ sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' -e 's,@CMAKE_INSTALL_LIBDIR@,lib,' \ -+ -e 's,@CMAKE_INSTALL_INCLUDEDIR@,include,' libtommath.pc.in > libtommath.pc -+ install -d $(DESTDIR)$(LIBPATH)/pkgconfig -+ install -m 644 libtommath.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ - - uninstall: - rm $(DESTDIR)$(LIBPATH)/$(LIBNAME) - '') + ./nix/libtommath-pkgconfig-for-static-build.patch ]; }); nettle = pkgs.nettle.overrideAttrs (final: prev: { @@ -157,25 +122,32 @@ index bee51a1..b36a13a 100644 }); gmp = pkgs.gmp.override { withStatic = true; }; + + # Custom added packages + wolfcryptjni = with customPkgs; wolfcrypt-jni.overrideAttrs (final: prev: { + src = pkgs.fetchFromGitHub { + owner = "wolfSSL"; + repo = "wolfcrypt-jni"; + rev = "0497ee767c994775beda2f2091009593961e5c7e"; + hash = "sha256-mtUXUyIKJ617WzAWjlOaMscWM7zuGBISVMEAbmQNBOg="; + }; + }); + + # Shims and libs # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; botanShim = import ./nix/botanshim.nix { inherit pkgs; }; cryptoppShim = import ./nix/cryptoppshim.nix { inherit pkgs cryptopp; }; opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (openssl { version = version; hash = hash;}); }; - boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = patched_boringssl; }; + boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = boringssl; }; gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle gmp; }; libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; - overlays = []; - pkgs = import nixpkgs { - inherit system overlays; - }; - customPkgs = import custom-nixpkgs { - inherit system overlays; - }; + commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; + buildECTesterStandalone = { opensslVersion, opensslHash }: ( let opensslShim = (opensslShimBuilder { version = opensslVersion; hash = opensslHash; }); @@ -186,7 +158,7 @@ index bee51a1..b36a13a 100644 version = "0.3.3"; lockFile = ./gradle.lock; - # NOTE: the shims are built separately, therefore no need to call libs + # NOTE: the shims are built separately, therefore no need to call build `libs` target gradleBuildFlags = [ ":standalone:uberJar"]; src = ./.; @@ -207,74 +179,12 @@ index bee51a1..b36a13a 100644 cp ${commonLibs}/lib/* ${jniLibsPath} ''; - nativeBuildInputs = [ - # libresslShim - gdb - ant - jdk17 - pkg-config - global-platform-pro - gradle - makeWrapper - - # libraries to test - # patched_boringssl - # libressl - libtomcrypt - libtommath - botan2 - cryptopp - - # libraries' dependencies - # cmake - # ninja - gawk - automake - go - gtest - libunwind - autoconf - libb64 - - clang - nasm - libtool - perl - - wolfssl - nettle - - # gmp - libgpg-error - wget - libconfig - ]; - - buildInputs = [ - jdk17_headless - # libressl - commonLibs - ]; - - LD_LIBRARY_PATH = lib.makeLibraryPath [ - libtommath - libtomcrypt - botan2 - cryptopp - # libressl - # patched_boringssl - ninja - # nettle - # gmp - libconfig - wolfcryptjni - commonLibs - ]; - - # BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + nativeBuildInputs = [ makeWrapper ]; + + LD_LIBRARY_PATH = lib.makeLibraryPath [ wolfcryptjni ]; + WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; - # FIXME more things to copy here installPhase = '' mkdir -p $out cp -r standalone/build $out @@ -290,10 +200,8 @@ index bee51a1..b36a13a 100644 }); in { - packages = { - default = buildECTesterStandalone { - opensslVersion="3.3.1"; opensslHash="sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; - }; + packages = rec { + default = openssl_331; openssl_331 = buildECTesterStandalone { opensslVersion="3.3.1"; opensslHash="sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; }; @@ -314,7 +222,7 @@ index bee51a1..b36a13a 100644 ]; preConfigure = '' - cp ${patched_boringssl}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ + cp ${boringssl}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ ''; buildInputs = [ @@ -330,7 +238,7 @@ index bee51a1..b36a13a 100644 (openssl {}) libressl # glibc - patched_boringssl + boringssl libtomcrypt libtommath botan2 @@ -374,7 +282,7 @@ index bee51a1..b36a13a 100644 cryptopp # (openssl {}) (openssl {}) - patched_boringssl + boringssl libgcrypt libgpg-error nettle @@ -384,7 +292,7 @@ index bee51a1..b36a13a 100644 wolfcryptjni ]; - BORINGSSL_CFLAGS = "${patched_boringssl.dev.outPath}/include"; + BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; diff --git a/nix/libtomcrypt-pkgconfig-for-static.patch b/nix/libtomcrypt-pkgconfig-for-static.patch new file mode 100644 index 0000000..5db9dbd --- /dev/null +++ b/nix/libtomcrypt-pkgconfig-for-static.patch @@ -0,0 +1,16 @@ +# NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). +# This patch copies the necessary code from `makefile.shared`. +diff --git a/makefile b/makefile +index cd94b86f..ffb65402 100644 +--- a/makefile ++++ b/makefile +@@ -79,6 +79,9 @@ $(foreach demo, $(strip $(DEMOS)), $(eval $(call DEMO_template,$(demo)))) + #as root in order to have a high enough permission to write to the correct + #directories and to set the owner and group to root. + install: $(call print-help,install,Installs the library and headers) .common_install ++ sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' libtomcrypt.pc.in > libtomcrypt.pc ++ install -p -d $(DESTDIR)$(LIBPATH)/pkgconfig ++ install -p -m 644 libtomcrypt.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ + + install_bins: $(call print-help,install_bins,Installs the useful demos ($(USEFUL_DEMOS))) .common_install_bins + '') diff --git a/nix/libtommath-pkgconfig-for-static-build.patch b/nix/libtommath-pkgconfig-for-static-build.patch new file mode 100644 index 0000000..4a97aca --- /dev/null +++ b/nix/libtommath-pkgconfig-for-static-build.patch @@ -0,0 +1,15 @@ +diff --git a/makefile b/makefile +index bee51a1..b36a13a 100644 +--- a/makefile ++++ b/makefile +@@ -90,6 +90,10 @@ install: $(LIBNAME) + install -d $(DESTDIR)$(INCPATH) + install -m 644 $(LIBNAME) $(DESTDIR)$(LIBPATH) + install -m 644 $(HEADERS_PUB) $(DESTDIR)$(INCPATH) ++ sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' -e 's,@CMAKE_INSTALL_LIBDIR@,lib,' \ ++ -e 's,@CMAKE_INSTALL_INCLUDEDIR@,include,' libtommath.pc.in > libtommath.pc ++ install -d $(DESTDIR)$(LIBPATH)/pkgconfig ++ install -m 644 libtommath.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ + + uninstall: + rm $(DESTDIR)$(LIBPATH)/$(LIBNAME) -- cgit v1.3.1 From 40f5279a1f84c737daac70a3b66c649708f63973 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 30 Jul 2024 20:24:46 +0200 Subject: Fix Crypto++ version calculation --- nix/botan_pkg_versions.nix | 19 ++++++++ nix/cryptopp_pkg_versions.nix | 53 ++++++++++++++++++++++ .../crcs/ectester/standalone/libs/jni/cryptopp.cpp | 2 +- 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 nix/botan_pkg_versions.nix create mode 100644 nix/cryptopp_pkg_versions.nix diff --git a/nix/botan_pkg_versions.nix b/nix/botan_pkg_versions.nix new file mode 100644 index 0000000..90295f1 --- /dev/null +++ b/nix/botan_pkg_versions.nix @@ -0,0 +1,19 @@ +{ + +v200 = buildECTesterStandalone { + botan = { version="2.0.0"; hash="sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="; }; +}; + +v201 = buildECTesterStandalone { + botan = { version="2.0.1"; hash="sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="; }; +}; + +v210 = buildECTesterStandalone { + botan = { version="2.1.0"; hash="sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="; }; +}; + +v2100 = buildECTesterStandalone { + botan = { version="2.10.0"; hash="sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="; }; +}; + +} diff --git a/nix/cryptopp_pkg_versions.nix b/nix/cryptopp_pkg_versions.nix new file mode 100644 index 0000000..3e77a12 --- /dev/null +++ b/nix/cryptopp_pkg_versions.nix @@ -0,0 +1,53 @@ +{ + buildECTesterStandalone +}: +{ + v890 = buildECTesterStandalone { + cryptopp = { version="8_9_0"; hash="sha256-q1F0ubXGI2WI4VoaoarstmWM2+CVAceYGsjbJ2ok2as="; }; + }; + v880 = buildECTesterStandalone { + cryptopp = { version="8_8_0"; hash="sha256-+Lj2MlM7J57il2lOZR6SBIJLumAizmbmDr67CLVR/no="; }; + }; + v870 = buildECTesterStandalone { + cryptopp = { version="8_7_0"; hash="sha256-jWpAZLjp80zT6Dj1oSxABn7nuV7jfZFz7Cc8sJE+fKI="; }; + }; + v860 = buildECTesterStandalone { + cryptopp = { version="8_6_0"; hash="sha256-kwRiX0dnoT4KXybQ8BnXjPk3VgSjPlORw78ugTmd/rg="; }; + }; + v850 = buildECTesterStandalone { + cryptopp = { version="8_5_0"; hash="sha256-j2TPCc9PYdXXS8pTV0uMyZWRhswPByouZZfkmZ1q1ds="; }; + }; + v840 = buildECTesterStandalone { + cryptopp = { version="8_4_0"; hash="sha256-ZoffweM7CErqtIw1qFULI57l9zoJmjtqCRjXC4qJ5lQ="; }; + }; + v830 = buildECTesterStandalone { + cryptopp = { version="8_3_0"; hash="sha256-YzBMb5Q/Q1pOOFJz4Vq7ac/zuFpEZjFQv1pgabhKvUM="; }; + }; + v820 = buildECTesterStandalone { + cryptopp = { version="8_2_0"; hash="sha256-47zUimJzmtF5rYBktSM0artTdnvL78Af43MDQSKSND4="; }; + }; + v810 = buildECTesterStandalone { + cryptopp = { version="8_1_0"; hash="sha256-ik5Hc6ObDAfXzqG4vno/ep0Sa9Osmp8HL4LTpTpHSoc="; }; + }; + v800 = buildECTesterStandalone { + cryptopp = { version="8_0_0"; hash="sha256-Zei3qwaKkUJ/nrvdFP/uLM/tNN79GQIyXIej6xbvvm0="; }; + }; + v700 = buildECTesterStandalone { + cryptopp = { version="7_0_0"; hash="sha256-Pul5A4grX1jIi2+dLOUP0QAL6VR5GAx7RoHNP0wcdik="; }; + }; + v610 = buildECTesterStandalone { + cryptopp = { version="6_1_0"; hash="sha256-ae5x/f+cwNVmNHEnA8jrqXIEv1j+rN/hqU34f6/+/1U="; }; + }; + v600 = buildECTesterStandalone { + cryptopp = { version="6_0_0"; hash="sha256-7ZUZc65PTVLtzyWIL6UjgUWgCtyB7bnXvkznuap0Qmk="; }; + }; + v565 = buildECTesterStandalone { + cryptopp = { version="5_6_5"; hash="sha256-ef1VFLOxkaHG2TTNmJ1eBY9HJqcqPa0kRL0SdKaq5oY="; }; + }; + v564 = buildECTesterStandalone { + cryptopp = { version="5_6_4"; hash="sha256-T6hN4QUOjiBUlyIpMsk6jWtuJvR+rE8RAojtVJAuBdM="; }; + }; + v563 = buildECTesterStandalone { + cryptopp = { version="5_6_3"; hash="sha256-7ZP5aTEtlWvdlduDIOyVc8OPT+mJYKXFg2k73fDrBlQ="; }; + }; +} \ No newline at end of file diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp index c4c74a6..028c321 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp @@ -111,7 +111,7 @@ JNIEXPORT jobject JNICALL Java_cz_crcs_ectester_standalone_libs_CryptoppLib_crea } jstring name = env->NewStringUTF(lib_name.c_str()); - double version = lib_version / 100; + double version = lib_version / 100.0; jstring info = env->NewStringUTF(ss.str().c_str()); return env->NewObject(provider_class, init, name, version, info); -- cgit v1.3.1 From 3fcaa7a9f4d8e3ac41ccbf96c5b3dfe8d5e20831 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 30 Jul 2024 21:01:44 +0200 Subject: Add autogenerated releases for OpenSSL, Crypto++ and Botan --- fetchReleases.py | 140 ++++++++++++++++++++++++++++++++++++++++++ flake.nix | 65 ++++++++++++-------- nix/botan_pkg_versions.nix | 139 +++++++++++++++++++++++++++++++++++------ nix/botanshim.nix | 10 ++- nix/cryptopp_pkg_versions.nix | 32 +++++----- nix/openssl_pkg_versions.nix | 65 ++++++++++++++++++++ 6 files changed, 388 insertions(+), 63 deletions(-) create mode 100644 fetchReleases.py create mode 100644 nix/openssl_pkg_versions.nix diff --git a/fetchReleases.py b/fetchReleases.py new file mode 100644 index 0000000..b462e1e --- /dev/null +++ b/fetchReleases.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 + +import argparse + +import json +import jinja2 +import re +import requests + +import subprocess as sp + +from base64 import b32encode, b32decode, b64encode, b16decode +from bs4 import BeautifulSoup + +env = jinja2.Environment() + +all_versions_template = env.from_string("""{ + buildECTesterStandalone +}: +{ {% for version in pkg_versions %} + {{ version }} {% endfor %} +}""") + +def get_source_hash(url, unpack=False): + digest_type = "sha256" + + cmd = ["nix-prefetch-url"] + if unpack: + cmd.append("--unpack") + cmd.extend(["--type", digest_type, url]) + + digest_nixbase32 = sp.check_output(cmd, stderr=sp.DEVNULL).strip() + digest_sri = sp.check_output(["nix", "hash", "to-sri", "--type", digest_type, digest_nixbase32.decode()], stderr=sp.DEVNULL).strip().decode() + return digest_sri + +def fetch_botan(): + # NOTE: this way omits the older releases at https://botan.randombit.net/releases/old + release_list = "https://botan.randombit.net/releases/" + download_url = "https://botan.randombit.net/releases/{version}" + resp = requests.get(release_list) + soup = BeautifulSoup(resp.content, 'html.parser') + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; source_extension="{{ ext }}"; hash="{{ digest }}"; }; + };""") + + renders = [] + for link in soup.find_all("a"): + if link.text.startswith("Botan") and not link.text.endswith('.asc'): + download_link = download_url.format(version=link['href']) + + match = re.match(r"Botan-(?P\d+)\.(?P\d+)\.(?P\d+)\.(?P.*)", link.text) + version = f"{match['major']}.{match['minor']}.{match['patch']}" + ext = f"{match['ext']}" + + digest = get_source_hash(download_link) + # NOTE: use underscore to separate the versions? + flat_version = f"v{match['major']}{match['minor']}{match['patch']}" + + rendered = single_version_template.render(pkg="botan", digest=digest, ext=ext, flat_version=flat_version, version=version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open("./nix/botan_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + +def fetch_cryptopp(): + owner = "weidai11" + repo = "cryptopp" + release_url = f"https://api.github.com/repos/{owner}/{repo}/releases" + resp = requests.get(release_url) + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; + };""") + renders = [] + for release in resp.json(): + if not release['draft'] and not release['prerelease']: + _, *version_values = release['tag_name'].split('_') + underscored_version = '_'.join(version_values) + flat_version = "v" + "".join(version_values) + download_url = f"https://github.com/{owner}/{repo}/archive/{release['tag_name']}.tar.gz" + digest = get_source_hash(download_url, unpack=True) + + + rendered = single_version_template.render(pkg="cryptopp", digest=digest, flat_version=flat_version, version=underscored_version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open("./nix/cryptopp_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + +def fetch_openssl(): + pkg = "openssl" + owner = "openssl" + repo = "openssl" + release_url = f"https://api.github.com/repos/{owner}/{repo}/releases" + resp = requests.get(release_url) + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; + };""") + renders = [] + for release in resp.json(): + if not release['draft'] and not release['prerelease']: + try: + _, dotted_version = release['tag_name'].split('-') + except ValueError: + continue + flat_version = "v" + "".join(dotted_version.split('.')) + download_url = f"https://github.com/{owner}/{repo}/archive/{release['tag_name']}.tar.gz" + digest = get_source_hash(download_url) + + + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=dotted_version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + + + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("lib") + args = parser.parse_args() + + match args.lib: + case "botan": + fetch_botan() + case "cryptopp": + fetch_cryptopp() + case "openssl": + fetch_openssl() + + +if __name__ == '__main__': + main() diff --git a/flake.nix b/flake.nix index 0e91ccd..a421626 100644 --- a/flake.nix +++ b/flake.nix @@ -45,15 +45,25 @@ ''; }); # FIXME: `nix develeop` now has different version than `nix run` - openssl = { version ? "", hash ? "" }: (pkgs.openssl.override { static = true; }).overrideAttrs (final: prev: rec { + opensslBuilder = { version ? null, hash ? null }: (pkgs.openssl.override { static = true; }).overrideAttrs (final: prev: rec { pname = "openssl"; - src = if version != "" then pkgs.fetchurl { + src = if version != null then pkgs.fetchurl { url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; hash = hash; } else prev.src; # FIXME Removing patches might cause unwanted things; this should be version based! patches = []; }); + botan2Builder = { version, source_extension, hash }: pkgs.botan2.overrideAttrs (final: prev: { + src = if ( version == null ) then prev.src else + pkgs.fetchurl { + urls = [ + "http://botan.randombit.net/releases/Botan-${version}.${source_extension}" + ]; + inherit hash; + }; + }); + libgcrypt = pkgs.libgcrypt.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); @@ -96,7 +106,15 @@ nettle = pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); - cryptopp = pkgs.cryptopp.override { enableStatic = true; }; + cryptoppBuilder = { version, hash }: (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs (final: prev: { + src = if version == null then prev.src else + pkgs.fetchFromGitHub { + owner = "weidai11"; + repo = "cryptopp"; + rev = "CRYPTOPP_${version}"; + inherit hash; + }; + }); libressl = (pkgs.libressl.override { buildShared = false; } ).overrideAttrs (_old: rec { patches = [ (pkgs.fetchpatch { @@ -135,10 +153,10 @@ # Shims and libs # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl - tomcryptShim = import ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; - botanShim = import ./nix/botanshim.nix { inherit pkgs; }; - cryptoppShim = import ./nix/cryptoppshim.nix { inherit pkgs cryptopp; }; - opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (openssl { version = version; hash = hash;}); }; + tomcryptShim = pkgs.callPackage ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; + botanShimBuilder = { version, source_extension, hash }: pkgs.callPackage ./nix/botanshim.nix { botan2 = botan2Builder { inherit version source_extension hash; }; }; + cryptoppShimBuilder = { version, hash}: pkgs.callPackage ./nix/cryptoppshim.nix { cryptopp = cryptoppBuilder { inherit version hash; };}; + opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (opensslBuilder { version = version; hash = hash;}); }; boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = boringssl; }; gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; @@ -148,9 +166,15 @@ commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; - buildECTesterStandalone = { opensslVersion, opensslHash }: ( + buildECTesterStandalone = { + openssl ? { version = null; hash = null; }, + botan ? { version = null; source_extension = null; hash = null; }, + cryptopp ? { version = null; hash = null; }, + }: ( let - opensslShim = (opensslShimBuilder { version = opensslVersion; hash = opensslHash; }); + opensslShim = (opensslShimBuilder { inherit (openssl) version hash; }); + botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; + cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -201,20 +225,10 @@ in { packages = rec { - default = openssl_331; - openssl_331 = buildECTesterStandalone { - opensslVersion="3.3.1"; opensslHash="sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; - }; - openssl_322 = buildECTesterStandalone { - opensslVersion="3.2.2"; opensslHash="sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc="; - }; - openssl_316 = buildECTesterStandalone { - opensslVersion="3.1.6"; opensslHash="sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc="; - }; - openssl_3014 = buildECTesterStandalone { - opensslVersion="3.0.14"; opensslHash="sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o="; - }; - # openssl_111w = buildECTesterStandalone "1.1.1w" "sha256-zzCYlQy02FOtlcCEHx+cbT3BAtzPys1SHZOSUgi3asg="; + default = openssl.v331; + openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; + botan = pkgs.callPackage ./nix/botan_pkg_versions.nix { inherit buildECTesterStandalone; }; + cryptopp = pkgs.callPackage ./nix/cryptopp_pkg_versions.nix { inherit buildECTesterStandalone; }; }; devShells.default = with pkgs; mkShell rec { nativeBuildInputs = [ @@ -235,7 +249,7 @@ global-platform-pro gradle # libraries to test - (openssl {}) + (opensslBuilder {}) libressl # glibc boringssl @@ -280,8 +294,7 @@ libtomcrypt botan2 cryptopp - # (openssl {}) - (openssl {}) + (opensslBuilder {}) boringssl libgcrypt libgpg-error diff --git a/nix/botan_pkg_versions.nix b/nix/botan_pkg_versions.nix index 90295f1..66b0db5 100644 --- a/nix/botan_pkg_versions.nix +++ b/nix/botan_pkg_versions.nix @@ -1,19 +1,122 @@ { - -v200 = buildECTesterStandalone { - botan = { version="2.0.0"; hash="sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="; }; -}; - -v201 = buildECTesterStandalone { - botan = { version="2.0.1"; hash="sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="; }; -}; - -v210 = buildECTesterStandalone { - botan = { version="2.1.0"; hash="sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="; }; -}; - -v2100 = buildECTesterStandalone { - botan = { version="2.10.0"; hash="sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="; }; -}; - -} + buildECTesterStandalone +}: +{ + v200 = buildECTesterStandalone { + botan = { version="2.0.0"; source_extension="tgz"; hash="sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="; }; + }; + v201 = buildECTesterStandalone { + botan = { version="2.0.1"; source_extension="tgz"; hash="sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="; }; + }; + v210 = buildECTesterStandalone { + botan = { version="2.1.0"; source_extension="tgz"; hash="sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="; }; + }; + v2100 = buildECTesterStandalone { + botan = { version="2.10.0"; source_extension="tgz"; hash="sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="; }; + }; + v2110 = buildECTesterStandalone { + botan = { version="2.11.0"; source_extension="tar.xz"; hash="sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4="; }; + }; + v2120 = buildECTesterStandalone { + botan = { version="2.12.0"; source_extension="tar.xz"; hash="sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM="; }; + }; + v2121 = buildECTesterStandalone { + botan = { version="2.12.1"; source_extension="tar.xz"; hash="sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk="; }; + }; + v2130 = buildECTesterStandalone { + botan = { version="2.13.0"; source_extension="tar.xz"; hash="sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA="; }; + }; + v2140 = buildECTesterStandalone { + botan = { version="2.14.0"; source_extension="tar.xz"; hash="sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU="; }; + }; + v2150 = buildECTesterStandalone { + botan = { version="2.15.0"; source_extension="tar.xz"; hash="sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk="; }; + }; + v2160 = buildECTesterStandalone { + botan = { version="2.16.0"; source_extension="tar.xz"; hash="sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig="; }; + }; + v2170 = buildECTesterStandalone { + botan = { version="2.17.0"; source_extension="tar.xz"; hash="sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M="; }; + }; + v2171 = buildECTesterStandalone { + botan = { version="2.17.1"; source_extension="tar.xz"; hash="sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME="; }; + }; + v2172 = buildECTesterStandalone { + botan = { version="2.17.2"; source_extension="tar.xz"; hash="sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw="; }; + }; + v2173 = buildECTesterStandalone { + botan = { version="2.17.3"; source_extension="tar.xz"; hash="sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g="; }; + }; + v2180 = buildECTesterStandalone { + botan = { version="2.18.0"; source_extension="tar.xz"; hash="sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc="; }; + }; + v2181 = buildECTesterStandalone { + botan = { version="2.18.1"; source_extension="tar.xz"; hash="sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik="; }; + }; + v2182 = buildECTesterStandalone { + botan = { version="2.18.2"; source_extension="tar.xz"; hash="sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4="; }; + }; + v2190 = buildECTesterStandalone { + botan = { version="2.19.0"; source_extension="tar.xz"; hash="sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs="; }; + }; + v2191 = buildECTesterStandalone { + botan = { version="2.19.1"; source_extension="tar.xz"; hash="sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA="; }; + }; + v2192 = buildECTesterStandalone { + botan = { version="2.19.2"; source_extension="tar.xz"; hash="sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU="; }; + }; + v2193 = buildECTesterStandalone { + botan = { version="2.19.3"; source_extension="tar.xz"; hash="sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU="; }; + }; + v2194 = buildECTesterStandalone { + botan = { version="2.19.4"; source_extension="tar.xz"; hash="sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY="; }; + }; + v2195 = buildECTesterStandalone { + botan = { version="2.19.5"; source_extension="tar.xz"; hash="sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ="; }; + }; + v220 = buildECTesterStandalone { + botan = { version="2.2.0"; source_extension="tgz"; hash="sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ="; }; + }; + v230 = buildECTesterStandalone { + botan = { version="2.3.0"; source_extension="tgz"; hash="sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw="; }; + }; + v240 = buildECTesterStandalone { + botan = { version="2.4.0"; source_extension="tgz"; hash="sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU="; }; + }; + v250 = buildECTesterStandalone { + botan = { version="2.5.0"; source_extension="tgz"; hash="sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs="; }; + }; + v260 = buildECTesterStandalone { + botan = { version="2.6.0"; source_extension="tgz"; hash="sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU="; }; + }; + v270 = buildECTesterStandalone { + botan = { version="2.7.0"; source_extension="tgz"; hash="sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA="; }; + }; + v280 = buildECTesterStandalone { + botan = { version="2.8.0"; source_extension="tgz"; hash="sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA="; }; + }; + v290 = buildECTesterStandalone { + botan = { version="2.9.0"; source_extension="tgz"; hash="sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk="; }; + }; + v300 = buildECTesterStandalone { + botan = { version="3.0.0"; source_extension="tar.xz"; hash="sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc="; }; + }; + v310 = buildECTesterStandalone { + botan = { version="3.1.0"; source_extension="tar.xz"; hash="sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4="; }; + }; + v311 = buildECTesterStandalone { + botan = { version="3.1.1"; source_extension="tar.xz"; hash="sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms="; }; + }; + v320 = buildECTesterStandalone { + botan = { version="3.2.0"; source_extension="tar.xz"; hash="sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM="; }; + }; + v330 = buildECTesterStandalone { + botan = { version="3.3.0"; source_extension="tar.xz"; hash="sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk="; }; + }; + v340 = buildECTesterStandalone { + botan = { version="3.4.0"; source_extension="tar.xz"; hash="sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc="; }; + }; + v350 = buildECTesterStandalone { + botan = { version="3.5.0"; source_extension="tar.xz"; hash="sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8="; }; + }; +} \ No newline at end of file diff --git a/nix/botanshim.nix b/nix/botanshim.nix index f6de723..3711d1d 100644 --- a/nix/botanshim.nix +++ b/nix/botanshim.nix @@ -1,7 +1,11 @@ -{ - pkgs +{ + stdenv + , botan2 + , pkg-config + # NOTE change to jdk17? + , jdk11_headless }: -with pkgs; stdenv.mkDerivation { +stdenv.mkDerivation { name = "BotanShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/cryptopp_pkg_versions.nix b/nix/cryptopp_pkg_versions.nix index 3e77a12..781135b 100644 --- a/nix/cryptopp_pkg_versions.nix +++ b/nix/cryptopp_pkg_versions.nix @@ -3,51 +3,51 @@ }: { v890 = buildECTesterStandalone { - cryptopp = { version="8_9_0"; hash="sha256-q1F0ubXGI2WI4VoaoarstmWM2+CVAceYGsjbJ2ok2as="; }; + cryptopp = { version="8_9_0"; hash="sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ="; }; }; v880 = buildECTesterStandalone { - cryptopp = { version="8_8_0"; hash="sha256-+Lj2MlM7J57il2lOZR6SBIJLumAizmbmDr67CLVR/no="; }; + cryptopp = { version="8_8_0"; hash="sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU="; }; }; v870 = buildECTesterStandalone { - cryptopp = { version="8_7_0"; hash="sha256-jWpAZLjp80zT6Dj1oSxABn7nuV7jfZFz7Cc8sJE+fKI="; }; + cryptopp = { version="8_7_0"; hash="sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE="; }; }; v860 = buildECTesterStandalone { - cryptopp = { version="8_6_0"; hash="sha256-kwRiX0dnoT4KXybQ8BnXjPk3VgSjPlORw78ugTmd/rg="; }; + cryptopp = { version="8_6_0"; hash="sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4="; }; }; v850 = buildECTesterStandalone { - cryptopp = { version="8_5_0"; hash="sha256-j2TPCc9PYdXXS8pTV0uMyZWRhswPByouZZfkmZ1q1ds="; }; + cryptopp = { version="8_5_0"; hash="sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y="; }; }; v840 = buildECTesterStandalone { - cryptopp = { version="8_4_0"; hash="sha256-ZoffweM7CErqtIw1qFULI57l9zoJmjtqCRjXC4qJ5lQ="; }; + cryptopp = { version="8_4_0"; hash="sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8="; }; }; v830 = buildECTesterStandalone { - cryptopp = { version="8_3_0"; hash="sha256-YzBMb5Q/Q1pOOFJz4Vq7ac/zuFpEZjFQv1pgabhKvUM="; }; + cryptopp = { version="8_3_0"; hash="sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng="; }; }; v820 = buildECTesterStandalone { - cryptopp = { version="8_2_0"; hash="sha256-47zUimJzmtF5rYBktSM0artTdnvL78Af43MDQSKSND4="; }; + cryptopp = { version="8_2_0"; hash="sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc="; }; }; v810 = buildECTesterStandalone { - cryptopp = { version="8_1_0"; hash="sha256-ik5Hc6ObDAfXzqG4vno/ep0Sa9Osmp8HL4LTpTpHSoc="; }; + cryptopp = { version="8_1_0"; hash="sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI="; }; }; v800 = buildECTesterStandalone { - cryptopp = { version="8_0_0"; hash="sha256-Zei3qwaKkUJ/nrvdFP/uLM/tNN79GQIyXIej6xbvvm0="; }; + cryptopp = { version="8_0_0"; hash="sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w="; }; }; v700 = buildECTesterStandalone { - cryptopp = { version="7_0_0"; hash="sha256-Pul5A4grX1jIi2+dLOUP0QAL6VR5GAx7RoHNP0wcdik="; }; + cryptopp = { version="7_0_0"; hash="sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4="; }; }; v610 = buildECTesterStandalone { - cryptopp = { version="6_1_0"; hash="sha256-ae5x/f+cwNVmNHEnA8jrqXIEv1j+rN/hqU34f6/+/1U="; }; + cryptopp = { version="6_1_0"; hash="sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo="; }; }; v600 = buildECTesterStandalone { - cryptopp = { version="6_0_0"; hash="sha256-7ZUZc65PTVLtzyWIL6UjgUWgCtyB7bnXvkznuap0Qmk="; }; + cryptopp = { version="6_0_0"; hash="sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E="; }; }; v565 = buildECTesterStandalone { - cryptopp = { version="5_6_5"; hash="sha256-ef1VFLOxkaHG2TTNmJ1eBY9HJqcqPa0kRL0SdKaq5oY="; }; + cryptopp = { version="5_6_5"; hash="sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o="; }; }; v564 = buildECTesterStandalone { - cryptopp = { version="5_6_4"; hash="sha256-T6hN4QUOjiBUlyIpMsk6jWtuJvR+rE8RAojtVJAuBdM="; }; + cryptopp = { version="5_6_4"; hash="sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4="; }; }; v563 = buildECTesterStandalone { - cryptopp = { version="5_6_3"; hash="sha256-7ZP5aTEtlWvdlduDIOyVc8OPT+mJYKXFg2k73fDrBlQ="; }; + cryptopp = { version="5_6_3"; hash="sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0="; }; }; } \ No newline at end of file diff --git a/nix/openssl_pkg_versions.nix b/nix/openssl_pkg_versions.nix new file mode 100644 index 0000000..a702e61 --- /dev/null +++ b/nix/openssl_pkg_versions.nix @@ -0,0 +1,65 @@ +{ + buildECTesterStandalone +}: +{ + v331 = buildECTesterStandalone { + openssl = { version="3.3.1"; hash="sha256-Ezvzm40WNayUqEgwQsxEglG3cKDRLHrwwF6old3Zjx0="; }; + }; + v322 = buildECTesterStandalone { + openssl = { version="3.2.2"; hash="sha256-QYFzZZxh7gSRWwtSaV8JHgF6w+ZjePgTT9b4H+CjB6s="; }; + }; + v316 = buildECTesterStandalone { + openssl = { version="3.1.6"; hash="sha256-QrArZza3vMRME4/iAy+K4mwtCyErH9mklYkRrZciPrM="; }; + }; + v3014 = buildECTesterStandalone { + openssl = { version="3.0.14"; hash="sha256-DwwWLusMcv1Zz9t8KsV3pFVtFDvfAJTXCJDSfg6jAh8="; }; + }; + v330 = buildECTesterStandalone { + openssl = { version="3.3.0"; hash="sha256-Gke9xG+sJWoNyO+2lvf3b6X5YEm6G2D97VR4vTFlxtI="; }; + }; + v321 = buildECTesterStandalone { + openssl = { version="3.2.1"; hash="sha256-dcxoA/+skmJcBuo8Z3+zLvINFaG0HsyN3bxrnWotqEw="; }; + }; + v315 = buildECTesterStandalone { + openssl = { version="3.1.5"; hash="sha256-KZ3f0KUGptN95WOG0VzjDTRNkYhN/JirMzC3wAkCmTE="; }; + }; + v3013 = buildECTesterStandalone { + openssl = { version="3.0.13"; hash="sha256-50UE7XA1KV7HBisdoWwVtX/yoDzSBkoo2MOUWMrMRfw="; }; + }; + v320 = buildECTesterStandalone { + openssl = { version="3.2.0"; hash="sha256-qS9tvKl1ZngOyV4ro9SKqNqgkEiqyDksfHxYzJwDx2I="; }; + }; + v314 = buildECTesterStandalone { + openssl = { version="3.1.4"; hash="sha256-cnwwVD/kCugEwZ5tZbB+PlfWRIJtpUtutOveOsQHfZc="; }; + }; + v3012 = buildECTesterStandalone { + openssl = { version="3.0.12"; hash="sha256-mnpzVfPUtz9DtXMM6ANx+dH5eET/yMSwHHI7oGJdaq0="; }; + }; + v313 = buildECTesterStandalone { + openssl = { version="3.1.3"; hash="sha256-+0zy03Hvld8NyiqoXxHgrivbyG95gcv5MM6O/hrKDyg="; }; + }; + v3011 = buildECTesterStandalone { + openssl = { version="3.0.11"; hash="sha256-n6TUFXzWgxk1pUJ5ZxzCDF5U6VlDOOEJy5h5+giV0Qw="; }; + }; + v312 = buildECTesterStandalone { + openssl = { version="3.1.2"; hash="sha256-jHdpkxVGUtC7OT9QbYULgRUXyL2NJLEAiu9X++VdPzE="; }; + }; + v3010 = buildECTesterStandalone { + openssl = { version="3.0.10"; hash="sha256-II8ngfBapaRVxpMOIKXPe5eGoZh7Qlhb4BN/tF4rimQ="; }; + }; + v311 = buildECTesterStandalone { + openssl = { version="3.1.1"; hash="sha256-aLQF6mRSHJhTd3lbW3BdEWwc87+TOE0bvngkf3YBCCI="; }; + }; + v309 = buildECTesterStandalone { + openssl = { version="3.0.9"; hash="sha256-Luwx8qwOEm/2jYEHiR71NBWcT8+wlTZdTNTcV9gmFu4="; }; + }; + v310 = buildECTesterStandalone { + openssl = { version="3.1.0"; hash="sha256-qG6tXD4lm/F1FN7LMLKQ4L86Y2aDFobP+6z3UN9EFSc="; }; + }; + v308 = buildECTesterStandalone { + openssl = { version="3.0.8"; hash="sha256-aTPi8dpvI6UOoibuxukbVD0nfSCYAldjtZMc9qfgmcc="; }; + }; + v307 = buildECTesterStandalone { + openssl = { version="3.0.7"; hash="sha256-6Pc1kIFYRtsobSFZUP3vm4grtriG1QrLQxwChXgv41s="; }; + }; +} \ No newline at end of file -- cgit v1.3.1 From c405d82be596b7b673d96843c1fac9238ce82a9f Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 5 Aug 2024 18:07:34 +0200 Subject: Build various version of libtomcrypt --- flake.nix | 101 ++++++++++++++++------ nix/libtomcrypt-pkgconfig-for-static.patch | 2 - nix/libtomcrypt-pkgconfig-makefile.txt | 5 ++ nix/libtomcrypt-pkgconfig-makefile_include.mk.txt | 2 + nix/libtomcrypt.pc.in | 10 +++ nix/tomcrypt_pkg_versions.nix | 26 ++++++ 6 files changed, 118 insertions(+), 28 deletions(-) create mode 100644 nix/libtomcrypt-pkgconfig-makefile.txt create mode 100644 nix/libtomcrypt-pkgconfig-makefile_include.mk.txt create mode 100644 nix/libtomcrypt.pc.in create mode 100644 nix/tomcrypt_pkg_versions.nix diff --git a/flake.nix b/flake.nix index a421626..e86e660 100644 --- a/flake.nix +++ b/flake.nix @@ -19,6 +19,9 @@ inherit system overlays; }; + # removes the patch/revision from the version. E.g. getMajorMinor "1.2.3" = "1.2" + getMajorMinor = version: builtins.concatStringsSep "." (pkgs.lib.take 2 ( builtins.splitVersion version)); + # Altered upstream packages boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { src = fetchgit { @@ -70,38 +73,71 @@ libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); - libtomcrypt = (pkgs.libtomcrypt.override { libtommath = libtommath; }).overrideAttrs (final: prev: rec { - makefile = "makefile"; - version = "1.18.2"; - src = pkgs.fetchurl { - url = "https://github.com/libtom/libtomcrypt/releases/download/v${version}/crypt-${version}.tar.xz"; - sha256 = "113vfrgapyv72lalhd3nkw7jnks8az0gcb5wqn9hj19nhcxlrbcn"; + libtomcryptBuilder = { tcVersion, tcHash, tmVersion, tmHash }: + (pkgs.libtomcrypt.override { libtommath = libtommathBuilder { version = tmVersion; hash = tmHash; }; }).overrideAttrs (final: prev: + let + preBuilds = { + "1.18" = '' + makeFlagsArray+=(PREFIX=$out \ + CFLAGS="-DUSE_LTM -DLTM_DESC" \ + EXTRALIBS=\"-ltommath\" \ + INSTALL_GROUP=$(id -g) \ + INSTALL_USER=$(id -u)) + ''; + "1.17" = '' + mkdir --parents $out/{lib, include, share/doc/} + + makeFlagsArray+=(PREFIX=$out \ + LIBPATH=$out/lib \ + INCPATH=$out/include \ + DATAPATH=$out/share/doc/libtomcrypt/pdf + CFLAGS_OPTS="-DUSE_LTM -DLTM_DESC" \ + EXTRALIBS=\"-ltommath\" \ + GROUP=$(id -g) \ + USER=$(id -u)) + ''; + # "1.01" = '' + # ''; }; - preBuild = '' - makeFlagsArray+=(PREFIX=$out \ - CFLAGS="-DUSE_LTM -DLTM_DESC" \ - EXTRALIBS=\"-ltommath\" \ - INSTALL_GROUP=$(id -g) \ - INSTALL_USER=$(id -u)) - ''; - patches = ( prev.patches or [] ) ++ [ + preBuild = if tcVersion != null + then if builtins.hasAttr (getMajorMinor tcVersion) preBuilds + then preBuilds."${getMajorMinor tcVersion}" + else preBuilds."1.17" + else preBuilds."1.18"; + in + rec { + makefile = "makefile.unix"; + version = tcVersion; + + src = pkgs.fetchFromGitHub { + owner = "libtom"; + repo = "libtomcrypt"; + rev = "refs/tags/${version}"; + leaveDotGit = true; + hash = tcHash; + }; + + inherit preBuild; + patches = if pkgs.lib.hasPrefix "1.18" version then ( prev.patches or [] ) ++ [ # NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). # This patch copies the necessary code from `makefile.shared`. - ./nix/libtomcrypt-pkgconfig-for-static.patch - ]; + # ./nix/libtomcrypt-pkgconfig-for-static.patch ] + ] else []; }); - libtommath = pkgs.libtommath.overrideAttrs (final: prev: rec { - makefile = "makefile"; - version = "1.3.0"; + + libtommathBuilder = { version, hash }: pkgs.libtommath.overrideAttrs (final: prev: rec { + makefile = "makefile.unix"; + inherit version; + # version = "1.3.0"; src = pkgs.fetchurl { url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; - sha256 = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; + inherit hash; }; - patches = ( prev.patches or [] ) ++ [ - # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). - # This patch copies the necessary code from `makefile.shared`. - ./nix/libtommath-pkgconfig-for-static-build.patch - ]; + # patches = ( prev.patches or [] ) ++ [ + # # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). + # # This patch copies the necessary code from `makefile.shared`. + # ./nix/libtommath-pkgconfig-for-static-build.patch + # ]; }); nettle = pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; @@ -153,7 +189,11 @@ # Shims and libs # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl - tomcryptShim = pkgs.callPackage ./nix/tomcryptshim.nix { inherit pkgs libtomcrypt libtommath; }; + tomcryptShimBuilder = { tcVersion, tcHash, tmVersion, tmHash}: pkgs.callPackage ./nix/tomcryptshim.nix { + inherit pkgs; + libtomcrypt = ( libtomcryptBuilder { inherit tcVersion tcHash tmVersion tmHash; }); + libtommath = ( libtommathBuilder { version = tmVersion; hash = tmHash; }); + }; botanShimBuilder = { version, source_extension, hash }: pkgs.callPackage ./nix/botanshim.nix { botan2 = botan2Builder { inherit version source_extension hash; }; }; cryptoppShimBuilder = { version, hash}: pkgs.callPackage ./nix/cryptoppshim.nix { cryptopp = cryptoppBuilder { inherit version hash; };}; opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (opensslBuilder { version = version; hash = hash;}); }; @@ -167,11 +207,19 @@ commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; buildECTesterStandalone = { + tomcrypt ? { version = null; hash = null; }, + tommath ? { version = null; hash = null; }, openssl ? { version = null; hash = null; }, botan ? { version = null; source_extension = null; hash = null; }, cryptopp ? { version = null; hash = null; }, }: ( let + tomcryptShim = tomcryptShimBuilder { + tcVersion = tomcrypt.version; + tcHash = tomcrypt.hash; + tmVersion = tommath.version; + tmHash = tommath.hash; + }; opensslShim = (opensslShimBuilder { inherit (openssl) version hash; }); botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; @@ -226,6 +274,7 @@ { packages = rec { default = openssl.v331; + tomcrypt = pkgs.callPackage ./nix/tomcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; botan = pkgs.callPackage ./nix/botan_pkg_versions.nix { inherit buildECTesterStandalone; }; cryptopp = pkgs.callPackage ./nix/cryptopp_pkg_versions.nix { inherit buildECTesterStandalone; }; diff --git a/nix/libtomcrypt-pkgconfig-for-static.patch b/nix/libtomcrypt-pkgconfig-for-static.patch index 5db9dbd..441f278 100644 --- a/nix/libtomcrypt-pkgconfig-for-static.patch +++ b/nix/libtomcrypt-pkgconfig-for-static.patch @@ -1,5 +1,3 @@ -# NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). -# This patch copies the necessary code from `makefile.shared`. diff --git a/makefile b/makefile index cd94b86f..ffb65402 100644 --- a/makefile diff --git a/nix/libtomcrypt-pkgconfig-makefile.txt b/nix/libtomcrypt-pkgconfig-makefile.txt new file mode 100644 index 0000000..9f54c85 --- /dev/null +++ b/nix/libtomcrypt-pkgconfig-makefile.txt @@ -0,0 +1,5 @@ + +pkgconfig-patch: + sed -e 's,^prefix=.*,prefix=$(PREFIX),' -e 's,^Version:.*,Version: $(VERSION_PC),' libtomcrypt.pc.in > libtomcrypt.pc + install -p -d $(DESTDIR)$(LIBPATH)/pkgconfig + install -p -m 644 libtomcrypt.pc $(DESTDIR)$(LIBPATH)/pkgconfig/ diff --git a/nix/libtomcrypt-pkgconfig-makefile_include.mk.txt b/nix/libtomcrypt-pkgconfig-makefile_include.mk.txt new file mode 100644 index 0000000..c9b4902 --- /dev/null +++ b/nix/libtomcrypt-pkgconfig-makefile_include.mk.txt @@ -0,0 +1,2 @@ + +VERSION_PC=$(VERSION) diff --git a/nix/libtomcrypt.pc.in b/nix/libtomcrypt.pc.in new file mode 100644 index 0000000..714f060 --- /dev/null +++ b/nix/libtomcrypt.pc.in @@ -0,0 +1,10 @@ +prefix=@to-be-replaced@ +exec_prefix=${prefix} +libdir=${exec_prefix}/lib +includedir=${prefix}/include + +Name: LibTomCrypt +Description: public domain open source cryptographic toolkit +Version: @to-be-replaced@ +Libs: -L${libdir} -ltomcrypt +Cflags: -I${includedir} diff --git a/nix/tomcrypt_pkg_versions.nix b/nix/tomcrypt_pkg_versions.nix new file mode 100644 index 0000000..fcd0883 --- /dev/null +++ b/nix/tomcrypt_pkg_versions.nix @@ -0,0 +1,26 @@ +{ + buildECTesterStandalone +}: +{ + v1182 = buildECTesterStandalone { + tomcrypt = { version = "1.18.2"; hash = "sha256-MEU+u54aXKGSAMPYsh+L9axowzIHiew1uWq8wDsEBmw=";}; + tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + }; + v1181 = buildECTesterStandalone { + tomcrypt = { version = "1.18.1"; hash = "sha256-P00koc4+mAHQ/L5iCuPoiOeI/msZscO5KHZrqmbotRo=";}; + tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + }; + v1180 = buildECTesterStandalone { + tomcrypt = { version = "1.18.0"; hash = "sha256-Y7U+updJI/f3zD6k84DTZDQZh6vhfqR0W8HyizlUZcU=";}; + tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + }; + # v101 = buildECTesterStandalone { + # tomcrypt = { version = "1.01"; hash = "sha256-lVAPxgkAcBivzZmWfqu0sEh8yGo7Ji2hIYwx4/g0GzM=";}; + # tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + # }; + v117 = buildECTesterStandalone { + tomcrypt = { version = "1.17"; hash = "sha256-NWWAs6p27UC64nDL0MwMvzU5aWNe8LZu7DC06d/8isA=";}; + # NOTE: which is the correct version of libtommath for a particular version of libtomcryp? + tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + }; +} -- cgit v1.3.1 From cf3bfc34b4db9902824568fc4d6fb05bf08a2547 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 5 Aug 2024 18:22:49 +0200 Subject: Keep consistent ordering of libs --- flake.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index e86e660..114837c 100644 --- a/flake.nix +++ b/flake.nix @@ -209,9 +209,10 @@ buildECTesterStandalone = { tomcrypt ? { version = null; hash = null; }, tommath ? { version = null; hash = null; }, - openssl ? { version = null; hash = null; }, botan ? { version = null; source_extension = null; hash = null; }, cryptopp ? { version = null; hash = null; }, + openssl ? { version = null; hash = null; }, + boringssl ? { version = null; hash = null; }, }: ( let tomcryptShim = tomcryptShimBuilder { @@ -275,9 +276,10 @@ packages = rec { default = openssl.v331; tomcrypt = pkgs.callPackage ./nix/tomcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; - openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; botan = pkgs.callPackage ./nix/botan_pkg_versions.nix { inherit buildECTesterStandalone; }; cryptopp = pkgs.callPackage ./nix/cryptopp_pkg_versions.nix { inherit buildECTesterStandalone; }; + openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; + boringssl = pkgs.callPackage ./nix/boringssl_pkg_versions.nix { inherit buildECTesterStandalone; }; }; devShells.default = with pkgs; mkShell rec { nativeBuildInputs = [ -- cgit v1.3.1 From 0cbdebaa79c7519c207df1cc93a85ccf5957a02f Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 13:18:49 +0200 Subject: Make default Tomcrypt build properly --- flake.nix | 26 +++++++++++++------------- nix/boringssl_pkg_versions.nix | 24 ++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 13 deletions(-) create mode 100644 nix/boringssl_pkg_versions.nix diff --git a/flake.nix b/flake.nix index 114837c..d44126e 100644 --- a/flake.nix +++ b/flake.nix @@ -107,13 +107,12 @@ in rec { makefile = "makefile.unix"; - version = tcVersion; + version = if tcVersion != null then tcVersion else prev.version; - src = pkgs.fetchFromGitHub { + src = if version == prev.version then prev.src else pkgs.fetchFromGitHub { owner = "libtom"; repo = "libtomcrypt"; - rev = "refs/tags/${version}"; - leaveDotGit = true; + rev = if pkgs.lib.hasPrefix "1.18" version then "refs/tags/v${version}" else "refs/tags/${version}" ; hash = tcHash; }; @@ -121,23 +120,24 @@ patches = if pkgs.lib.hasPrefix "1.18" version then ( prev.patches or [] ) ++ [ # NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). # This patch copies the necessary code from `makefile.shared`. - # ./nix/libtomcrypt-pkgconfig-for-static.patch ] + ./nix/libtomcrypt-pkgconfig-for-static.patch ] else []; }); libtommathBuilder = { version, hash }: pkgs.libtommath.overrideAttrs (final: prev: rec { makefile = "makefile.unix"; - inherit version; - # version = "1.3.0"; + # version = if version != null then version else prev.version; + version = "1.3.0"; src = pkgs.fetchurl { url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; - inherit hash; + # hash = if hash != null then hash else prev.hash; + hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg"; }; - # patches = ( prev.patches or [] ) ++ [ - # # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). - # # This patch copies the necessary code from `makefile.shared`. - # ./nix/libtommath-pkgconfig-for-static-build.patch - # ]; + patches = ( prev.patches or [] ) ++ [ + # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). + # This patch copies the necessary code from `makefile.shared`. + ./nix/libtommath-pkgconfig-for-static-build.patch + ]; }); nettle = pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; diff --git a/nix/boringssl_pkg_versions.nix b/nix/boringssl_pkg_versions.nix new file mode 100644 index 0000000..0c4ab10 --- /dev/null +++ b/nix/boringssl_pkg_versions.nix @@ -0,0 +1,24 @@ +{ + buildECTesterStandalone +}: +{ +# "version_for_cocoapods_10.0", + +# "version_for_cocoapods_9.0", +# "version_for_cocoapods_8.0", +# "version_for_cocoapods_7.0", +# "version_for_cocoapods_6.0", +# "version_for_cocoapods_5.0", +# "version_for_cocoapods_4.0", +# "version_for_cocoapods_3.0", +# "version_for_cocoapods_2.0", +# "version_for_cocoapods_1.0", +# "fips-android-20191020", +# "fips-20220613", +# "fips-20210429", +# "fips-20190808", +# "fips-20180730", + fips-20170615 = buildECTesterStandalone { + boringssl = { rev = "refs/tags/fips-20170615"; hash = ""; }; + }; +} -- cgit v1.3.1 From a5dd212e4c1f300b0769aa16b71da23e08061842 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 13:52:02 +0200 Subject: Build script for fetching releases with Nix --- flake.nix | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/flake.nix b/flake.nix index d44126e..b8bc49d 100644 --- a/flake.nix +++ b/flake.nix @@ -280,6 +280,26 @@ cryptopp = pkgs.callPackage ./nix/cryptopp_pkg_versions.nix { inherit buildECTesterStandalone; }; openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; boringssl = pkgs.callPackage ./nix/boringssl_pkg_versions.nix { inherit buildECTesterStandalone; }; + + fetchReleases = with pkgs.python3Packages; buildPythonApplication { + pname = "fetchReleases"; + version = "0.1.0"; + format = "other"; + + propagatedBuildInputs = [ + jinja2 + requests + beautifulsoup4 + ]; + + src = ./fetchReleases.py; + dontUnpack = true; + installPhase = '' + install -Dm755 $src $out/bin/$pname + ''; + + }; + }; devShells.default = with pkgs; mkShell rec { nativeBuildInputs = [ -- cgit v1.3.1 From 66c239e0ef9e12c705d8004f4b341ee57c610bed Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 13:58:11 +0200 Subject: Start adding some libgcrypt version --- flake.nix | 11 ++- nix/gcrypt_pkg_versions.nix | 180 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 189 insertions(+), 2 deletions(-) create mode 100644 nix/gcrypt_pkg_versions.nix diff --git a/flake.nix b/flake.nix index b8bc49d..b3dc8db 100644 --- a/flake.nix +++ b/flake.nix @@ -67,8 +67,12 @@ }; }); - libgcrypt = pkgs.libgcrypt.overrideAttrs (final: prev: { + libgcryptBuilder = { version, hash }: pkgs.libgcrypt.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; + src = if version == null then prev.src else pkgs.fetchurl { + url = "mirror://gnupg/libgcrypt/${prev.pname}-${version}.tar.bz2"; + inherit hash; + }; }); libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; @@ -198,7 +202,7 @@ cryptoppShimBuilder = { version, hash}: pkgs.callPackage ./nix/cryptoppshim.nix { cryptopp = cryptoppBuilder { inherit version hash; };}; opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (opensslBuilder { version = version; hash = hash;}); }; boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = boringssl; }; - gcryptShim = import ./nix/gcryptshim.nix { inherit pkgs libgcrypt libgpg-error; }; + gcryptShimBuilder = { version, hash}: import ./nix/gcryptshim.nix { inherit pkgs libgpg-error; libgcrypt = libgcryptBuilder { inherit version hash; }; }; mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle gmp; }; @@ -213,6 +217,7 @@ cryptopp ? { version = null; hash = null; }, openssl ? { version = null; hash = null; }, boringssl ? { version = null; hash = null; }, + gcrypt ? { version = null; hash = null; }, }: ( let tomcryptShim = tomcryptShimBuilder { @@ -224,6 +229,7 @@ opensslShim = (opensslShimBuilder { inherit (openssl) version hash; }); botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; + gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -280,6 +286,7 @@ cryptopp = pkgs.callPackage ./nix/cryptopp_pkg_versions.nix { inherit buildECTesterStandalone; }; openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; boringssl = pkgs.callPackage ./nix/boringssl_pkg_versions.nix { inherit buildECTesterStandalone; }; + gcrypt = pkgs.callPackage ./nix/gcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; fetchReleases = with pkgs.python3Packages; buildPythonApplication { pname = "fetchReleases"; diff --git a/nix/gcrypt_pkg_versions.nix b/nix/gcrypt_pkg_versions.nix new file mode 100644 index 0000000..b0be7d7 --- /dev/null +++ b/nix/gcrypt_pkg_versions.nix @@ -0,0 +1,180 @@ +{ + buildECTesterStandalone +}: +{ + v1110 = buildECTesterStandalone { + gcrypt = { version="1.11.0"; hash="sha256-CRIMmGfOfyCB1qqhd1OGuYwvLyRhNXYarkfYH1hoW5w="; }; + }; + v1103 = buildECTesterStandalone { + gcrypt = { version="1.10.3"; hash="sha256-iwhwiXrFrGfe1Wjc+t9Flpz6imvrD9YK8qnq3Coycqo="; }; + }; + v1102 = buildECTesterStandalone { + gcrypt = { version="1.10.2"; hash="sha256-O5wCoAS2jCVq3ZlwHeALODrMzPNxd+DWxYKJZkzODAM="; }; + }; + v1101 = buildECTesterStandalone { + gcrypt = { version="1.10.1"; hash="sha256-7xSuVGsAhM2EJZ9hpV4Ho4w7U6/A9Ua//O8vAbr/6d4="; }; + }; + v1100 = buildECTesterStandalone { + gcrypt = { version="1.10.0"; hash="sha256-agD1wFyqTErMEgxGtjhX2g1P9h3EtLA5M/qNRgE/roE="; }; + }; + v194 = buildECTesterStandalone { + gcrypt = { version="1.9.4"; hash="sha256-6oScg6ckVOPtQmdpfoygM5Cu6XKrQh599p3+QrZcqvc="; }; + }; + v193 = buildECTesterStandalone { + gcrypt = { version="1.9.3"; hash="sha256-l+vk+U4vfjW3UhlM4VoPPGYyTg/2ryZlm7+1/y7DKP0="; }; + }; + v192 = buildECTesterStandalone { + gcrypt = { version="1.9.2"; hash="sha256-ssENCRUTsnHkcXcnRgex/7o9lbGIu/qHl/lIrskFPFo="; }; + }; + v191 = buildECTesterStandalone { + gcrypt = { version="1.9.1"; hash="sha256-xaZ6i5sr03D7QV7R7jHHFy5Wgwdkk89KNnig+98CZdk="; }; + }; + # NOTE Do not use copied from the source https://gnupg.org/ftp/gcrypt/libgcrypt/ + v190_do_not_use = buildECTesterStandalone { + gcrypt = { version="1.9.0"; hash="sha256-TZzKpfmdtZ68tk1z9iglsFzoprf4bRkXhVnvhN4Tgcs="; }; + }; + v1811 = buildECTesterStandalone { + gcrypt = { version="1.8.11"; hash="sha256-yYJJ+1ux9gF/X5v0hDJ6lAtZB1vKfEb6aeu1QJgkmGA="; }; + }; + v1810 = buildECTesterStandalone { + gcrypt = { version="1.8.10"; hash="sha256-aJaRVQH5UeI9AtywRTRpwswiqk13oAH/c6JkfC0p590="; }; + }; + v189 = buildECTesterStandalone { + gcrypt = { version="1.8.9"; hash="sha256-K9pHkKpfCJXTQHz3v2vXcn/ZkvJaRaY9kv7xB2f6N2k="; }; + }; + v188 = buildECTesterStandalone { + gcrypt = { version="1.8.8"; hash="sha256-iV3iu5gd0Sfwgh0c4T+t99dg+fp3N2SLFfLB/hPMWvU="; }; + }; + v187 = buildECTesterStandalone { + gcrypt = { version="1.8.7"; hash="sha256-A7cPAoKZVhtwNLiWbX3XfvFu0TnENECSX+h4JWGXR0g="; }; + }; + v186 = buildECTesterStandalone { + gcrypt = { version="1.8.6"; hash="sha256-DLonAGF7mfwzhkoMFrH6f9+XgdntNQn112cXjl/XuXU="; }; + }; + v185 = buildECTesterStandalone { + gcrypt = { version="1.8.5"; hash="sha256-O0oqlMtjfv9b3rvK9G9NlcTyUgb0WYCTOc2toOtXesM="; }; + }; + v184 = buildECTesterStandalone { + gcrypt = { version="1.8.4"; hash="sha256-9jgUOgZyYo/eDK10XpsU3rhd/7F1cJyswfT+JLk/Iic="; }; + }; + v183 = buildECTesterStandalone { + gcrypt = { version="1.8.3"; hash="sha256-ZuyQvgNnR2AvK0j5gxI2GpGAyXxoppCl83b6D2fQr3w="; }; + }; + v182 = buildECTesterStandalone { + gcrypt = { version="1.8.2"; hash="sha256-yAZMrnVYFEsT7w64cJNBI4DvoWxO4wrRLstUiGpSTAc="; }; + }; + v181 = buildECTesterStandalone { + gcrypt = { version="1.8.1"; hash="sha256-eih1+LGuAwFzLoeMDMoslmT/Ce9xQI8IXFDjMmVqeLM="; }; + }; + v180 = buildECTesterStandalone { + gcrypt = { version="1.8.0"; hash="sha256-I+SWl7h8xBc7A7R1fI30MU4xSQWPoYvcT4IJjxA9iRs="; }; + }; + v1710 = buildECTesterStandalone { + gcrypt = { version="1.7.10"; hash="sha256-ifBaQj3WaiXls4MICX4jhuZA0c+DUWDRmlx1NQBx2Uw="; }; + }; + v179 = buildECTesterStandalone { + gcrypt = { version="1.7.9"; hash="sha256-v+m7cDwRJsNkfaKBD9IwOcLwnUaWn3FhLCBl3D+pNzs="; }; + }; + v178 = buildECTesterStandalone { + gcrypt = { version="1.7.8"; hash="sha256-lIJ26kfmugJE82oXtR3N1Sz9HmZLChrDvIITT7bOwZk="; }; + }; + v177 = buildECTesterStandalone { + gcrypt = { version="1.7.7"; hash="sha256-ubheugeT6j5uZriW6wMfoF4aRRcnfMmrEIFrNZJUzZo="; }; + }; + v176 = buildECTesterStandalone { + gcrypt = { version="1.7.6"; hash="sha256-Ymqv7oSvnSziU9LBQ9wcCQLdoEV4DMJB85lw/GC+Bbw="; }; + }; + v175 = buildECTesterStandalone { + gcrypt = { version="1.7.5"; hash="sha256-0f6kEovu8rswpHCva6+rzMUDztNQU0+53Y9aU/+66AA="; }; + }; + v174 = buildECTesterStandalone { + gcrypt = { version="1.7.4"; hash="sha256-O2eGLi9HEeJcTOPMS0jVKlijr9zR2Malf5OhwO8D5cY="; }; + }; + v173 = buildECTesterStandalone { + gcrypt = { version="1.7.3"; hash="sha256-3axhEQd9ChYSJHWHviOMUpTdDuTXbce6eDzFX7AzcHE="; }; + }; + v172 = buildECTesterStandalone { + gcrypt = { version="1.7.2"; hash="sha256-PTXfkG1uqzVFBMBddJqbAhlEyyn/X2XI75w91fe2aJ8="; }; + }; + v171 = buildECTesterStandalone { + gcrypt = { version="1.7.1"; hash="sha256-RQ2c/L8WEcZNvjvQS2J7gzee+J8RQG2UyLujBeNtepU="; }; + }; + v170 = buildECTesterStandalone { + gcrypt = { version="1.7.0"; hash="sha256-sOZ+p0R0k5kTxNnZ70717DeO++K+vjY4ne4xnHm/+pI="; }; + }; + v166 = buildECTesterStandalone { + gcrypt = { version="1.6.6"; hash="sha256-+UYbRhm7eLJzqI1GiRV1DUGOiaPqO2QbqwVjqa9LBNA="; }; + }; + v165 = buildECTesterStandalone { + gcrypt = { version="1.6.5"; hash="sha256-9J68WELUVa5wGd7zPrWgFKDweiqDU9w6pQp2/R2vqSQ="; }; + }; + v164 = buildECTesterStandalone { + gcrypt = { version="1.6.4"; hash="sha256-ybwsf+Ll9OoTsMdPnSS8uxrYibs5KX2Agq6/I/QzYCY="; }; + }; + v163 = buildECTesterStandalone { + gcrypt = { version="1.6.3"; hash="sha256-QbSRe5OuNMag4hJzeNek1m2AWiqGoJkR1Pm9hx23Al8="; }; + }; + v162 = buildECTesterStandalone { + gcrypt = { version="1.6.2"; hash="sha256-3ghEkqazjNsntn6vdJzrp2v3Ap9jqcDDwbBciMmIXEw="; }; + }; + v161 = buildECTesterStandalone { + gcrypt = { version="1.6.1"; hash="sha256-ocPv6mn4/+dp9IizAM4ZDu6www3iSlPxwbbkIC/cIHA="; }; + }; + v160 = buildECTesterStandalone { + gcrypt = { version="1.6.0"; hash="sha256-Zi1QhgCtlMwzTmZbcBYTf+7fzKUiaZjGXd1Wvfyilwg="; }; + }; + v156 = buildECTesterStandalone { + gcrypt = { version="1.5.6"; hash="sha256-MBgmteUhyGcFb9Ywqtbwpg4XbRigF9prwksWld86vnk="; }; + }; + v155 = buildECTesterStandalone { + gcrypt = { version="1.5.5"; hash="sha256-2JWCA+eGvKR5zXyQOQaSXop+AzzLlZv1Mxe1fPEaBlU="; }; + }; + v154 = buildECTesterStandalone { + gcrypt = { version="1.5.4"; hash="sha256-1fiNn0GkaVPcJQzbhXUSmzfuIghAG3+jOMiX9mfH+zM="; }; + }; + v153 = buildECTesterStandalone { + gcrypt = { version="1.5.3"; hash="sha256-vPUzTn2jUsRd5q7F0ghM6aHTACn/SkpdoT8YSIdHWdE="; }; + }; + v152 = buildECTesterStandalone { + gcrypt = { version="1.5.2"; hash="sha256-5BpDOfUClPPJJfL3Gq8kJ+sWLSmU2pFmbfwyYhr+lj8="; }; + }; + v151 = buildECTesterStandalone { + gcrypt = { version="1.5.1"; hash="sha256-rZ6xWAjnaZmMC9jBgayIFCORn08QVYaRPcy8Dfv65Sc="; }; + }; + v150 = buildECTesterStandalone { + gcrypt = { version="1.5.0"; hash="sha256-S2L8UWAElAoFcQJUAaBYHUkZnxp237XOb9Y/UNuBc/o="; }; + }; + v146 = buildECTesterStandalone { + gcrypt = { version="1.4.6"; hash="sha256-Pksw2ms1e1ZTM9AiITO2SgQUvpm6cnMwgRZcjqm8a4U="; }; + }; + v145 = buildECTesterStandalone { + gcrypt = { version="1.4.5"; hash="sha256-SW+QfFMk3nU2fsYcY7/u0TCe8LxkhF3CCzWXcxq9nkA="; }; + }; + v144 = buildECTesterStandalone { + gcrypt = { version="1.4.4"; hash="sha256-MhK4gIDPj6AGFk04/Bdvr6XClZHIOE8oSriA2w2/MG8="; }; + }; + v143 = buildECTesterStandalone { + gcrypt = { version="1.4.3"; hash="sha256-iMgZvZ8B19SBiJjhM6USBE54w0MHqmBrapTuznwLIws="; }; + }; + v142 = buildECTesterStandalone { + gcrypt = { version="1.4.2"; hash="sha256-unQUhG9/O6IrIs842hug6dXCJjixxArAh85RZJgRUsM="; }; + }; + v141 = buildECTesterStandalone { + gcrypt = { version="1.4.1"; hash="sha256-/jsyvfDJLWs7t7Pks8Gaaomanetl8bNvCliC0wjJH6M="; }; + }; + v140 = buildECTesterStandalone { + gcrypt = { version="1.4.0"; hash="sha256-1/hV92aUSltuf/7i1v/fgoq3CazURTsOZK6oCM4nYOw="; }; + }; + v124 = buildECTesterStandalone { + gcrypt = { version="1.2.4"; hash="sha256-fWFVxNCkD7o9ug8hqVnHhIxzS6ZzTejifuomrlPAyIA="; }; + }; + v123 = buildECTesterStandalone { + gcrypt = { version="1.2.3"; hash="sha256-6OKRFjlRFIIHWAeSWILQBlYRPDHgqJAV1ITcFsbYD7Q="; }; + }; + v122 = buildECTesterStandalone { + gcrypt = { version="1.2.2"; hash="sha256-espQrfRId1XGHAWQ1286k1Lie9s908DcDP+Py0Eq5iQ="; }; + }; + v121 = buildECTesterStandalone { + gcrypt = { version="1.2.1"; hash="sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I="; }; + }; +} -- cgit v1.3.1 From b5b4f69fb751b9b781dd2c46fa1a4091676b80cc Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 14:16:26 +0200 Subject: Add libgcrypt version fetcher --- fetchReleases.py | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/fetchReleases.py b/fetchReleases.py index b462e1e..cca8f9b 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -119,6 +119,47 @@ def fetch_openssl(): with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) +def fetch_tomcrypt(): + # fetch libtomcrypt + pass + +def fetch_gcrypt(): + + pkg = "gcrypt" + release_list = "https://gnupg.org/ftp/gcrypt/libgcrypt/" + download_url = "https://gnupg.org/ftp/gcrypt/libgcrypt/{version}" + resp = requests.get(release_list) + soup = BeautifulSoup(resp.content, 'html.parser') + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; + };""") + + renders = [] + for link in soup.find_all("a"): + if link.text.startswith("libgcrypt") and link.text.endswith("tar.bz2"): + download_link = download_url.format(version=link['href']) + + match = re.match(r"libgcrypt-(?P\d+)\.(?P\d+)\.(?P\d+)(?P_do_not_use)?\.(?P.*)", link.text) + version = f"{match['major']}.{match['minor']}.{match['patch']}" + print(version) + + digest = get_source_hash(download_link) + print(digest) + + flat_version = f"v{match['major']}{match['minor']}{match['patch']}" + if match['dont']: + flat_version += "_do_not_use" + + + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open("./nix/gcrypt_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + + @@ -134,6 +175,8 @@ def main(): fetch_cryptopp() case "openssl": fetch_openssl() + case "gcrypt": + fetch_gcrypt() if __name__ == '__main__': -- cgit v1.3.1 From 805df74b6308bc8c9db80bfc24391072db7adfc3 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 14:39:53 +0200 Subject: Allow testing against various versions of MbedTLS --- fetchReleases.py | 34 ++++++++++++++++ flake.nix | 17 +++++++- nix/mbedtls_pkg_versions.nix | 95 ++++++++++++++++++++++++++++++++++++++++++++ nix/mbedtlsshim.nix | 1 + 4 files changed, 146 insertions(+), 1 deletion(-) create mode 100644 nix/mbedtls_pkg_versions.nix diff --git a/fetchReleases.py b/fetchReleases.py index cca8f9b..0945c43 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -162,12 +162,42 @@ def fetch_gcrypt(): +def fetch_mbedtls(): + # Mbed-TLS/mbedtls + pkg = "mbedtls" + owner = "Mbed-TLS" + repo = "mbedtls" + release_url = f"https://api.github.com/repos/{owner}/{repo}/releases" + resp = requests.get(release_url) + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; + };""") + renders = [] + for release in resp.json(): + if not release['draft'] and not release['prerelease']: + version = release['tag_name'] + print(version) + flat_version = version.replace('.', '') + download_url = f"https://github.com/{owner}/{repo}/archive/{version}.tar.gz" + digest = get_source_hash(download_url, unpack=True) + + + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + def main(): parser = argparse.ArgumentParser() parser.add_argument("lib") args = parser.parse_args() + print(f"Fetching versions and source hashes for: {args.lib}") + match args.lib: case "botan": fetch_botan() @@ -177,6 +207,10 @@ def main(): fetch_openssl() case "gcrypt": fetch_gcrypt() + case "mbedtls": + fetch_mbedtls() + case _: + print("Unknown library") if __name__ == '__main__': diff --git a/flake.nix b/flake.nix index b3dc8db..36d4e89 100644 --- a/flake.nix +++ b/flake.nix @@ -77,6 +77,18 @@ libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; }); + + mbedtlsBuilder = { version, hash}: pkgs.mbedtls.overrideAttrs (final: prev: { + src = if version == null then prev.src else pkgs.fetchFromGitHub { + owner = "Mbed-TLS"; + repo = "mbedtls"; + rev = "mbedtls-${version}"; + inherit hash; + # mbedtls >= 3.6.0 uses git submodules + fetchSubmodules = true; + }; + }); + libtomcryptBuilder = { tcVersion, tcHash, tmVersion, tmHash }: (pkgs.libtomcrypt.override { libtommath = libtommathBuilder { version = tmVersion; hash = tmHash; }; }).overrideAttrs (final: prev: let @@ -203,7 +215,7 @@ opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (opensslBuilder { version = version; hash = hash;}); }; boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = boringssl; }; gcryptShimBuilder = { version, hash}: import ./nix/gcryptshim.nix { inherit pkgs libgpg-error; libgcrypt = libgcryptBuilder { inherit version hash; }; }; - mbedtlsShim = import ./nix/mbedtlsshim.nix { pkgs = pkgs; }; + mbedtlsShimBuilder = { version, hash }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = ( mbedtlsBuilder { inherit version hash; }); }; ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle gmp; }; libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; @@ -218,6 +230,7 @@ openssl ? { version = null; hash = null; }, boringssl ? { version = null; hash = null; }, gcrypt ? { version = null; hash = null; }, + mbedtls ? { version = null; hash = null; }, }: ( let tomcryptShim = tomcryptShimBuilder { @@ -230,6 +243,7 @@ botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; + mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -287,6 +301,7 @@ openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; boringssl = pkgs.callPackage ./nix/boringssl_pkg_versions.nix { inherit buildECTesterStandalone; }; gcrypt = pkgs.callPackage ./nix/gcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; + mbedtls = pkgs.callPackage ./nix/mbedtls_pkg_versions.nix { inherit buildECTesterStandalone; }; fetchReleases = with pkgs.python3Packages; buildPythonApplication { pname = "fetchReleases"; diff --git a/nix/mbedtls_pkg_versions.nix b/nix/mbedtls_pkg_versions.nix new file mode 100644 index 0000000..e429a4a --- /dev/null +++ b/nix/mbedtls_pkg_versions.nix @@ -0,0 +1,95 @@ +{ + buildECTesterStandalone +}: +{ + v360 = buildECTesterStandalone { + mbedtls = { version="v3.6.0"; hash="sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg="; }; + }; + v2288 = buildECTesterStandalone { + mbedtls = { version="v2.28.8"; hash="sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o="; }; + }; + v352 = buildECTesterStandalone { + mbedtls = { version="v3.5.2"; hash="sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM="; }; + }; + v2287 = buildECTesterStandalone { + mbedtls = { version="v2.28.7"; hash="sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw="; }; + }; + v351 = buildECTesterStandalone { + mbedtls = { version="v3.5.1"; hash="sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw="; }; + }; + v2286 = buildECTesterStandalone { + mbedtls = { version="v2.28.6"; hash="sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8="; }; + }; + mbedtls-350 = buildECTesterStandalone { + mbedtls = { version="mbedtls-3.5.0"; hash="sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU="; }; + }; + mbedtls-2285 = buildECTesterStandalone { + mbedtls = { version="mbedtls-2.28.5"; hash="sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o="; }; + }; + v341 = buildECTesterStandalone { + mbedtls = { version="v3.4.1"; hash="sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts="; }; + }; + v2284 = buildECTesterStandalone { + mbedtls = { version="v2.28.4"; hash="sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE="; }; + }; + v340 = buildECTesterStandalone { + mbedtls = { version="v3.4.0"; hash="sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg="; }; + }; + v2283 = buildECTesterStandalone { + mbedtls = { version="v2.28.3"; hash="sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw="; }; + }; + v330 = buildECTesterStandalone { + mbedtls = { version="v3.3.0"; hash="sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE="; }; + }; + v2282 = buildECTesterStandalone { + mbedtls = { version="v2.28.2"; hash="sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ="; }; + }; + v321 = buildECTesterStandalone { + mbedtls = { version="v3.2.1"; hash="sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc="; }; + }; + v320 = buildECTesterStandalone { + mbedtls = { version="v3.2.0"; hash="sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ="; }; + }; + v2281 = buildECTesterStandalone { + mbedtls = { version="v2.28.1"; hash="sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw="; }; + }; + v310 = buildECTesterStandalone { + mbedtls = { version="v3.1.0"; hash="sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs="; }; + }; + v2280 = buildECTesterStandalone { + mbedtls = { version="v2.28.0"; hash="sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g="; }; + }; + v21612 = buildECTesterStandalone { + mbedtls = { version="v2.16.12"; hash="sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q="; }; + }; + v300 = buildECTesterStandalone { + mbedtls = { version="v3.0.0"; hash="sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s="; }; + }; + v2270 = buildECTesterStandalone { + mbedtls = { version="v2.27.0"; hash="sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M="; }; + }; + v21611 = buildECTesterStandalone { + mbedtls = { version="v2.16.11"; hash="sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg="; }; + }; + v2260 = buildECTesterStandalone { + mbedtls = { version="v2.26.0"; hash="sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk="; }; + }; + v21610 = buildECTesterStandalone { + mbedtls = { version="v2.16.10"; hash="sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4="; }; + }; + v2719 = buildECTesterStandalone { + mbedtls = { version="v2.7.19"; hash="sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY="; }; + }; + v2250 = buildECTesterStandalone { + mbedtls = { version="v2.25.0"; hash="sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ="; }; + }; + v2169 = buildECTesterStandalone { + mbedtls = { version="v2.16.9"; hash="sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c="; }; + }; + v2718 = buildECTesterStandalone { + mbedtls = { version="v2.7.18"; hash="sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg="; }; + }; + v2240 = buildECTesterStandalone { + mbedtls = { version="v2.24.0"; hash="sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM="; }; + }; +} diff --git a/nix/mbedtlsshim.nix b/nix/mbedtlsshim.nix index 2dff2f0..cbb850c 100644 --- a/nix/mbedtlsshim.nix +++ b/nix/mbedtlsshim.nix @@ -1,5 +1,6 @@ { pkgs + , mbedtls }: with pkgs; stdenv.mkDerivation rec { name = "MbedTLSShim"; -- cgit v1.3.1 From 2ee39e74d80fe0812c6436b359a7a73ea4e30cc2 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 15:17:19 +0200 Subject: Build various version of IPP Crypto --- fetchReleases.py | 30 ++++++++++++++++++ flake.nix | 14 ++++++++- nix/ippcp_pkg_versions.nix | 77 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 120 insertions(+), 1 deletion(-) create mode 100644 nix/ippcp_pkg_versions.nix diff --git a/fetchReleases.py b/fetchReleases.py index 0945c43..4d4c0c7 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -183,6 +183,34 @@ def fetch_mbedtls(): digest = get_source_hash(download_url, unpack=True) + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + +def fetch_ippcp(): + # https://api.github.com/repos/intel/ipp-crypto/releases + pkg = "ippcp" + owner = "intel" + repo = "ipp-crypto" + release_url = f"https://api.github.com/repos/{owner}/{repo}/releases" + resp = requests.get(release_url) + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; + };""") + renders = [] + for release in resp.json(): + if not release['draft'] and not release['prerelease']: + version = release['tag_name'].split('_')[1] + print(version) + flat_version = "v" + version.replace('.', '_') + download_url = f"https://github.com/{owner}/{repo}/archive/{release['tag_name']}.tar.gz" + digest = get_source_hash(download_url, unpack=True) + + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() renders.append(rendered) @@ -209,6 +237,8 @@ def main(): fetch_gcrypt() case "mbedtls": fetch_mbedtls() + case "ippcp": + fetch_ippcp() case _: print("Unknown library") diff --git a/flake.nix b/flake.nix index 36d4e89..efdf307 100644 --- a/flake.nix +++ b/flake.nix @@ -89,6 +89,15 @@ }; }); + ipp-cryptoBuilder = { version, hash }: customPkgs.ipp-crypto.overrideAttrs (final: prev: { + src = if version == null then prev.src else pkgs.fetchFromGitHub { + owner = "intel"; + repo = "ipp-crypto"; + rev = "ippcp_${version}"; + inherit hash; + }; + }); + libtomcryptBuilder = { tcVersion, tcHash, tmVersion, tmHash }: (pkgs.libtomcrypt.override { libtommath = libtommathBuilder { version = tmVersion; hash = tmHash; }; }).overrideAttrs (final: prev: let @@ -216,7 +225,7 @@ boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = boringssl; }; gcryptShimBuilder = { version, hash}: import ./nix/gcryptshim.nix { inherit pkgs libgpg-error; libgcrypt = libgcryptBuilder { inherit version hash; }; }; mbedtlsShimBuilder = { version, hash }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = ( mbedtlsBuilder { inherit version hash; }); }; - ippcpShim = import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = customPkgs.ipp-crypto; }; + ippcpShimBuilder = { version, hash }: import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = ( ipp-cryptoBuilder { inherit version hash; }); }; nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle gmp; }; libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; @@ -231,6 +240,7 @@ boringssl ? { version = null; hash = null; }, gcrypt ? { version = null; hash = null; }, mbedtls ? { version = null; hash = null; }, + ippcp ? { version = null; hash = null; }, }: ( let tomcryptShim = tomcryptShimBuilder { @@ -244,6 +254,7 @@ cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; + ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -302,6 +313,7 @@ boringssl = pkgs.callPackage ./nix/boringssl_pkg_versions.nix { inherit buildECTesterStandalone; }; gcrypt = pkgs.callPackage ./nix/gcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; mbedtls = pkgs.callPackage ./nix/mbedtls_pkg_versions.nix { inherit buildECTesterStandalone; }; + ippcp = pkgs.callPackage ./nix/ippcp_pkg_versions.nix { inherit buildECTesterStandalone; }; fetchReleases = with pkgs.python3Packages; buildPythonApplication { pname = "fetchReleases"; diff --git a/nix/ippcp_pkg_versions.nix b/nix/ippcp_pkg_versions.nix new file mode 100644 index 0000000..ac97208 --- /dev/null +++ b/nix/ippcp_pkg_versions.nix @@ -0,0 +1,77 @@ +{ + buildECTesterStandalone +}: +{ + v2021_12_1 = buildECTesterStandalone { + ippcp = { version="2021.12.1"; hash="sha256-voxjx9Np/8jy9XS6EvUK4aW18/DGQGaPpTKm9RzuCU8="; }; + }; + v2021_12_0 = buildECTesterStandalone { + ippcp = { version="2021.12.0"; hash="sha256-FeCfiXwOUM3cL4Ah3IjLa/2SKo9WHTZFUfg/w8WTNcc="; }; + }; + v2021_11_1 = buildECTesterStandalone { + ippcp = { version="2021.11.1"; hash="sha256-OgNrrPE8jFVD/hcv7A43Bno96r4Z/lb7/SE6TEL7RDI="; }; + }; + v2021_11_0 = buildECTesterStandalone { + ippcp = { version="2021.11.0"; hash="sha256-MVhiKEJxYa1HaicPbkzrAlZxFqIEP7eDLusC/T52gXI="; }; + }; + v2021_10_0 = buildECTesterStandalone { + ippcp = { version="2021.10.0"; hash="sha256-DfXsJ+4XqyjCD+79LUD53Cx8D46o1a4fAZa2UxGI1Xg="; }; + }; + v2021_9_0 = buildECTesterStandalone { + ippcp = { version="2021.9.0"; hash="sha256-+ITnxyrkDQp4xRa+PVzXdYsSkI5sMNwQGfGU+lFJ6co="; }; + }; + v2021_8 = buildECTesterStandalone { + ippcp = { version="2021.8"; hash="sha256-Iz1Pql+cf2DdPe7KoNpxQ7H76SFwWkUbtL4bJxr7D4w="; }; + }; + v2021_7_1 = buildECTesterStandalone { + ippcp = { version="2021.7.1"; hash="sha256-iyg4ja7tsbpng7XOZwISri+x8knwEeyh/aP9ldhQY60="; }; + }; + v2021_7 = buildECTesterStandalone { + ippcp = { version="2021.7"; hash="sha256-3W0LlJgmrp2Rk7xQ+0GQfkF2UpH4htx9R7IL86smtnY="; }; + }; + v2021_6 = buildECTesterStandalone { + ippcp = { version="2021.6"; hash="sha256-lr6oiJTaTQhTrxhdY5dTfOrl/ZBwOYbuyuNU3tJbEe0="; }; + }; + v2021_5 = buildECTesterStandalone { + ippcp = { version="2021.5"; hash="sha256-xc44XvGz9KnbLKKMmSJQ2Eq8IhEFVb0tYIWVW4oJRuo="; }; + }; + v2021_4 = buildECTesterStandalone { + ippcp = { version="2021.4"; hash="sha256-SyRY3BoHY7zQIFA6j0U0W0oD5PZhp3vsvFQVBw4/AXY="; }; + }; + v2021_3 = buildECTesterStandalone { + ippcp = { version="2021.3"; hash="sha256-QEJXvQ//zhQqibFxXwPMdS1MHewgyb24LRmkycVSGrM="; }; + }; + v2021_2 = buildECTesterStandalone { + ippcp = { version="2021.2"; hash="sha256-8I3y//LK5TcyC71fdX1biF588rdK2AplO6eh9GUHx9U="; }; + }; + v2020u3 = buildECTesterStandalone { + ippcp = { version="2020u3"; hash="sha256-i/iPOSTKR02pHzxBRn3odZJ+6SzGtS+pCG1BWo1qdAs="; }; + }; + v2020u2 = buildECTesterStandalone { + ippcp = { version="2020u2"; hash="sha256-cn76ju41RdEJxH9SmF75Z38V3e9vnLXGdyjh4hISpr8="; }; + }; + v2020u1 = buildECTesterStandalone { + ippcp = { version="2020u1"; hash="sha256-4h5Zrx4hvsvZkXpHu0ZXJftoLFms34PstTRN0gHCXrM="; }; + }; + v2020 = buildECTesterStandalone { + ippcp = { version="2020"; hash="sha256-k4CuLLtNX+wrEGRgoIP9e0wp42U1VRF96nhDE8qNkMk="; }; + }; + v2019u4 = buildECTesterStandalone { + ippcp = { version="2019u4"; hash="sha256-Xi3I0frlR/OjX4IRJyBuFcSkrCaxL9ABRZ1w8FUAseg="; }; + }; + v2019u3 = buildECTesterStandalone { + ippcp = { version="2019u3"; hash="sha256-8sdPlRNfdjMkc061e6EFpJMMA1QKK5/SpKlMV2E5TH4="; }; + }; + v2019u2 = buildECTesterStandalone { + ippcp = { version="2019u2"; hash="sha256-WoiO1pXA6UTRdKCcn9ckMk4/6IvbQAK4k7d8P3rGbqc="; }; + }; + v2019u1 = buildECTesterStandalone { + ippcp = { version="2019u1"; hash="sha256-2KcZz+7NrhbvRVLXtdME73uMBrhw+4q0ajiXeWwZdJs="; }; + }; + v2019 = buildECTesterStandalone { + ippcp = { version="2019"; hash="sha256-iTupt9pRN+6ze3Hf/dmtve9u15iVL0g2kujUpyGgums="; }; + }; + v2019b = buildECTesterStandalone { + ippcp = { version="2019b"; hash="sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8="; }; + }; +} \ No newline at end of file -- cgit v1.3.1 From 92393806db443a408fa78cf2753a4b88462e10d3 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 17:12:23 +0200 Subject: Build various version of Nettle --- fetchReleases.py | 35 +++++++++++++++++ flake.nix | 11 +++++- nix/nettle_pkg_versions.nix | 95 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 139 insertions(+), 2 deletions(-) create mode 100644 nix/nettle_pkg_versions.nix diff --git a/fetchReleases.py b/fetchReleases.py index 4d4c0c7..a0783df 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -218,6 +218,39 @@ def fetch_ippcp(): with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) +def fetch_nettle(): + # https://api.github.com/repos/intel/ipp-crypto/releases + pkg = "nettle" + owner = "gnutls" + repo = "nettle" + release_url = f"https://api.github.com/repos/{owner}/{repo}/tags" + resp = requests.get(release_url) + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; tag="{{ tag }}"; hash="{{ digest }}"; }; + };""") + renders = [] + for tag in resp.json(): + if tag['name'] == 'release_nettle_0.2.20010617': + continue + version = tag['name'].split('_')[1] + # NOTE skip release candidates + if re.search(r'\drc\d', version): + continue + flat_version = "v" + version.replace('.', '_') + # download_url = f"https://github.com/{owner}/{repo}/archive/{tag['name']}.tar.gz" + download_url = f"mirror://gnu/nettle/nettle-{version}.tar.gz" + print(download_url) + digest = get_source_hash(download_url, unpack=False) + + rendered = single_version_template.render( + pkg=pkg, digest=digest, flat_version=flat_version, tag=tag['name'], version=version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + def main(): parser = argparse.ArgumentParser() @@ -239,6 +272,8 @@ def main(): fetch_mbedtls() case "ippcp": fetch_ippcp() + case "nettle": + fetch_nettle() case _: print("Unknown library") diff --git a/flake.nix b/flake.nix index efdf307..68a4630 100644 --- a/flake.nix +++ b/flake.nix @@ -164,8 +164,12 @@ ./nix/libtommath-pkgconfig-for-static-build.patch ]; }); - nettle = pkgs.nettle.overrideAttrs (final: prev: { + nettleBuilder = { version, tag, hash }: pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; + src = if version == null then prev.version else pkgs.fetchurl { + url = "mirror://gnu/nettle/nettle-${version}.tar.gz"; + inherit hash; + }; }); cryptoppBuilder = { version, hash }: (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs (final: prev: { src = if version == null then prev.src else @@ -226,7 +230,7 @@ gcryptShimBuilder = { version, hash}: import ./nix/gcryptshim.nix { inherit pkgs libgpg-error; libgcrypt = libgcryptBuilder { inherit version hash; }; }; mbedtlsShimBuilder = { version, hash }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = ( mbedtlsBuilder { inherit version hash; }); }; ippcpShimBuilder = { version, hash }: import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = ( ipp-cryptoBuilder { inherit version hash; }); }; - nettleShim = import ./nix/nettleshim.nix { inherit pkgs nettle gmp; }; + nettleShimBuilder = { version, tag, hash }: import ./nix/nettleshim.nix { inherit pkgs gmp; nettle = ( nettleBuilder { inherit version tag hash; }); }; libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; @@ -241,6 +245,7 @@ gcrypt ? { version = null; hash = null; }, mbedtls ? { version = null; hash = null; }, ippcp ? { version = null; hash = null; }, + nettle ? { version = null; tag = null; hash = null; }, }: ( let tomcryptShim = tomcryptShimBuilder { @@ -255,6 +260,7 @@ gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; + nettleShim = nettleShimBuilder { inherit (nettle) version tag hash; }; in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -314,6 +320,7 @@ gcrypt = pkgs.callPackage ./nix/gcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; mbedtls = pkgs.callPackage ./nix/mbedtls_pkg_versions.nix { inherit buildECTesterStandalone; }; ippcp = pkgs.callPackage ./nix/ippcp_pkg_versions.nix { inherit buildECTesterStandalone; }; + nettle = pkgs.callPackage ./nix/nettle_pkg_versions.nix { inherit buildECTesterStandalone; }; fetchReleases = with pkgs.python3Packages; buildPythonApplication { pname = "fetchReleases"; diff --git a/nix/nettle_pkg_versions.nix b/nix/nettle_pkg_versions.nix new file mode 100644 index 0000000..9316040 --- /dev/null +++ b/nix/nettle_pkg_versions.nix @@ -0,0 +1,95 @@ +{ + buildECTesterStandalone +}: +{ + vnettle_0_2 = buildECTesterStandalone { + nettle = { version="nettle_0.2"; tag="release_nettle_0.2.20010617"; hash="sha256-8gdMfVF5yHEDeT6SPO8ouYM4o8hsCn3M1pIPQDX/fzQ="; }; + }; + v3_8_1 = buildECTesterStandalone { + nettle = { version="3.8.1"; tag="nettle_3.8.1_release_20220727"; hash="sha256-7ISLSvk0lwciqyIncZXNqrHyrMHIqJy+asDO9CXrBDg="; }; + }; + v3_8 = buildECTesterStandalone { + nettle = { version="3.8"; tag="nettle_3.8_release_20220602"; hash="sha256-jeKsfLmlokjrGxzcaP6Kl+IfmiHhh4GUvZKf6dVDknw="; }; + }; + v3_7_3 = buildECTesterStandalone { + nettle = { version="3.7.3"; tag="nettle_3.7.3_release_20210606"; hash="sha256-xeunS+6/xPa0QPcc4J2AMtSAQ5p2pVAorFUQ6TWXa4g="; }; + }; + v3_7_2 = buildECTesterStandalone { + nettle = { version="3.7.2"; tag="nettle_3.7.2_release_20210321"; hash="sha256-JVh5uBtJpbgXUQNphCfLjsUddWSMoLvW3X9tgr1hBEo="; }; + }; + v3_7_1 = buildECTesterStandalone { + nettle = { version="3.7.1"; tag="nettle_3.7.1_release_20210217"; hash="sha256-+C4W9juzJLCCxDdZPgBbT7DvUe7koIKnkTC/j0tsXJQ="; }; + }; + v3_7 = buildECTesterStandalone { + nettle = { version="3.7"; tag="nettle_3.7_release_20210104"; hash="sha256-GcVh88WuzJoPmWhbx2KQT6eviMKW5f8xlqgdktGKiB8="; }; + }; + v3_7rc1 = buildECTesterStandalone { + nettle = { version="3.7rc1"; tag="nettle_3.7rc1"; hash="sha256-5ynAU9+DyKt2d/qKD4wDWMvKms6AiZPAHvevQnGuVjw="; }; + }; + v3_6 = buildECTesterStandalone { + nettle = { version="3.6"; tag="nettle_3.6_release_20200429"; hash="sha256-rMxnCk8J6ow+hWLEz3iT3kOzfXP1WxkxoUgGsuDeD2I="; }; + }; + v3_6rc3 = buildECTesterStandalone { + nettle = { version="3.6rc3"; tag="nettle_3.6rc3"; hash="sha256-nQLBOoRpS6VEw5R4Q08uffqk3fiaR++xRMgWQ1xpLTE="; }; + }; + v3_6rc2 = buildECTesterStandalone { + nettle = { version="3.6rc2"; tag="nettle_3.6rc2"; hash="sha256-oVX9So1Wwu1gyntUwsUQBxIjYIq5+8WBDcKxkKUr22Q="; }; + }; + v3_6rc1 = buildECTesterStandalone { + nettle = { version="3.6rc1"; tag="nettle_3.6rc1"; hash="sha256-fpamfRYVfdvrXV+g7sujJSL+H6ApTjTBGoom7G4797I="; }; + }; + v3_5_1 = buildECTesterStandalone { + nettle = { version="3.5.1"; tag="nettle_3.5.1_release_20190627"; hash="sha256-/vENdrjJFL8M4vde388HfRee23lXLScn9wFF2oOP6tE="; }; + }; + v3_5 = buildECTesterStandalone { + nettle = { version="3.5"; tag="nettle_3.5_release_20190626"; hash="sha256-8TQ7UFWuV8wMAZDzmAwyL6OLuFrg+3p3uuaPMWet64Q="; }; + }; + v3_5rc1 = buildECTesterStandalone { + nettle = { version="3.5rc1"; tag="nettle_3.5rc1"; hash="sha256-VwN6Mptwo8UIi0VrMlL9HT9+qKY9b8MibNagD2/1gYI="; }; + }; + v3_4_1 = buildECTesterStandalone { + nettle = { version="3.4.1"; tag="nettle_3.4.1_release_20181204"; hash="sha256-xOJohqASNv1cyyZNnZmBivIaarA1x01kdJiAJ6KHZkQ="; }; + }; + v3_4_1rc1 = buildECTesterStandalone { + nettle = { version="3.4.1rc1"; tag="nettle_3.4.1rc1"; hash="sha256-xRTTCF9c9ftegjJaHUtyIkJwvXw7wv79yu6dJCTUwdw="; }; + }; + v3_4 = buildECTesterStandalone { + nettle = { version="3.4"; tag="nettle_3.4_release_20171119"; hash="sha256-FLLVm2XFeRxtwz8y4ZGsMFEENXVDvqD7YwJ414c3fTI="; }; + }; + v3_4rc2 = buildECTesterStandalone { + nettle = { version="3.4rc2"; tag="nettle_3.4rc2"; hash="sha256-G16UGcHypfEyVngjvUjQDwY5bWJp09BlldaAUPnZ3JY="; }; + }; + v3_4rc1 = buildECTesterStandalone { + nettle = { version="3.4rc1"; tag="nettle_3.4rc1"; hash="sha256-J5gj70gpYBY/+WkPQhtDqZvHbTFTHCypKGu/hOhz7Uk="; }; + }; + v3_3 = buildECTesterStandalone { + nettle = { version="3.3"; tag="nettle_3.3_release_20161001"; hash="sha256-TJRhYgPyHeiYsvYZ7L+XjxWFGZll/fJ+vVorWTB5W7c="; }; + }; + v3_2 = buildECTesterStandalone { + nettle = { version="3.2"; tag="nettle_3.2_release_20160128"; hash="sha256-vlCi3iReSN4sASl78jZ3u0/yO4CK8HH42cupdnxCWVU="; }; + }; + v3_1_1 = buildECTesterStandalone { + nettle = { version="3.1.1"; tag="nettle_3.1.1_release_20150424"; hash="sha256-lrpCg/u1ZJvsiTrwkTx6+8BVV/rdlaRw5do72crKoRg="; }; + }; + v3_1 = buildECTesterStandalone { + nettle = { version="3.1"; tag="nettle_3.1_release_20150407"; hash="sha256-WtiYNaMjTBMF37M0QLPjvan4dD/tzCfULp/06F9Z1vA="; }; + }; + v3_1rc3 = buildECTesterStandalone { + nettle = { version="3.1rc3"; tag="nettle_3.1rc3"; hash="sha256-ngoe/I8JSZXufA+3PVJSPsQ26KT2aOn5RzJjNezis3Q="; }; + }; + v3_1rc2 = buildECTesterStandalone { + nettle = { version="3.1rc2"; tag="nettle_3.1rc2"; hash="sha256-BJj+5paD+fG7gKyZ9KJXuWETB5yqQanWyj7Q3Tm18+4="; }; + }; + v3_1rc1 = buildECTesterStandalone { + nettle = { version="3.1rc1"; tag="nettle_3.1rc1"; hash="sha256-oR07+omPaltbiubGeeE8K7oysT0U8nr6KUizeo/pHmg="; }; + }; + v3_0 = buildECTesterStandalone { + nettle = { version="3.0"; tag="nettle_3.0_release_20140607"; hash="sha256-AxE+Eten1JodHj+InuMvs/FlWVsxzqr3spunUwvJxIQ="; }; + }; + v2_7_1 = buildECTesterStandalone { + nettle = { version="2.7.1"; tag="nettle_2.7.1_release_20130528"; hash="sha256-m28lItoyyuwmXr83YVlQluUyFN9ySWz6WnUtfr3DQkM="; }; + }; + v2_7 = buildECTesterStandalone { + nettle = { version="2.7"; tag="nettle_2.7_release_20130424"; hash="sha256-NubTzUzAYaPgZO1v8iwWPYa1PtHlAbzpHcPpGoaeabo="; }; + }; +} -- cgit v1.3.1 From 90d423d853fa2319bbe54170aa95cc8627f88924 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 18:24:06 +0200 Subject: Default to previous source not version --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 68a4630..314d2d2 100644 --- a/flake.nix +++ b/flake.nix @@ -166,7 +166,7 @@ }); nettleBuilder = { version, tag, hash }: pkgs.nettle.overrideAttrs (final: prev: { configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; - src = if version == null then prev.version else pkgs.fetchurl { + src = if version == null then prev.src else pkgs.fetchurl { url = "mirror://gnu/nettle/nettle-${version}.tar.gz"; inherit hash; }; -- cgit v1.3.1 From d82e729e70691521c2bc197db42505025b93ed55 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 18:25:30 +0200 Subject: Build various version of LibreSSL --- fetchReleases.py | 31 ++++ flake.nix | 14 +- nix/libressl_pkg_versions.nix | 362 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 404 insertions(+), 3 deletions(-) create mode 100644 nix/libressl_pkg_versions.nix diff --git a/fetchReleases.py b/fetchReleases.py index a0783df..b799e7e 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -251,6 +251,35 @@ def fetch_nettle(): with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) +def fetch_libressl(): + pkg = "libressl" + release_list = "https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/" + download_url = "mirror://openbsd/LibreSSL/libressl-{version}.tar.gz" + resp = requests.get(release_list) + soup = BeautifulSoup(resp.content, 'html.parser') + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; + };""") + + renders = [] + for link in soup.find_all("a"): + if link.text.startswith("libressl") and link.text.endswith('.tar.gz'): + match = re.match(r"libressl-(?P\d+)\.(?P\d+)\.(?P\d+)\.tar.gz", link.text) + version = f"{match['major']}.{match['minor']}.{match['patch']}" + download_link = download_url.format(version=version) + print(version) + digest = get_source_hash(download_link) + # NOTE: use underscore to separate the versions? + flat_version = f"v{match['major']}{match['minor']}{match['patch']}" + + rendered = single_version_template.render(pkg="botan", digest=digest, flat_version=flat_version, version=version).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open("./nix/{pkg}_pkg_versions.nix", "w") as handle: + handle.write(all_versions) + def main(): parser = argparse.ArgumentParser() @@ -274,6 +303,8 @@ def main(): fetch_ippcp() case "nettle": fetch_nettle() + case "libressl": + fetch_libressl() case _: print("Unknown library") diff --git a/flake.nix b/flake.nix index 314d2d2..e63304b 100644 --- a/flake.nix +++ b/flake.nix @@ -180,7 +180,12 @@ inherit hash; }; }); - libressl = (pkgs.libressl.override { buildShared = false; } ).overrideAttrs (_old: rec { + libresslBuilder = { version, hash }: (pkgs.libressl.override { buildShared = false; } ).overrideAttrs (final: prev: rec { + + src = if version == null then prev.src else pkgs.fetchurl { + url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; + inherit hash; + }; patches = [ (pkgs.fetchpatch { url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; @@ -194,7 +199,7 @@ # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple # lib shims are built alongside each other. postFixup = pkgs.lib.concatLines [ - ( _old.postFixup or "" ) + ( prev.postFixup or "" ) '' cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc @@ -231,7 +236,7 @@ mbedtlsShimBuilder = { version, hash }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = ( mbedtlsBuilder { inherit version hash; }); }; ippcpShimBuilder = { version, hash }: import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = ( ipp-cryptoBuilder { inherit version hash; }); }; nettleShimBuilder = { version, tag, hash }: import ./nix/nettleshim.nix { inherit pkgs gmp; nettle = ( nettleBuilder { inherit version tag hash; }); }; - libresslShim = import ./nix/libresslshim.nix { inherit pkgs libressl; }; + libresslShimBuilder = { version, hash }: import ./nix/libresslshim.nix { inherit pkgs; libressl = ( libresslBuilder { inherit version hash; }); }; commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; @@ -246,6 +251,7 @@ mbedtls ? { version = null; hash = null; }, ippcp ? { version = null; hash = null; }, nettle ? { version = null; tag = null; hash = null; }, + libressl ? { version = null; hash = null; }, }: ( let tomcryptShim = tomcryptShimBuilder { @@ -261,6 +267,7 @@ mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; nettleShim = nettleShimBuilder { inherit (nettle) version tag hash; }; + libresslShim = libresslShimBuilder { inherit (libressl) version hash; }; in with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { @@ -321,6 +328,7 @@ mbedtls = pkgs.callPackage ./nix/mbedtls_pkg_versions.nix { inherit buildECTesterStandalone; }; ippcp = pkgs.callPackage ./nix/ippcp_pkg_versions.nix { inherit buildECTesterStandalone; }; nettle = pkgs.callPackage ./nix/nettle_pkg_versions.nix { inherit buildECTesterStandalone; }; + libressl = pkgs.callPackage ./nix/libressl_pkg_versions.nix { inherit buildECTesterStandalone; }; fetchReleases = with pkgs.python3Packages; buildPythonApplication { pname = "fetchReleases"; diff --git a/nix/libressl_pkg_versions.nix b/nix/libressl_pkg_versions.nix new file mode 100644 index 0000000..1621521 --- /dev/null +++ b/nix/libressl_pkg_versions.nix @@ -0,0 +1,362 @@ +{ + buildECTesterStandalone +}: +{ + v200 = buildECTesterStandalone { + libressl = { version="2.0.0"; hash="sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s="; }; + }; + v201 = buildECTesterStandalone { + libressl = { version="2.0.1"; hash="sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro="; }; + }; + v202 = buildECTesterStandalone { + libressl = { version="2.0.2"; hash="sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys="; }; + }; + v203 = buildECTesterStandalone { + libressl = { version="2.0.3"; hash="sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ="; }; + }; + v204 = buildECTesterStandalone { + libressl = { version="2.0.4"; hash="sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw="; }; + }; + v205 = buildECTesterStandalone { + libressl = { version="2.0.5"; hash="sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo="; }; + }; + v206 = buildECTesterStandalone { + libressl = { version="2.0.6"; hash="sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y="; }; + }; + v210 = buildECTesterStandalone { + libressl = { version="2.1.0"; hash="sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w="; }; + }; + v211 = buildECTesterStandalone { + libressl = { version="2.1.1"; hash="sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc="; }; + }; + v2110 = buildECTesterStandalone { + libressl = { version="2.1.10"; hash="sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE="; }; + }; + v212 = buildECTesterStandalone { + libressl = { version="2.1.2"; hash="sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I="; }; + }; + v213 = buildECTesterStandalone { + libressl = { version="2.1.3"; hash="sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w="; }; + }; + v214 = buildECTesterStandalone { + libressl = { version="2.1.4"; hash="sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4="; }; + }; + v215 = buildECTesterStandalone { + libressl = { version="2.1.5"; hash="sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s="; }; + }; + v216 = buildECTesterStandalone { + libressl = { version="2.1.6"; hash="sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g="; }; + }; + v217 = buildECTesterStandalone { + libressl = { version="2.1.7"; hash="sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248="; }; + }; + v218 = buildECTesterStandalone { + libressl = { version="2.1.8"; hash="sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM="; }; + }; + v219 = buildECTesterStandalone { + libressl = { version="2.1.9"; hash="sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654="; }; + }; + v220 = buildECTesterStandalone { + libressl = { version="2.2.0"; hash="sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA="; }; + }; + v221 = buildECTesterStandalone { + libressl = { version="2.2.1"; hash="sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0="; }; + }; + v222 = buildECTesterStandalone { + libressl = { version="2.2.2"; hash="sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ="; }; + }; + v223 = buildECTesterStandalone { + libressl = { version="2.2.3"; hash="sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II="; }; + }; + v224 = buildECTesterStandalone { + libressl = { version="2.2.4"; hash="sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4="; }; + }; + v225 = buildECTesterStandalone { + libressl = { version="2.2.5"; hash="sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs="; }; + }; + v226 = buildECTesterStandalone { + libressl = { version="2.2.6"; hash="sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8="; }; + }; + v227 = buildECTesterStandalone { + libressl = { version="2.2.7"; hash="sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80="; }; + }; + v228 = buildECTesterStandalone { + libressl = { version="2.2.8"; hash="sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws="; }; + }; + v229 = buildECTesterStandalone { + libressl = { version="2.2.9"; hash="sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ="; }; + }; + v230 = buildECTesterStandalone { + libressl = { version="2.3.0"; hash="sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA="; }; + }; + v231 = buildECTesterStandalone { + libressl = { version="2.3.1"; hash="sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4="; }; + }; + v2310 = buildECTesterStandalone { + libressl = { version="2.3.10"; hash="sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM="; }; + }; + v232 = buildECTesterStandalone { + libressl = { version="2.3.2"; hash="sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo="; }; + }; + v233 = buildECTesterStandalone { + libressl = { version="2.3.3"; hash="sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk="; }; + }; + v234 = buildECTesterStandalone { + libressl = { version="2.3.4"; hash="sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk="; }; + }; + v235 = buildECTesterStandalone { + libressl = { version="2.3.5"; hash="sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs="; }; + }; + v236 = buildECTesterStandalone { + libressl = { version="2.3.6"; hash="sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o="; }; + }; + v237 = buildECTesterStandalone { + libressl = { version="2.3.7"; hash="sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA="; }; + }; + v238 = buildECTesterStandalone { + libressl = { version="2.3.8"; hash="sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I="; }; + }; + v239 = buildECTesterStandalone { + libressl = { version="2.3.9"; hash="sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw="; }; + }; + v240 = buildECTesterStandalone { + libressl = { version="2.4.0"; hash="sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4="; }; + }; + v241 = buildECTesterStandalone { + libressl = { version="2.4.1"; hash="sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc="; }; + }; + v242 = buildECTesterStandalone { + libressl = { version="2.4.2"; hash="sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM="; }; + }; + v243 = buildECTesterStandalone { + libressl = { version="2.4.3"; hash="sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4="; }; + }; + v244 = buildECTesterStandalone { + libressl = { version="2.4.4"; hash="sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E="; }; + }; + v245 = buildECTesterStandalone { + libressl = { version="2.4.5"; hash="sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c="; }; + }; + v250 = buildECTesterStandalone { + libressl = { version="2.5.0"; hash="sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4="; }; + }; + v251 = buildECTesterStandalone { + libressl = { version="2.5.1"; hash="sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80="; }; + }; + v252 = buildECTesterStandalone { + libressl = { version="2.5.2"; hash="sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII="; }; + }; + v253 = buildECTesterStandalone { + libressl = { version="2.5.3"; hash="sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA="; }; + }; + v254 = buildECTesterStandalone { + libressl = { version="2.5.4"; hash="sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo="; }; + }; + v255 = buildECTesterStandalone { + libressl = { version="2.5.5"; hash="sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q="; }; + }; + v260 = buildECTesterStandalone { + libressl = { version="2.6.0"; hash="sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM="; }; + }; + v261 = buildECTesterStandalone { + libressl = { version="2.6.1"; hash="sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4="; }; + }; + v262 = buildECTesterStandalone { + libressl = { version="2.6.2"; hash="sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg="; }; + }; + v263 = buildECTesterStandalone { + libressl = { version="2.6.3"; hash="sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg="; }; + }; + v264 = buildECTesterStandalone { + libressl = { version="2.6.4"; hash="sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8="; }; + }; + v265 = buildECTesterStandalone { + libressl = { version="2.6.5"; hash="sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So="; }; + }; + v270 = buildECTesterStandalone { + libressl = { version="2.7.0"; hash="sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4="; }; + }; + v271 = buildECTesterStandalone { + libressl = { version="2.7.1"; hash="sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA="; }; + }; + v272 = buildECTesterStandalone { + libressl = { version="2.7.2"; hash="sha256-kXqHecNCF3/zdRor+VXQJi0diRaktAiTDEXO8yZwCZU="; }; + }; + v273 = buildECTesterStandalone { + libressl = { version="2.7.3"; hash="sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U="; }; + }; + v274 = buildECTesterStandalone { + libressl = { version="2.7.4"; hash="sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY="; }; + }; + v275 = buildECTesterStandalone { + libressl = { version="2.7.5"; hash="sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA="; }; + }; + v280 = buildECTesterStandalone { + libressl = { version="2.8.0"; hash="sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM="; }; + }; + v281 = buildECTesterStandalone { + libressl = { version="2.8.1"; hash="sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I="; }; + }; + v282 = buildECTesterStandalone { + libressl = { version="2.8.2"; hash="sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U="; }; + }; + v283 = buildECTesterStandalone { + libressl = { version="2.8.3"; hash="sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc="; }; + }; + v290 = buildECTesterStandalone { + libressl = { version="2.9.0"; hash="sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ="; }; + }; + v291 = buildECTesterStandalone { + libressl = { version="2.9.1"; hash="sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg="; }; + }; + v292 = buildECTesterStandalone { + libressl = { version="2.9.2"; hash="sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ="; }; + }; + v300 = buildECTesterStandalone { + libressl = { version="3.0.0"; hash="sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY="; }; + }; + v301 = buildECTesterStandalone { + libressl = { version="3.0.1"; hash="sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s="; }; + }; + v302 = buildECTesterStandalone { + libressl = { version="3.0.2"; hash="sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4="; }; + }; + v310 = buildECTesterStandalone { + libressl = { version="3.1.0"; hash="sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY="; }; + }; + v311 = buildECTesterStandalone { + libressl = { version="3.1.1"; hash="sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA="; }; + }; + v312 = buildECTesterStandalone { + libressl = { version="3.1.2"; hash="sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI="; }; + }; + v313 = buildECTesterStandalone { + libressl = { version="3.1.3"; hash="sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A="; }; + }; + v314 = buildECTesterStandalone { + libressl = { version="3.1.4"; hash="sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y="; }; + }; + v315 = buildECTesterStandalone { + libressl = { version="3.1.5"; hash="sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ="; }; + }; + v320 = buildECTesterStandalone { + libressl = { version="3.2.0"; hash="sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU="; }; + }; + v321 = buildECTesterStandalone { + libressl = { version="3.2.1"; hash="sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU="; }; + }; + v322 = buildECTesterStandalone { + libressl = { version="3.2.2"; hash="sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E="; }; + }; + v323 = buildECTesterStandalone { + libressl = { version="3.2.3"; hash="sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM="; }; + }; + v324 = buildECTesterStandalone { + libressl = { version="3.2.4"; hash="sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo="; }; + }; + v325 = buildECTesterStandalone { + libressl = { version="3.2.5"; hash="sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4="; }; + }; + v326 = buildECTesterStandalone { + libressl = { version="3.2.6"; hash="sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls="; }; + }; + v327 = buildECTesterStandalone { + libressl = { version="3.2.7"; hash="sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q="; }; + }; + v330 = buildECTesterStandalone { + libressl = { version="3.3.0"; hash="sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY="; }; + }; + v331 = buildECTesterStandalone { + libressl = { version="3.3.1"; hash="sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s="; }; + }; + v332 = buildECTesterStandalone { + libressl = { version="3.3.2"; hash="sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ="; }; + }; + v333 = buildECTesterStandalone { + libressl = { version="3.3.3"; hash="sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY="; }; + }; + v334 = buildECTesterStandalone { + libressl = { version="3.3.4"; hash="sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE="; }; + }; + v335 = buildECTesterStandalone { + libressl = { version="3.3.5"; hash="sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU="; }; + }; + v336 = buildECTesterStandalone { + libressl = { version="3.3.6"; hash="sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o="; }; + }; + v340 = buildECTesterStandalone { + libressl = { version="3.4.0"; hash="sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI="; }; + }; + v341 = buildECTesterStandalone { + libressl = { version="3.4.1"; hash="sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw="; }; + }; + v342 = buildECTesterStandalone { + libressl = { version="3.4.2"; hash="sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84="; }; + }; + v343 = buildECTesterStandalone { + libressl = { version="3.4.3"; hash="sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0="; }; + }; + v350 = buildECTesterStandalone { + libressl = { version="3.5.0"; hash="sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c="; }; + }; + v351 = buildECTesterStandalone { + libressl = { version="3.5.1"; hash="sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg="; }; + }; + v352 = buildECTesterStandalone { + libressl = { version="3.5.2"; hash="sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8="; }; + }; + v353 = buildECTesterStandalone { + libressl = { version="3.5.3"; hash="sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg="; }; + }; + v354 = buildECTesterStandalone { + libressl = { version="3.5.4"; hash="sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w="; }; + }; + v360 = buildECTesterStandalone { + libressl = { version="3.6.0"; hash="sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ="; }; + }; + v361 = buildECTesterStandalone { + libressl = { version="3.6.1"; hash="sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q="; }; + }; + v362 = buildECTesterStandalone { + libressl = { version="3.6.2"; hash="sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM="; }; + }; + v363 = buildECTesterStandalone { + libressl = { version="3.6.3"; hash="sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc="; }; + }; + v370 = buildECTesterStandalone { + libressl = { version="3.7.0"; hash="sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY="; }; + }; + v371 = buildECTesterStandalone { + libressl = { version="3.7.1"; hash="sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0="; }; + }; + v372 = buildECTesterStandalone { + libressl = { version="3.7.2"; hash="sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc="; }; + }; + v373 = buildECTesterStandalone { + libressl = { version="3.7.3"; hash="sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM="; }; + }; + v380 = buildECTesterStandalone { + libressl = { version="3.8.0"; hash="sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw="; }; + }; + v381 = buildECTesterStandalone { + libressl = { version="3.8.1"; hash="sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I="; }; + }; + v382 = buildECTesterStandalone { + libressl = { version="3.8.2"; hash="sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ="; }; + }; + v383 = buildECTesterStandalone { + libressl = { version="3.8.3"; hash="sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI="; }; + }; + v384 = buildECTesterStandalone { + libressl = { version="3.8.4"; hash="sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0="; }; + }; + v390 = buildECTesterStandalone { + libressl = { version="3.9.0"; hash="sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA="; }; + }; + v391 = buildECTesterStandalone { + libressl = { version="3.9.1"; hash="sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE="; }; + }; + v392 = buildECTesterStandalone { + libressl = { version="3.9.2"; hash="sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; }; + }; +} -- cgit v1.3.1 From 358e66d957d976a667ce76a1346ab5430ad4f233 Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 6 Aug 2024 18:29:09 +0200 Subject: Remove old and release-candidate versions and hash unpacked source --- nix/nettle_pkg_versions.nix | 72 ++++++++++++--------------------------------- 1 file changed, 18 insertions(+), 54 deletions(-) diff --git a/nix/nettle_pkg_versions.nix b/nix/nettle_pkg_versions.nix index 9316040..c5d7270 100644 --- a/nix/nettle_pkg_versions.nix +++ b/nix/nettle_pkg_versions.nix @@ -2,94 +2,58 @@ buildECTesterStandalone }: { - vnettle_0_2 = buildECTesterStandalone { - nettle = { version="nettle_0.2"; tag="release_nettle_0.2.20010617"; hash="sha256-8gdMfVF5yHEDeT6SPO8ouYM4o8hsCn3M1pIPQDX/fzQ="; }; - }; v3_8_1 = buildECTesterStandalone { - nettle = { version="3.8.1"; tag="nettle_3.8.1_release_20220727"; hash="sha256-7ISLSvk0lwciqyIncZXNqrHyrMHIqJy+asDO9CXrBDg="; }; + nettle = { version="3.8.1"; tag="nettle_3.8.1_release_20220727"; hash="sha256-Nk8+K3fNfc3oP9fEUhnINOVLDHXkKLb4lKI9Et1By/4="; }; }; v3_8 = buildECTesterStandalone { - nettle = { version="3.8"; tag="nettle_3.8_release_20220602"; hash="sha256-jeKsfLmlokjrGxzcaP6Kl+IfmiHhh4GUvZKf6dVDknw="; }; + nettle = { version="3.8"; tag="nettle_3.8_release_20220602"; hash="sha256-dXbGhIHBmPZEsIwWDRpIULqUSeMIBpRVtSEzGfI06OY="; }; }; v3_7_3 = buildECTesterStandalone { - nettle = { version="3.7.3"; tag="nettle_3.7.3_release_20210606"; hash="sha256-xeunS+6/xPa0QPcc4J2AMtSAQ5p2pVAorFUQ6TWXa4g="; }; + nettle = { version="3.7.3"; tag="nettle_3.7.3_release_20210606"; hash="sha256-Zh9esD8EijuSTDqK0lFdQGjkD2fndOiiaCdlgAfjvPA="; }; }; v3_7_2 = buildECTesterStandalone { - nettle = { version="3.7.2"; tag="nettle_3.7.2_release_20210321"; hash="sha256-JVh5uBtJpbgXUQNphCfLjsUddWSMoLvW3X9tgr1hBEo="; }; + nettle = { version="3.7.2"; tag="nettle_3.7.2_release_20210321"; hash="sha256-jSpgTvHN5M1ft35CJTHqJa0GRnn/Ct+VbnizNS4O8WI="; }; }; v3_7_1 = buildECTesterStandalone { - nettle = { version="3.7.1"; tag="nettle_3.7.1_release_20210217"; hash="sha256-+C4W9juzJLCCxDdZPgBbT7DvUe7koIKnkTC/j0tsXJQ="; }; + nettle = { version="3.7.1"; tag="nettle_3.7.1_release_20210217"; hash="sha256-FWYhQnx7AKdf+bNLdwuV00+A73pVw0B96UsWy/Q2xC4="; }; }; v3_7 = buildECTesterStandalone { - nettle = { version="3.7"; tag="nettle_3.7_release_20210104"; hash="sha256-GcVh88WuzJoPmWhbx2KQT6eviMKW5f8xlqgdktGKiB8="; }; - }; - v3_7rc1 = buildECTesterStandalone { - nettle = { version="3.7rc1"; tag="nettle_3.7rc1"; hash="sha256-5ynAU9+DyKt2d/qKD4wDWMvKms6AiZPAHvevQnGuVjw="; }; + nettle = { version="3.7"; tag="nettle_3.7_release_20210104"; hash="sha256-8AH2TrREvxPdkbzsy8IKy8YMQxHW4rIIeEUuuanOx1o="; }; }; v3_6 = buildECTesterStandalone { - nettle = { version="3.6"; tag="nettle_3.6_release_20200429"; hash="sha256-rMxnCk8J6ow+hWLEz3iT3kOzfXP1WxkxoUgGsuDeD2I="; }; - }; - v3_6rc3 = buildECTesterStandalone { - nettle = { version="3.6rc3"; tag="nettle_3.6rc3"; hash="sha256-nQLBOoRpS6VEw5R4Q08uffqk3fiaR++xRMgWQ1xpLTE="; }; - }; - v3_6rc2 = buildECTesterStandalone { - nettle = { version="3.6rc2"; tag="nettle_3.6rc2"; hash="sha256-oVX9So1Wwu1gyntUwsUQBxIjYIq5+8WBDcKxkKUr22Q="; }; - }; - v3_6rc1 = buildECTesterStandalone { - nettle = { version="3.6rc1"; tag="nettle_3.6rc1"; hash="sha256-fpamfRYVfdvrXV+g7sujJSL+H6ApTjTBGoom7G4797I="; }; + nettle = { version="3.6"; tag="nettle_3.6_release_20200429"; hash="sha256-0kwNDyq/+8j0803PEUsPEx7Dd0iV81VZIv4vQPPV4/E="; }; }; v3_5_1 = buildECTesterStandalone { - nettle = { version="3.5.1"; tag="nettle_3.5.1_release_20190627"; hash="sha256-/vENdrjJFL8M4vde388HfRee23lXLScn9wFF2oOP6tE="; }; + nettle = { version="3.5.1"; tag="nettle_3.5.1_release_20190627"; hash="sha256-dcyhmYdhsC4W8ttW2lKZKu9iK/VaO0XsU4vC7trclBk="; }; }; v3_5 = buildECTesterStandalone { - nettle = { version="3.5"; tag="nettle_3.5_release_20190626"; hash="sha256-8TQ7UFWuV8wMAZDzmAwyL6OLuFrg+3p3uuaPMWet64Q="; }; - }; - v3_5rc1 = buildECTesterStandalone { - nettle = { version="3.5rc1"; tag="nettle_3.5rc1"; hash="sha256-VwN6Mptwo8UIi0VrMlL9HT9+qKY9b8MibNagD2/1gYI="; }; + nettle = { version="3.5"; tag="nettle_3.5_release_20190626"; hash="sha256-Qy2Y3NNBy9BjqWMCVSQSI2jB8u6cchu2jXcdXjRnS08="; }; }; v3_4_1 = buildECTesterStandalone { - nettle = { version="3.4.1"; tag="nettle_3.4.1_release_20181204"; hash="sha256-xOJohqASNv1cyyZNnZmBivIaarA1x01kdJiAJ6KHZkQ="; }; - }; - v3_4_1rc1 = buildECTesterStandalone { - nettle = { version="3.4.1rc1"; tag="nettle_3.4.1rc1"; hash="sha256-xRTTCF9c9ftegjJaHUtyIkJwvXw7wv79yu6dJCTUwdw="; }; + nettle = { version="3.4.1"; tag="nettle_3.4.1_release_20181204"; hash="sha256-+UHPFTXNXRgZvlzK5bq+8B9tthH5tad3uunHYEuKkq0="; }; }; v3_4 = buildECTesterStandalone { - nettle = { version="3.4"; tag="nettle_3.4_release_20171119"; hash="sha256-FLLVm2XFeRxtwz8y4ZGsMFEENXVDvqD7YwJ414c3fTI="; }; - }; - v3_4rc2 = buildECTesterStandalone { - nettle = { version="3.4rc2"; tag="nettle_3.4rc2"; hash="sha256-G16UGcHypfEyVngjvUjQDwY5bWJp09BlldaAUPnZ3JY="; }; - }; - v3_4rc1 = buildECTesterStandalone { - nettle = { version="3.4rc1"; tag="nettle_3.4rc1"; hash="sha256-J5gj70gpYBY/+WkPQhtDqZvHbTFTHCypKGu/hOhz7Uk="; }; + nettle = { version="3.4"; tag="nettle_3.4_release_20171119"; hash="sha256-rnpC3wJlULhdrKg4m2pgumMTsFZ/N0OS5UkYWIpBHpQ="; }; }; v3_3 = buildECTesterStandalone { - nettle = { version="3.3"; tag="nettle_3.3_release_20161001"; hash="sha256-TJRhYgPyHeiYsvYZ7L+XjxWFGZll/fJ+vVorWTB5W7c="; }; + nettle = { version="3.3"; tag="nettle_3.3_release_20161001"; hash="sha256-RpQmJ9XQyhFyD+wY2B/Dj374N+pBl8H2MOcc4NRwsR4="; }; }; v3_2 = buildECTesterStandalone { - nettle = { version="3.2"; tag="nettle_3.2_release_20160128"; hash="sha256-vlCi3iReSN4sASl78jZ3u0/yO4CK8HH42cupdnxCWVU="; }; + nettle = { version="3.2"; tag="nettle_3.2_release_20160128"; hash="sha256-6kKD3vI2QT7ataTPnPMq31QMjfG5tnZBz8IwL8qEnZc="; }; }; v3_1_1 = buildECTesterStandalone { - nettle = { version="3.1.1"; tag="nettle_3.1.1_release_20150424"; hash="sha256-lrpCg/u1ZJvsiTrwkTx6+8BVV/rdlaRw5do72crKoRg="; }; + nettle = { version="3.1.1"; tag="nettle_3.1.1_release_20150424"; hash="sha256-X9TSXWTY3cuF0NiXVyr3OwW00WPGzElDilv7uP8pPUw="; }; }; v3_1 = buildECTesterStandalone { - nettle = { version="3.1"; tag="nettle_3.1_release_20150407"; hash="sha256-WtiYNaMjTBMF37M0QLPjvan4dD/tzCfULp/06F9Z1vA="; }; - }; - v3_1rc3 = buildECTesterStandalone { - nettle = { version="3.1rc3"; tag="nettle_3.1rc3"; hash="sha256-ngoe/I8JSZXufA+3PVJSPsQ26KT2aOn5RzJjNezis3Q="; }; - }; - v3_1rc2 = buildECTesterStandalone { - nettle = { version="3.1rc2"; tag="nettle_3.1rc2"; hash="sha256-BJj+5paD+fG7gKyZ9KJXuWETB5yqQanWyj7Q3Tm18+4="; }; - }; - v3_1rc1 = buildECTesterStandalone { - nettle = { version="3.1rc1"; tag="nettle_3.1rc1"; hash="sha256-oR07+omPaltbiubGeeE8K7oysT0U8nr6KUizeo/pHmg="; }; + nettle = { version="3.1"; tag="nettle_3.1_release_20150407"; hash="sha256-9oWdTsiOcIBVkK+YYrS4xDotH8eZHfCnpxGx58qfydM="; }; }; v3_0 = buildECTesterStandalone { - nettle = { version="3.0"; tag="nettle_3.0_release_20140607"; hash="sha256-AxE+Eten1JodHj+InuMvs/FlWVsxzqr3spunUwvJxIQ="; }; + nettle = { version="3.0"; tag="nettle_3.0_release_20140607"; hash="sha256-llHAvSMm63N9DtnrQDREcSQHwBolsP6BNDLvMb682RM="; }; }; v2_7_1 = buildECTesterStandalone { - nettle = { version="2.7.1"; tag="nettle_2.7.1_release_20130528"; hash="sha256-m28lItoyyuwmXr83YVlQluUyFN9ySWz6WnUtfr3DQkM="; }; + nettle = { version="2.7.1"; tag="nettle_2.7.1_release_20130528"; hash="sha256-vHHr1DQ1U312d5nkFPzojlIbcnjUjIYGUSFuH8ZVW0A="; }; }; v2_7 = buildECTesterStandalone { - nettle = { version="2.7"; tag="nettle_2.7_release_20130424"; hash="sha256-NubTzUzAYaPgZO1v8iwWPYa1PtHlAbzpHcPpGoaeabo="; }; + nettle = { version="2.7"; tag="nettle_2.7_release_20130424"; hash="sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY="; }; }; } -- cgit v1.3.1 From c47d49f0d58162bdbb9456db07911469af01c313 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 7 Aug 2024 14:19:53 +0200 Subject: Build last 100 revisions of BoringSSL --- flake.nix | 30 ++-- nix/boringssl_pkg_versions.nix | 319 ++++++++++++++++++++++++++++++++++++++--- 2 files changed, 308 insertions(+), 41 deletions(-) diff --git a/flake.nix b/flake.nix index e63304b..fec71e9 100644 --- a/flake.nix +++ b/flake.nix @@ -23,28 +23,13 @@ getMajorMinor = version: builtins.concatStringsSep "." (pkgs.lib.take 2 ( builtins.splitVersion version)); # Altered upstream packages - boringssl = with pkgs; pkgs.boringssl.overrideAttrs (final: prev: rec { - src = fetchgit { + boringsslBuilder = { rev, hash }: pkgs.boringssl.overrideAttrs (final: prev: rec { + src = if rev == null then prev.src else pkgs.fetchgit { url = "https://boringssl.googlesource.com/boringssl"; - rev = "67422ed4434116daa8898773692165ddd51a6ac2"; - hash = "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc="; + inherit rev hash; }; - - # NOTE this build does not match upstream, but is what ECTester did at the time of writing - buildPhase = '' - cmake -GNinja -Bbuild - pushd build - ninja crypto - popd - ''; - - installPhase = '' - mkdir --parents $bin/bin $dev $out/lib - mv include $dev - - pushd build - mv crypto/libcrypto.a $out/lib/lib_boringssl.a - popd + postFixup = '' + cp $out/lib/libcrypto.a $out/lib/lib_boringssl.a ''; }); # FIXME: `nix develeop` now has different version than `nix run` @@ -231,7 +216,7 @@ botanShimBuilder = { version, source_extension, hash }: pkgs.callPackage ./nix/botanshim.nix { botan2 = botan2Builder { inherit version source_extension hash; }; }; cryptoppShimBuilder = { version, hash}: pkgs.callPackage ./nix/cryptoppshim.nix { cryptopp = cryptoppBuilder { inherit version hash; };}; opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (opensslBuilder { version = version; hash = hash;}); }; - boringsslShim = import ./nix/boringsslshim.nix { inherit pkgs; boringssl = boringssl; }; + boringsslShimBuilder = { rev, hash }: import ./nix/boringsslshim.nix { inherit pkgs; boringssl = ( boringsslBuilder { inherit rev hash; }); }; gcryptShimBuilder = { version, hash}: import ./nix/gcryptshim.nix { inherit pkgs libgpg-error; libgcrypt = libgcryptBuilder { inherit version hash; }; }; mbedtlsShimBuilder = { version, hash }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = ( mbedtlsBuilder { inherit version hash; }); }; ippcpShimBuilder = { version, hash }: import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = ( ipp-cryptoBuilder { inherit version hash; }); }; @@ -246,7 +231,7 @@ botan ? { version = null; source_extension = null; hash = null; }, cryptopp ? { version = null; hash = null; }, openssl ? { version = null; hash = null; }, - boringssl ? { version = null; hash = null; }, + boringssl ? { rev = null; hash = null; }, gcrypt ? { version = null; hash = null; }, mbedtls ? { version = null; hash = null; }, ippcp ? { version = null; hash = null; }, @@ -263,6 +248,7 @@ opensslShim = (opensslShimBuilder { inherit (openssl) version hash; }); botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; + boringsslShim = boringsslShimBuilder { inherit (boringssl) rev hash; }; gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; diff --git a/nix/boringssl_pkg_versions.nix b/nix/boringssl_pkg_versions.nix index 0c4ab10..1979814 100644 --- a/nix/boringssl_pkg_versions.nix +++ b/nix/boringssl_pkg_versions.nix @@ -1,24 +1,305 @@ { buildECTesterStandalone }: -{ -# "version_for_cocoapods_10.0", - -# "version_for_cocoapods_9.0", -# "version_for_cocoapods_8.0", -# "version_for_cocoapods_7.0", -# "version_for_cocoapods_6.0", -# "version_for_cocoapods_5.0", -# "version_for_cocoapods_4.0", -# "version_for_cocoapods_3.0", -# "version_for_cocoapods_2.0", -# "version_for_cocoapods_1.0", -# "fips-android-20191020", -# "fips-20220613", -# "fips-20210429", -# "fips-20190808", -# "fips-20180730", - fips-20170615 = buildECTesterStandalone { - boringssl = { rev = "refs/tags/fips-20170615"; hash = ""; }; +{ + r5af122c3 = buildECTesterStandalone { + boringssl = { rev="5af122c3dfc163b5d1859f1f450756e8e320a142"; hash="sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk="; }; + }; + r1e8c35af = buildECTesterStandalone { + boringssl = { rev="1e8c35af5363c21f0f349b4e570dcccfb9ec3f74"; hash="sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI="; }; + }; + r14a2f35b = buildECTesterStandalone { + boringssl = { rev="14a2f35b6e06756902eaa7e188a25895721055fc"; hash="sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw="; }; + }; + re23fe9b6 = buildECTesterStandalone { + boringssl = { rev="e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6"; hash="sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ="; }; + }; + r7a6e828d = buildECTesterStandalone { + boringssl = { rev="7a6e828dc53ba9a56bd49915f2a0780d63af97d2"; hash="sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk="; }; + }; + r9cffd74f = buildECTesterStandalone { + boringssl = { rev="9cffd74fdb65c69506a0ce1b19420a67ad0cb19e"; hash="sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4="; }; + }; + r82f9853f = buildECTesterStandalone { + boringssl = { rev="82f9853fc7d7360ae44f1e1357a6422c5244bbd8"; hash="sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY="; }; + }; + r9b3ef1b3 = buildECTesterStandalone { + boringssl = { rev="9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3"; hash="sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE="; }; + }; + r096ded9f = buildECTesterStandalone { + boringssl = { rev="096ded9f097b73a15956b04cd168c7cfe7e28f52"; hash="sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo="; }; + }; + rd274b1ba = buildECTesterStandalone { + boringssl = { rev="d274b1bacdca36f3941bf78e43dc38acf676a1a8"; hash="sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; }; + }; + rb34976ca = buildECTesterStandalone { + boringssl = { rev="b34976cae99f8d1b864dbab31e20fc00d06acb09"; hash="sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo="; }; + }; + r77ef86d0 = buildECTesterStandalone { + boringssl = { rev="77ef86d0431ec3ceea503b0c59888942fd35b035"; hash="sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M="; }; + }; + r8934b1ef = buildECTesterStandalone { + boringssl = { rev="8934b1ef0857bc08626a2206a6f5f718942c14fc"; hash="sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0="; }; + }; + r7c2b62e9 = buildECTesterStandalone { + boringssl = { rev="7c2b62e93487b772990fddc1905f22d4cfaee4a4"; hash="sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4="; }; + }; + r12f0f4be = buildECTesterStandalone { + boringssl = { rev="12f0f4bec2a6db53a53748dd6001d1aacaae26ba"; hash="sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw="; }; + }; + rca2eba6a = buildECTesterStandalone { + boringssl = { rev="ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa"; hash="sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8="; }; + }; + rf01108e4 = buildECTesterStandalone { + boringssl = { rev="f01108e4761e1d4189cb134322c3cb01dc71ef87"; hash="sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; }; + }; + r26468aea = buildECTesterStandalone { + boringssl = { rev="26468aea6483135b156fb03a5693c495dbad2e0f"; hash="sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE="; }; + }; + r7811fdc9 = buildECTesterStandalone { + boringssl = { rev="7811fdc94b7ec146937e83f98d411157974ffa32"; hash="sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; }; + }; + r45db24b3 = buildECTesterStandalone { + boringssl = { rev="45db24b36a030ec54464ea7a26c362f3c82305ee"; hash="sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0="; }; + }; + r45b24641 = buildECTesterStandalone { + boringssl = { rev="45b2464158379f48cec6e35a1ef503ddea1511a6"; hash="sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY="; }; + }; + r2fcdd11f = buildECTesterStandalone { + boringssl = { rev="2fcdd11f6d33b667968a5bc5147e2ba83a2082b8"; hash="sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA="; }; + }; + r6c98ebeb = buildECTesterStandalone { + boringssl = { rev="6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec"; hash="sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI="; }; + }; + rd1e6d3b4 = buildECTesterStandalone { + boringssl = { rev="d1e6d3b4af50c9490cc6210e2763b3c45ba14b07"; hash="sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo="; }; + }; + r84dc9bb6 = buildECTesterStandalone { + boringssl = { rev="84dc9bb624b47bda0bf802ae9e04a6eecb40865c"; hash="sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo="; }; + }; + r67422ed4 = buildECTesterStandalone { + boringssl = { rev="67422ed4434116daa8898773692165ddd51a6ac2"; hash="sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc="; }; + }; + rc6c0b650 = buildECTesterStandalone { + boringssl = { rev="c6c0b650091e90e6206a361c14a73223f54d42c1"; hash="sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg="; }; + }; + r66d274df = buildECTesterStandalone { + boringssl = { rev="66d274dfbab9e4f84599f06504987c418ca087d9"; hash="sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0="; }; + }; + re1d209d4 = buildECTesterStandalone { + boringssl = { rev="e1d209d4432846d28c31d84f269f4edcb9a63509"; hash="sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg="; }; + }; + r9cac8a6b = buildECTesterStandalone { + boringssl = { rev="9cac8a6b38c1cbd45c77aee108411d588da006fe"; hash="sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs="; }; + }; + r11acdc6a = buildECTesterStandalone { + boringssl = { rev="11acdc6abf13cc8139c30ac9455840a347793110"; hash="sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y="; }; + }; + r962432c6 = buildECTesterStandalone { + boringssl = { rev="962432c687f67f8df1aa6e3dd364fbc88fea4ed8"; hash="sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ="; }; + }; + ra220a602 = buildECTesterStandalone { + boringssl = { rev="a220a6024f66c123019b5c080f6bd8bcaf75448c"; hash="sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0="; }; + }; + ra6c42d68 = buildECTesterStandalone { + boringssl = { rev="a6c42d6810ea5317fe8ed85704c097cd8f3513ca"; hash="sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ="; }; + }; + r56fb43a2 = buildECTesterStandalone { + boringssl = { rev="56fb43a204e57af68e00f4561c108a7004381aa3"; hash="sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY="; }; + }; + r29223ac3 = buildECTesterStandalone { + boringssl = { rev="29223ac349c144a4d0babc281644c0410dd1e313"; hash="sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ="; }; + }; + re2a801f6 = buildECTesterStandalone { + boringssl = { rev="e2a801f688dbdfac8fde90b849b1bf75f80b466c"; hash="sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs="; }; + }; + r39dd1e3c = buildECTesterStandalone { + boringssl = { rev="39dd1e3c904341ac14da80224d72a77d95501ad4"; hash="sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4="; }; + }; + r1385dbd5 = buildECTesterStandalone { + boringssl = { rev="1385dbd51dc2eeba39076687a6c9e45c7dc8965c"; hash="sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk="; }; + }; + r2bc9245e = buildECTesterStandalone { + boringssl = { rev="2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a"; hash="sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM="; }; + }; + ra055b938 = buildECTesterStandalone { + boringssl = { rev="a055b93845a1b2a910919e21920e4bd1ce900841"; hash="sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI="; }; + }; + rdec5989b = buildECTesterStandalone { + boringssl = { rev="dec5989b793c56ad4dd32173bd2d8595ca78b398"; hash="sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI="; }; + }; + rc1d9ac02 = buildECTesterStandalone { + boringssl = { rev="c1d9ac02514a138129872a036e3f8a1074dcb8bd"; hash="sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8="; }; + }; + re1a860c3 = buildECTesterStandalone { + boringssl = { rev="e1a860c3745c77cb83228dde1b73fa62eaf43930"; hash="sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs="; }; + }; + rfb1c75ca = buildECTesterStandalone { + boringssl = { rev="fb1c75caf8ba5d45a0f2c52facd36e4ad9289549"; hash="sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI="; }; + }; + re491eeb6 = buildECTesterStandalone { + boringssl = { rev="e491eeb610fcc69b98bc6d1ba08faf78655808f6"; hash="sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U="; }; + }; + ra11277e1 = buildECTesterStandalone { + boringssl = { rev="a11277e187e407d0ef403b8a60d9a32eaab7d301"; hash="sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo="; }; + }; + r25cf1bb9 = buildECTesterStandalone { + boringssl = { rev="25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016"; hash="sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk="; }; + }; + rc8100f0f = buildECTesterStandalone { + boringssl = { rev="c8100f0f0d05c5185d58113e12a867ae0771a6c9"; hash="sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q="; }; + }; + r1eda2363 = buildECTesterStandalone { + boringssl = { rev="1eda2363f9e79aaa5febe91d31b6756ae4f24f30"; hash="sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g="; }; + }; + r261579f0 = buildECTesterStandalone { + boringssl = { rev="261579f08b2f8aa7959670df1e928c1c305a632c"; hash="sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg="; }; + }; + r9540c045 = buildECTesterStandalone { + boringssl = { rev="9540c0452343e684f94515288880b6b35655f792"; hash="sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk="; }; + }; + red3f05a6 = buildECTesterStandalone { + boringssl = { rev="ed3f05a6794adfd39937d0027afefad8f6afcae9"; hash="sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc="; }; + }; + r4a7815c9 = buildECTesterStandalone { + boringssl = { rev="4a7815c94077eebb3546fc287d1fa0e1356a2cd0"; hash="sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8="; }; + }; + r5326e94d = buildECTesterStandalone { + boringssl = { rev="5326e94dd188beba0a5e536b1d2723aee65bd85d"; hash="sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0="; }; + }; + re09fcf83 = buildECTesterStandalone { + boringssl = { rev="e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e"; hash="sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE="; }; + }; + rafd52e91 = buildECTesterStandalone { + boringssl = { rev="afd52e91dfed27ab7193be040f067900947b14ac"; hash="sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo="; }; + }; + re95b0cad = buildECTesterStandalone { + boringssl = { rev="e95b0cad901abd49755d2a2a2f1f6c3e87d12b94"; hash="sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw="; }; + }; + r13aa2733 = buildECTesterStandalone { + boringssl = { rev="13aa27338663c62600249ece54c94f180d57bbb7"; hash="sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds="; }; + }; + r03982b4c = buildECTesterStandalone { + boringssl = { rev="03982b4cfadca0e650b384c9539b2fdb5f8aa012"; hash="sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg="; }; + }; + r273a920f = buildECTesterStandalone { + boringssl = { rev="273a920f84e8b0b258737cea0f2f24627e8c5ed9"; hash="sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ="; }; + }; + r9f7f4d03 = buildECTesterStandalone { + boringssl = { rev="9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d"; hash="sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw="; }; + }; + rd7278ceb = buildECTesterStandalone { + boringssl = { rev="d7278cebad5b8eda0901246f2215344cffece4f4"; hash="sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA="; }; + }; + rbfcab2aa = buildECTesterStandalone { + boringssl = { rev="bfcab2aa518899ce71e7ffbc23bb22c4ef51858f"; hash="sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY="; }; + }; + r68c29a24 = buildECTesterStandalone { + boringssl = { rev="68c29a24ee6c9c70ecce56766ca70b115aad768f"; hash="sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo="; }; + }; + rde6ba216 = buildECTesterStandalone { + boringssl = { rev="de6ba216656b819d4d8de7602006561f82a8c669"; hash="sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4="; }; + }; + r29c9e64c = buildECTesterStandalone { + boringssl = { rev="29c9e64ce548ff8278e9d98aa53f611f115c2bed"; hash="sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4="; }; + }; + r58745d61 = buildECTesterStandalone { + boringssl = { rev="58745d61afe244a37941d391f5dec3ab08f5cf2c"; hash="sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ="; }; + }; + rc798e3a5 = buildECTesterStandalone { + boringssl = { rev="c798e3a54912a1bfbf1c846630e2bb86e9b543a7"; hash="sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig="; }; + }; + rba62c812 = buildECTesterStandalone { + boringssl = { rev="ba62c812f01fb379f49f94a08a2d1282ce46e678"; hash="sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU="; }; + }; + r2fb5f9cb = buildECTesterStandalone { + boringssl = { rev="2fb5f9cb8feec2234952f6999af941ac48555710"; hash="sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8="; }; + }; + rd477c0d7 = buildECTesterStandalone { + boringssl = { rev="d477c0d7c40ddca3a64ae26fc02d2dac175836d3"; hash="sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag="; }; + }; + rc7019036 = buildECTesterStandalone { + boringssl = { rev="c70190368c7040c37c1d655f0690bcde2b109a0d"; hash="sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE="; }; + }; + r7662e58e = buildECTesterStandalone { + boringssl = { rev="7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2"; hash="sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4="; }; + }; + r0355048c = buildECTesterStandalone { + boringssl = { rev="0355048ce0302fdeb4744dae4b8a156a38496150"; hash="sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY="; }; + }; + r3a01cba9 = buildECTesterStandalone { + boringssl = { rev="3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee"; hash="sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk="; }; + }; + r07f27b1d = buildECTesterStandalone { + boringssl = { rev="07f27b1d445a27433f2c871935da2cefcfbdb458"; hash="sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A="; }; + }; + rfc953df2 = buildECTesterStandalone { + boringssl = { rev="fc953df2352e1c1bcb34cb5f75a0e409014c1690"; hash="sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU="; }; + }; + r1a9edc3e = buildECTesterStandalone { + boringssl = { rev="1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba"; hash="sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI="; }; + }; + rb8912d71 = buildECTesterStandalone { + boringssl = { rev="b8912d713cb82a748bbe63f28f28b17632c70964"; hash="sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc="; }; + }; + rb6bca9c6 = buildECTesterStandalone { + boringssl = { rev="b6bca9c6dde177f641137d2991aa677997c54c67"; hash="sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI="; }; + }; + r03d1b7c5 = buildECTesterStandalone { + boringssl = { rev="03d1b7c544851d9f44df1e9ff21839742e08c819"; hash="sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA="; }; + }; + r6b36ad2b = buildECTesterStandalone { + boringssl = { rev="6b36ad2bd6001f17a997b7a1e0ab254b001438ef"; hash="sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY="; }; + }; + r1d24e04c = buildECTesterStandalone { + boringssl = { rev="1d24e04c7143171ae2010c842e3e1438510fd1c0"; hash="sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc="; }; + }; + r8a0da669 = buildECTesterStandalone { + boringssl = { rev="8a0da669a08b6c6b805fd7ec9d1e67694fda3711"; hash="sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc="; }; + }; + r4d50a595 = buildECTesterStandalone { + boringssl = { rev="4d50a595b49a2e7b7017060a4d402c4ee9fe28a2"; hash="sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA="; }; + }; + rd34f540e = buildECTesterStandalone { + boringssl = { rev="d34f540e57394de22a1599c3c5d852519d388d6c"; hash="sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0="; }; + }; + re7d76da9 = buildECTesterStandalone { + boringssl = { rev="e7d76da920a1bd79b6ebc77e75b407cdf0a58962"; hash="sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0="; }; + }; + r3efe2eb9 = buildECTesterStandalone { + boringssl = { rev="3efe2eb9e3dfb49cb110c53e3430caeae4599f52"; hash="sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I="; }; + }; + r35a91094 = buildECTesterStandalone { + boringssl = { rev="35a910949d684aea8b86a8c42db76c4f43e31a96"; hash="sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw="; }; + }; + r8e6aa7f3 = buildECTesterStandalone { + boringssl = { rev="8e6aa7f39f4357a6ad15944884f72db8d25b9dff"; hash="sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M="; }; + }; + r7c44f450 = buildECTesterStandalone { + boringssl = { rev="7c44f450547cc777229462c2ac864a9326c0106c"; hash="sha256-snkPY4R9RKdCI0yUS3ICn4CHyXE9DKaYaHAggD2UAOk="; }; + }; + r6ab7c148 = buildECTesterStandalone { + boringssl = { rev="6ab7c1482bf4cdc91c87bc512aaf68ffb18975ec"; hash="sha256-+5ICkcKZRXCSC/y5d5Oo9WtcgdfkLZL/goGXE6V/9hE="; }; + }; + rb17231cd = buildECTesterStandalone { + boringssl = { rev="b17231cdb9ec4e877b470c57d3280d9195811cd9"; hash="sha256-5G/wh35qlfGi6vHEj51QFyIryzKeTiGthfTe7tCWK8s="; }; + }; + r3e89a7e8 = buildECTesterStandalone { + boringssl = { rev="3e89a7e8db8139db356b892ca9993172346c80cf"; hash="sha256-VsTll0A8FfNbObOnoFLah4BMuCzlLNbqOEgSbppQo7k="; }; + }; + r8de798be = buildECTesterStandalone { + boringssl = { rev="8de798be4b850cf88ad2c50602abe2ca3bb285df"; hash="sha256-pQ8BTRMOjxLu8UoyTH23wYwy2pC29yZoCyl1c+94hyM="; }; + }; + rd2e3212d = buildECTesterStandalone { + boringssl = { rev="d2e3212de29bac1ceed33ca8ab8bbff3f41a2459"; hash="sha256-HRa+IdVwchzjJh1Unx8wmu++eiFtY7ctdmwgjJqkx9Y="; }; + }; + r783ae722 = buildECTesterStandalone { + boringssl = { rev="783ae722ed307a3b3782cd253fd4ffb387f38767"; hash="sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo="; }; + }; + r2db0eb3f = buildECTesterStandalone { + boringssl = { rev="2db0eb3f96a5756298dcd7f9319e56a98585bd10"; hash="sha256-+G7BcdtU8AeNMY4NLQgKpgF28/CS9FIjf+vaOd+Wf6o="; }; + }; + r70d05d5a = buildECTesterStandalone { + boringssl = { rev="70d05d5a34f6366116e2b0a530ea8d0186bb2a8e"; hash="sha256-aEtH4Efvt+zRGvUD9JAsBU+EfZySk8gU05fek5rbcbM="; }; }; } -- cgit v1.3.1 From f35278010ecd87398790b1d570dc349ea2737a4f Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 7 Aug 2024 14:20:40 +0200 Subject: Compute BoringSSL source digests locally --- fetchReleases.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/fetchReleases.py b/fetchReleases.py index b799e7e..a17b708 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -6,7 +6,10 @@ import json import jinja2 import re import requests +import shutil +import tempfile +import pathlib import subprocess as sp from base64 import b32encode, b32decode, b64encode, b16decode @@ -161,6 +164,35 @@ def fetch_gcrypt(): +def fetch_boringssl(): + pkg = "boringssl" + + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { + {{ pkg }} = { rev="{{ rev }}"; hash="{{ digest }}"; }; + };""") + renders = [] + with tempfile.TemporaryDirectory() as repodir, tempfile.TemporaryDirectory() as gitdir: + repodir = pathlib.Path(repodir) + gitdir = pathlib.Path(gitdir) + sp.run(["git", "clone", "https://boringssl.googlesource.com/boringssl", repodir]) + # NOTE: we need to get rid of the .git so that it is not included in the derivation hash + shutil.move(repodir / ".git", gitdir) + + output = sp.check_output(["git", "-C", str(repodir), "--git-dir", str(gitdir / ".git"), "log", "--pretty=format:%H"]) + refs = output.decode().split('\n') + + for i, rev in enumerate(refs[:100]): + sp.run(["git", "-C", str(repodir), "--git-dir", str(gitdir / ".git"), "checkout", rev]) + digest = sp.check_output(["nix", "hash", "path", str(repodir)]).decode().strip() + print(f"{i + 1: 4d}:{rev}:{digest}") + abbrev_commit = str(rev[:8]) + + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=f"r{abbrev_commit}", rev=rev).strip() + renders.append(rendered) + + all_versions = all_versions_template.render(pkg_versions=renders).strip() + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: + handle.write(all_versions) def fetch_mbedtls(): # Mbed-TLS/mbedtls @@ -295,6 +327,8 @@ def main(): fetch_cryptopp() case "openssl": fetch_openssl() + case "boringssl": + fetch_boringssl() case "gcrypt": fetch_gcrypt() case "mbedtls": -- cgit v1.3.1 From edbc1c2b50a25e567d1c2f9cc49485a84be18833 Mon Sep 17 00:00:00 2001 From: quapka Date: Wed, 7 Aug 2024 14:50:48 +0200 Subject: Autoformat all Nix sources --- flake.nix | 894 +++++++++++++-------- nix/boringssl_pkg_versions.nix | 504 +++++++++--- nix/boringsslshim.nix | 8 +- nix/botan_pkg_versions.nix | 318 ++++++-- nix/botanshim.nix | 10 +- nix/commonlibs.nix | 7 +- nix/cryptopp_pkg_versions.nix | 118 ++- nix/cryptoppshim.nix | 8 +- nix/gcrypt_pkg_versions.nix | 410 +++++++--- nix/gcryptshim.nix | 9 +- nix/ippcp_pkg_versions.nix | 174 ++-- nix/ippcpshim.nix | 8 +- nix/libressl_pkg_versions.nix | 837 +++++++++++++------ nix/libresslshim.nix | 8 +- nix/mbedtls_pkg_versions.nix | 154 +++- nix/mbedtlsshim.nix | 8 +- nix/nettle_pkg_versions.nix | 148 +++- nix/nettleshim.nix | 9 +- nix/openssl_pkg_versions.nix | 146 +++- nix/opensslshim.nix | 8 +- nix/tomcrypt_pkg_versions.nix | 46 +- nix/tomcryptshim.nix | 9 +- nix/x | 21 + .../cz/crcs/ectester/standalone/libs/jni/Makefile | 8 +- 24 files changed, 2724 insertions(+), 1146 deletions(-) create mode 100644 nix/x diff --git a/flake.nix b/flake.nix index fec71e9..d6e2997 100644 --- a/flake.nix +++ b/flake.nix @@ -2,267 +2,498 @@ description = "ECTester"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - flake-utils.url = "github:numtide/flake-utils"; - gradle2nix.url = "github:tadfisher/gradle2nix/03c1b713ad139eb6dfc8d463b5bd348368125cf1"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + flake-utils.url = "github:numtide/flake-utils"; + gradle2nix.url = "github:tadfisher/gradle2nix/03c1b713ad139eb6dfc8d463b5bd348368125cf1"; custom-nixpkgs.url = "github:quapka/nixpkgs/customPkgs"; }; - outputs = { self, nixpkgs, custom-nixpkgs, flake-utils, gradle2nix, ... }: - flake-utils.lib.eachDefaultSystem (system: + outputs = + { + self, + nixpkgs, + custom-nixpkgs, + flake-utils, + gradle2nix, + ... + }: + flake-utils.lib.eachDefaultSystem ( + system: let - overlays = []; - pkgs = import nixpkgs { - inherit system overlays; - }; - customPkgs = import custom-nixpkgs { - inherit system overlays; - }; + overlays = [ ]; + pkgs = import nixpkgs { inherit system overlays; }; + customPkgs = import custom-nixpkgs { inherit system overlays; }; # removes the patch/revision from the version. E.g. getMajorMinor "1.2.3" = "1.2" - getMajorMinor = version: builtins.concatStringsSep "." (pkgs.lib.take 2 ( builtins.splitVersion version)); + getMajorMinor = + version: builtins.concatStringsSep "." (pkgs.lib.take 2 (builtins.splitVersion version)); # Altered upstream packages - boringsslBuilder = { rev, hash }: pkgs.boringssl.overrideAttrs (final: prev: rec { - src = if rev == null then prev.src else pkgs.fetchgit { - url = "https://boringssl.googlesource.com/boringssl"; - inherit rev hash; - }; - postFixup = '' - cp $out/lib/libcrypto.a $out/lib/lib_boringssl.a - ''; - }); + boringsslBuilder = + { rev, hash }: + pkgs.boringssl.overrideAttrs ( + final: prev: rec { + src = + if rev == null then + prev.src + else + pkgs.fetchgit { + url = "https://boringssl.googlesource.com/boringssl"; + inherit rev hash; + }; + postFixup = '' + cp $out/lib/libcrypto.a $out/lib/lib_boringssl.a + ''; + } + ); # FIXME: `nix develeop` now has different version than `nix run` - opensslBuilder = { version ? null, hash ? null }: (pkgs.openssl.override { static = true; }).overrideAttrs (final: prev: rec { - pname = "openssl"; - src = if version != null then pkgs.fetchurl { - url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - hash = hash; - } else prev.src; - # FIXME Removing patches might cause unwanted things; this should be version based! - patches = []; - }); - botan2Builder = { version, source_extension, hash }: pkgs.botan2.overrideAttrs (final: prev: { - src = if ( version == null ) then prev.src else - pkgs.fetchurl { - urls = [ - "http://botan.randombit.net/releases/Botan-${version}.${source_extension}" - ]; - inherit hash; + opensslBuilder = + { + version ? null, + hash ? null, + }: + (pkgs.openssl.override { static = true; }).overrideAttrs ( + final: prev: rec { + pname = "openssl"; + src = + if version != null then + pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + hash = hash; + } + else + prev.src; + # FIXME Removing patches might cause unwanted things; this should be version based! + patches = [ ]; + } + ); + botan2Builder = + { + version, + source_extension, + hash, + }: + pkgs.botan2.overrideAttrs ( + final: prev: { + src = + if (version == null) then + prev.src + else + pkgs.fetchurl { + urls = [ "http://botan.randombit.net/releases/Botan-${version}.${source_extension}" ]; + inherit hash; + }; + } + ); + + libgcryptBuilder = + { version, hash }: + pkgs.libgcrypt.overrideAttrs ( + final: prev: { + configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; + src = + if version == null then + prev.src + else + pkgs.fetchurl { + url = "mirror://gnupg/libgcrypt/${prev.pname}-${version}.tar.bz2"; + inherit hash; + }; + } + ); + libgpg-error = pkgs.libgpg-error.overrideAttrs ( + final: prev: { configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; } + ); + + mbedtlsBuilder = + { version, hash }: + pkgs.mbedtls.overrideAttrs ( + final: prev: { + src = + if version == null then + prev.src + else + pkgs.fetchFromGitHub { + owner = "Mbed-TLS"; + repo = "mbedtls"; + rev = "mbedtls-${version}"; + inherit hash; + # mbedtls >= 3.6.0 uses git submodules + fetchSubmodules = true; + }; + } + ); + + ipp-cryptoBuilder = + { version, hash }: + customPkgs.ipp-crypto.overrideAttrs ( + final: prev: { + src = + if version == null then + prev.src + else + pkgs.fetchFromGitHub { + owner = "intel"; + repo = "ipp-crypto"; + rev = "ippcp_${version}"; + inherit hash; + }; + } + ); + + libtomcryptBuilder = + { + tcVersion, + tcHash, + tmVersion, + tmHash, + }: + (pkgs.libtomcrypt.override { + libtommath = libtommathBuilder { + version = tmVersion; + hash = tmHash; }; - }); + }).overrideAttrs + ( + final: prev: + let + preBuilds = { + "1.18" = '' + makeFlagsArray+=(PREFIX=$out \ + CFLAGS="-DUSE_LTM -DLTM_DESC" \ + EXTRALIBS=\"-ltommath\" \ + INSTALL_GROUP=$(id -g) \ + INSTALL_USER=$(id -u)) + ''; + "1.17" = '' + mkdir --parents $out/{lib, include, share/doc/} + + makeFlagsArray+=(PREFIX=$out \ + LIBPATH=$out/lib \ + INCPATH=$out/include \ + DATAPATH=$out/share/doc/libtomcrypt/pdf + CFLAGS_OPTS="-DUSE_LTM -DLTM_DESC" \ + EXTRALIBS=\"-ltommath\" \ + GROUP=$(id -g) \ + USER=$(id -u)) + ''; + # "1.01" = '' + # ''; + }; + preBuild = + if tcVersion != null then + if builtins.hasAttr (getMajorMinor tcVersion) preBuilds then + preBuilds."${getMajorMinor tcVersion}" + else + preBuilds."1.17" + else + preBuilds."1.18"; + in + rec { + makefile = "makefile.unix"; + version = if tcVersion != null then tcVersion else prev.version; + + src = + if version == prev.version then + prev.src + else + pkgs.fetchFromGitHub { + owner = "libtom"; + repo = "libtomcrypt"; + rev = if pkgs.lib.hasPrefix "1.18" version then "refs/tags/v${version}" else "refs/tags/${version}"; + hash = tcHash; + }; + + inherit preBuild; + patches = + if pkgs.lib.hasPrefix "1.18" version then + (prev.patches or [ ]) + ++ [ + # NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). + # This patch copies the necessary code from `makefile.shared`. + ./nix/libtomcrypt-pkgconfig-for-static.patch + ] + else + [ ]; + } + ); + + libtommathBuilder = + { version, hash }: + pkgs.libtommath.overrideAttrs ( + final: prev: rec { + makefile = "makefile.unix"; + # version = if version != null then version else prev.version; + version = "1.3.0"; + src = pkgs.fetchurl { + url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; + # hash = if hash != null then hash else prev.hash; + hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg"; + }; + patches = (prev.patches or [ ]) ++ [ + # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). + # This patch copies the necessary code from `makefile.shared`. + ./nix/libtommath-pkgconfig-for-static-build.patch + ]; + } + ); + nettleBuilder = + { + version, + tag, + hash, + }: + pkgs.nettle.overrideAttrs ( + final: prev: { + configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; + src = + if version == null then + prev.src + else + pkgs.fetchurl { + url = "mirror://gnu/nettle/nettle-${version}.tar.gz"; + inherit hash; + }; + } + ); + cryptoppBuilder = + { version, hash }: + (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs ( + final: prev: { + src = + if version == null then + prev.src + else + pkgs.fetchFromGitHub { + owner = "weidai11"; + repo = "cryptopp"; + rev = "CRYPTOPP_${version}"; + inherit hash; + }; + } + ); + libresslBuilder = + { version, hash }: + (pkgs.libressl.override { buildShared = false; }).overrideAttrs ( + final: prev: rec { + + src = + if version == null then + prev.src + else + pkgs.fetchurl { + url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; + inherit hash; + }; + patches = [ + (pkgs.fetchpatch { + url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; + includes = [ "tests/tlstest.sh" ]; + hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; + }) + ]; - libgcryptBuilder = { version, hash }: pkgs.libgcrypt.overrideAttrs (final: prev: { - configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; - src = if version == null then prev.src else pkgs.fetchurl { - url = "mirror://gnupg/libgcrypt/${prev.pname}-${version}.tar.bz2"; - inherit hash; - }; - }); - libgpg-error = pkgs.libgpg-error.overrideAttrs (final: prev: { - configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; - }); - - mbedtlsBuilder = { version, hash}: pkgs.mbedtls.overrideAttrs (final: prev: { - src = if version == null then prev.src else pkgs.fetchFromGitHub { - owner = "Mbed-TLS"; - repo = "mbedtls"; - rev = "mbedtls-${version}"; - inherit hash; - # mbedtls >= 3.6.0 uses git submodules - fetchSubmodules = true; + # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. + # This is not needed for building the individual shims through Nix, as libresslShim build env does not + # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple + # lib shims are built alongside each other. + postFixup = pkgs.lib.concatLines [ + (prev.postFixup or "") + '' + cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc + sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc + ln -s $out/lib/libcrypto.so $out/lib/libresslcrypto.so + ln -s $out/lib/libcrypto.a $out/lib/libresslcrypto.a + '' + ]; + + } + ); + gmp = pkgs.gmp.override { withStatic = true; }; + + # Custom added packages + wolfcryptjni = + with customPkgs; + wolfcrypt-jni.overrideAttrs ( + final: prev: { + src = pkgs.fetchFromGitHub { + owner = "wolfSSL"; + repo = "wolfcrypt-jni"; + rev = "0497ee767c994775beda2f2091009593961e5c7e"; + hash = "sha256-mtUXUyIKJ617WzAWjlOaMscWM7zuGBISVMEAbmQNBOg="; + }; + } + ); + + # Shims and libs + # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl + tomcryptShimBuilder = + { + tcVersion, + tcHash, + tmVersion, + tmHash, + }: + pkgs.callPackage ./nix/tomcryptshim.nix { + inherit pkgs; + libtomcrypt = ( + libtomcryptBuilder { + inherit + tcVersion + tcHash + tmVersion + tmHash + ; + } + ); + libtommath = ( + libtommathBuilder { + version = tmVersion; + hash = tmHash; + } + ); }; - }); - - ipp-cryptoBuilder = { version, hash }: customPkgs.ipp-crypto.overrideAttrs (final: prev: { - src = if version == null then prev.src else pkgs.fetchFromGitHub { - owner = "intel"; - repo = "ipp-crypto"; - rev = "ippcp_${version}"; - inherit hash; + botanShimBuilder = + { + version, + source_extension, + hash, + }: + pkgs.callPackage ./nix/botanshim.nix { + botan2 = botan2Builder { inherit version source_extension hash; }; }; - }); - - libtomcryptBuilder = { tcVersion, tcHash, tmVersion, tmHash }: - (pkgs.libtomcrypt.override { libtommath = libtommathBuilder { version = tmVersion; hash = tmHash; }; }).overrideAttrs (final: prev: - let - preBuilds = { - "1.18" = '' - makeFlagsArray+=(PREFIX=$out \ - CFLAGS="-DUSE_LTM -DLTM_DESC" \ - EXTRALIBS=\"-ltommath\" \ - INSTALL_GROUP=$(id -g) \ - INSTALL_USER=$(id -u)) - ''; - "1.17" = '' - mkdir --parents $out/{lib, include, share/doc/} - - makeFlagsArray+=(PREFIX=$out \ - LIBPATH=$out/lib \ - INCPATH=$out/include \ - DATAPATH=$out/share/doc/libtomcrypt/pdf - CFLAGS_OPTS="-DUSE_LTM -DLTM_DESC" \ - EXTRALIBS=\"-ltommath\" \ - GROUP=$(id -g) \ - USER=$(id -u)) - ''; - # "1.01" = '' - # ''; + cryptoppShimBuilder = + { version, hash }: + pkgs.callPackage ./nix/cryptoppshim.nix { cryptopp = cryptoppBuilder { inherit version hash; }; }; + opensslShimBuilder = + { version, hash }: + import ./nix/opensslshim.nix { + inherit pkgs; + openssl = ( + opensslBuilder { + version = version; + hash = hash; + } + ); }; - preBuild = if tcVersion != null - then if builtins.hasAttr (getMajorMinor tcVersion) preBuilds - then preBuilds."${getMajorMinor tcVersion}" - else preBuilds."1.17" - else preBuilds."1.18"; - in - rec { - makefile = "makefile.unix"; - version = if tcVersion != null then tcVersion else prev.version; - - src = if version == prev.version then prev.src else pkgs.fetchFromGitHub { - owner = "libtom"; - repo = "libtomcrypt"; - rev = if pkgs.lib.hasPrefix "1.18" version then "refs/tags/v${version}" else "refs/tags/${version}" ; - hash = tcHash; + boringsslShimBuilder = + { rev, hash }: + import ./nix/boringsslshim.nix { + inherit pkgs; + boringssl = (boringsslBuilder { inherit rev hash; }); }; - - inherit preBuild; - patches = if pkgs.lib.hasPrefix "1.18" version then ( prev.patches or [] ) ++ [ - # NOTE: LibTomCrypt does not expose the lib, when built statically (using `makefile and not `makefile.shared`). - # This patch copies the necessary code from `makefile.shared`. - ./nix/libtomcrypt-pkgconfig-for-static.patch - ] else []; - }); - - libtommathBuilder = { version, hash }: pkgs.libtommath.overrideAttrs (final: prev: rec { - makefile = "makefile.unix"; - # version = if version != null then version else prev.version; - version = "1.3.0"; - src = pkgs.fetchurl { - url = "https://github.com/libtom/libtommath/releases/download/v${version}/ltm-${version}.tar.xz"; - # hash = if hash != null then hash else prev.hash; - hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg"; + gcryptShimBuilder = + { version, hash }: + import ./nix/gcryptshim.nix { + inherit pkgs libgpg-error; + libgcrypt = libgcryptBuilder { inherit version hash; }; }; - patches = ( prev.patches or [] ) ++ [ - # NOTE: LibTomMath does not expose the lib, when built statically (using `makefile and not `makefile.shared`). - # This patch copies the necessary code from `makefile.shared`. - ./nix/libtommath-pkgconfig-for-static-build.patch - ]; - }); - nettleBuilder = { version, tag, hash }: pkgs.nettle.overrideAttrs (final: prev: { - configureFlags = ( prev.configureFlags or [] ) ++ [ "--enable-static" ]; - src = if version == null then prev.src else pkgs.fetchurl { - url = "mirror://gnu/nettle/nettle-${version}.tar.gz"; - inherit hash; + mbedtlsShimBuilder = + { version, hash }: + import ./nix/mbedtlsshim.nix { + inherit pkgs; + mbedtls = (mbedtlsBuilder { inherit version hash; }); }; - }); - cryptoppBuilder = { version, hash }: (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs (final: prev: { - src = if version == null then prev.src else - pkgs.fetchFromGitHub { - owner = "weidai11"; - repo = "cryptopp"; - rev = "CRYPTOPP_${version}"; - inherit hash; + ippcpShimBuilder = + { version, hash }: + import ./nix/ippcpshim.nix { + pkgs = pkgs; + ipp-crypto = (ipp-cryptoBuilder { inherit version hash; }); }; - }); - libresslBuilder = { version, hash }: (pkgs.libressl.override { buildShared = false; } ).overrideAttrs (final: prev: rec { - - src = if version == null then prev.src else pkgs.fetchurl { - url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; - inherit hash; + nettleShimBuilder = + { + version, + tag, + hash, + }: + import ./nix/nettleshim.nix { + inherit pkgs gmp; + nettle = (nettleBuilder { inherit version tag hash; }); }; - patches = [ - (pkgs.fetchpatch { - url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; - includes = [ "tests/tlstest.sh" ]; - hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; - }) - ]; - - # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. - # This is not needed for building the individual shims through Nix, as libresslShim build env does not - # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple - # lib shims are built alongside each other. - postFixup = pkgs.lib.concatLines [ - ( prev.postFixup or "" ) - '' - cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc - sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc - ln -s $out/lib/libcrypto.so $out/lib/libresslcrypto.so - ln -s $out/lib/libcrypto.a $out/lib/libresslcrypto.a - '' - ]; - - }); - gmp = pkgs.gmp.override { withStatic = true; }; - - # Custom added packages - wolfcryptjni = with customPkgs; wolfcrypt-jni.overrideAttrs (final: prev: { - src = pkgs.fetchFromGitHub { - owner = "wolfSSL"; - repo = "wolfcrypt-jni"; - rev = "0497ee767c994775beda2f2091009593961e5c7e"; - hash = "sha256-mtUXUyIKJ617WzAWjlOaMscWM7zuGBISVMEAbmQNBOg="; + libresslShimBuilder = + { version, hash }: + import ./nix/libresslshim.nix { + inherit pkgs; + libressl = (libresslBuilder { inherit version hash; }); }; - }); - - # Shims and libs - # Current list of targets: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl - tomcryptShimBuilder = { tcVersion, tcHash, tmVersion, tmHash}: pkgs.callPackage ./nix/tomcryptshim.nix { - inherit pkgs; - libtomcrypt = ( libtomcryptBuilder { inherit tcVersion tcHash tmVersion tmHash; }); - libtommath = ( libtommathBuilder { version = tmVersion; hash = tmHash; }); - }; - botanShimBuilder = { version, source_extension, hash }: pkgs.callPackage ./nix/botanshim.nix { botan2 = botan2Builder { inherit version source_extension hash; }; }; - cryptoppShimBuilder = { version, hash}: pkgs.callPackage ./nix/cryptoppshim.nix { cryptopp = cryptoppBuilder { inherit version hash; };}; - opensslShimBuilder = { version, hash }: import ./nix/opensslshim.nix { inherit pkgs; openssl = (opensslBuilder { version = version; hash = hash;}); }; - boringsslShimBuilder = { rev, hash }: import ./nix/boringsslshim.nix { inherit pkgs; boringssl = ( boringsslBuilder { inherit rev hash; }); }; - gcryptShimBuilder = { version, hash}: import ./nix/gcryptshim.nix { inherit pkgs libgpg-error; libgcrypt = libgcryptBuilder { inherit version hash; }; }; - mbedtlsShimBuilder = { version, hash }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = ( mbedtlsBuilder { inherit version hash; }); }; - ippcpShimBuilder = { version, hash }: import ./nix/ippcpshim.nix { pkgs = pkgs; ipp-crypto = ( ipp-cryptoBuilder { inherit version hash; }); }; - nettleShimBuilder = { version, tag, hash }: import ./nix/nettleshim.nix { inherit pkgs gmp; nettle = ( nettleBuilder { inherit version tag hash; }); }; - libresslShimBuilder = { version, hash }: import ./nix/libresslshim.nix { inherit pkgs; libressl = ( libresslBuilder { inherit version hash; }); }; commonLibs = import ./nix/commonlibs.nix { pkgs = pkgs; }; - buildECTesterStandalone = { - tomcrypt ? { version = null; hash = null; }, - tommath ? { version = null; hash = null; }, - botan ? { version = null; source_extension = null; hash = null; }, - cryptopp ? { version = null; hash = null; }, - openssl ? { version = null; hash = null; }, - boringssl ? { rev = null; hash = null; }, - gcrypt ? { version = null; hash = null; }, - mbedtls ? { version = null; hash = null; }, - ippcp ? { version = null; hash = null; }, - nettle ? { version = null; tag = null; hash = null; }, - libressl ? { version = null; hash = null; }, - }: ( - let - tomcryptShim = tomcryptShimBuilder { - tcVersion = tomcrypt.version; - tcHash = tomcrypt.hash; - tmVersion = tommath.version; - tmHash = tommath.hash; - }; - opensslShim = (opensslShimBuilder { inherit (openssl) version hash; }); - botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; - cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; - boringsslShim = boringsslShimBuilder { inherit (boringssl) rev hash; }; - gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; - mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; - ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; - nettleShim = nettleShimBuilder { inherit (nettle) version tag hash; }; - libresslShim = libresslShimBuilder { inherit (libressl) version hash; }; - in - with pkgs; + buildECTesterStandalone = + { + tomcrypt ? { + version = null; + hash = null; + }, + tommath ? { + version = null; + hash = null; + }, + botan ? { + version = null; + source_extension = null; + hash = null; + }, + cryptopp ? { + version = null; + hash = null; + }, + openssl ? { + version = null; + hash = null; + }, + boringssl ? { + rev = null; + hash = null; + }, + gcrypt ? { + version = null; + hash = null; + }, + mbedtls ? { + version = null; + hash = null; + }, + ippcp ? { + version = null; + hash = null; + }, + nettle ? { + version = null; + tag = null; + hash = null; + }, + libressl ? { + version = null; + hash = null; + }, + }: + ( + let + tomcryptShim = tomcryptShimBuilder { + tcVersion = tomcrypt.version; + tcHash = tomcrypt.hash; + tmVersion = tommath.version; + tmHash = tommath.hash; + }; + opensslShim = (opensslShimBuilder { inherit (openssl) version hash; }); + botanShim = botanShimBuilder { inherit (botan) version source_extension hash; }; + cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; + boringsslShim = boringsslShimBuilder { inherit (boringssl) rev hash; }; + gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; + mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; + ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; + nettleShim = nettleShimBuilder { inherit (nettle) version tag hash; }; + libresslShim = libresslShimBuilder { inherit (libressl) version hash; }; + in + with pkgs; gradle2nix.builders.${system}.buildGradlePackage rec { pname = "ECTesterStandalone"; version = "0.3.3"; lockFile = ./gradle.lock; # NOTE: the shims are built separately, therefore no need to call build `libs` target - gradleBuildFlags = [ ":standalone:uberJar"]; + gradleBuildFlags = [ ":standalone:uberJar" ]; src = ./.; jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; @@ -300,7 +531,8 @@ --set LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:$LD_LIBRARY_PATH ''; - }); + } + ); in { packages = rec { @@ -316,110 +548,112 @@ nettle = pkgs.callPackage ./nix/nettle_pkg_versions.nix { inherit buildECTesterStandalone; }; libressl = pkgs.callPackage ./nix/libressl_pkg_versions.nix { inherit buildECTesterStandalone; }; - fetchReleases = with pkgs.python3Packages; buildPythonApplication { - pname = "fetchReleases"; - version = "0.1.0"; - format = "other"; + fetchReleases = + with pkgs.python3Packages; + buildPythonApplication { + pname = "fetchReleases"; + version = "0.1.0"; + format = "other"; + + propagatedBuildInputs = [ + jinja2 + requests + beautifulsoup4 + ]; - propagatedBuildInputs = [ - jinja2 - requests - beautifulsoup4 - ]; + src = ./fetchReleases.py; + dontUnpack = true; + installPhase = '' + install -Dm755 $src $out/bin/$pname + ''; - src = ./fetchReleases.py; - dontUnpack = true; - installPhase = '' - install -Dm755 $src $out/bin/$pname + }; + + }; + devShells.default = + with pkgs; + mkShell rec { + nativeBuildInputs = [ pkg-config ]; + + preConfigure = '' + cp ${boringssl}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ ''; - }; + buildInputs = [ + # # gradle2nix + # libresslShim + gdb + ant + jdk17 + pkg-config + global-platform-pro + gradle + # libraries to test + (opensslBuilder { }) + libressl + # glibc + boringssl + libtomcrypt + libtommath + botan2 + cryptopp + + # libraries' dependencies + cmake + ninja + gawk + automake + go + gtest + libunwind + autoconf + libb64 + + # clang + libgcrypt + libgpg-error + mbedtls + nasm + libtool + perl + + wolfssl + nettle + # libressl + + customPkgs.ipp-crypto + + gmp + libgpg-error + wget + libconfig + ]; - }; - devShells.default = with pkgs; mkShell rec { - nativeBuildInputs = [ - pkg-config - ]; - - preConfigure = '' - cp ${boringssl}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - ''; - - buildInputs = [ - # # gradle2nix - # libresslShim - gdb - ant - jdk17 - pkg-config - global-platform-pro - gradle - # libraries to test - (opensslBuilder {}) - libressl - # glibc - boringssl - libtomcrypt - libtommath - botan2 - cryptopp - - # libraries' dependencies - cmake - ninja - gawk - automake - go - gtest - libunwind - autoconf - libb64 - - # clang - libgcrypt - libgpg-error - mbedtls - nasm - libtool - perl - - wolfssl - nettle - # libressl - - customPkgs.ipp-crypto - - gmp - libgpg-error - wget - libconfig - ]; - - LD_LIBRARY_PATH = with pkgs; pkgs.lib.makeLibraryPath [ - libtommath - libtomcrypt - botan2 - cryptopp - (opensslBuilder {}) - boringssl - libgcrypt - libgpg-error - nettle - gmp - libgpg-error - libconfig - wolfcryptjni - ]; - - BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; - WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; - - - IPP_CRYPTO_HEADER = "${customPkgs.ipp-crypto.dev}/include"; - IPP_CRYPTO_LIB = "${customPkgs.ipp-crypto}/lib/"; + LD_LIBRARY_PATH = + with pkgs; + pkgs.lib.makeLibraryPath [ + libtommath + libtomcrypt + botan2 + cryptopp + (opensslBuilder { }) + boringssl + libgcrypt + libgpg-error + nettle + gmp + libgpg-error + libconfig + wolfcryptjni + ]; + BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; + WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; - }; + IPP_CRYPTO_HEADER = "${customPkgs.ipp-crypto.dev}/include"; + IPP_CRYPTO_LIB = "${customPkgs.ipp-crypto}/lib/"; + + }; } ); } diff --git a/nix/boringssl_pkg_versions.nix b/nix/boringssl_pkg_versions.nix index 1979814..87e9519 100644 --- a/nix/boringssl_pkg_versions.nix +++ b/nix/boringssl_pkg_versions.nix @@ -1,305 +1,603 @@ -{ - buildECTesterStandalone -}: +{ buildECTesterStandalone }: { r5af122c3 = buildECTesterStandalone { - boringssl = { rev="5af122c3dfc163b5d1859f1f450756e8e320a142"; hash="sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk="; }; + boringssl = { + rev = "5af122c3dfc163b5d1859f1f450756e8e320a142"; + hash = "sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk="; + }; }; r1e8c35af = buildECTesterStandalone { - boringssl = { rev="1e8c35af5363c21f0f349b4e570dcccfb9ec3f74"; hash="sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI="; }; + boringssl = { + rev = "1e8c35af5363c21f0f349b4e570dcccfb9ec3f74"; + hash = "sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI="; + }; }; r14a2f35b = buildECTesterStandalone { - boringssl = { rev="14a2f35b6e06756902eaa7e188a25895721055fc"; hash="sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw="; }; + boringssl = { + rev = "14a2f35b6e06756902eaa7e188a25895721055fc"; + hash = "sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw="; + }; }; re23fe9b6 = buildECTesterStandalone { - boringssl = { rev="e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6"; hash="sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ="; }; + boringssl = { + rev = "e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6"; + hash = "sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ="; + }; }; r7a6e828d = buildECTesterStandalone { - boringssl = { rev="7a6e828dc53ba9a56bd49915f2a0780d63af97d2"; hash="sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk="; }; + boringssl = { + rev = "7a6e828dc53ba9a56bd49915f2a0780d63af97d2"; + hash = "sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk="; + }; }; r9cffd74f = buildECTesterStandalone { - boringssl = { rev="9cffd74fdb65c69506a0ce1b19420a67ad0cb19e"; hash="sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4="; }; + boringssl = { + rev = "9cffd74fdb65c69506a0ce1b19420a67ad0cb19e"; + hash = "sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4="; + }; }; r82f9853f = buildECTesterStandalone { - boringssl = { rev="82f9853fc7d7360ae44f1e1357a6422c5244bbd8"; hash="sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY="; }; + boringssl = { + rev = "82f9853fc7d7360ae44f1e1357a6422c5244bbd8"; + hash = "sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY="; + }; }; r9b3ef1b3 = buildECTesterStandalone { - boringssl = { rev="9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3"; hash="sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE="; }; + boringssl = { + rev = "9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3"; + hash = "sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE="; + }; }; r096ded9f = buildECTesterStandalone { - boringssl = { rev="096ded9f097b73a15956b04cd168c7cfe7e28f52"; hash="sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo="; }; + boringssl = { + rev = "096ded9f097b73a15956b04cd168c7cfe7e28f52"; + hash = "sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo="; + }; }; rd274b1ba = buildECTesterStandalone { - boringssl = { rev="d274b1bacdca36f3941bf78e43dc38acf676a1a8"; hash="sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; }; + boringssl = { + rev = "d274b1bacdca36f3941bf78e43dc38acf676a1a8"; + hash = "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; + }; }; rb34976ca = buildECTesterStandalone { - boringssl = { rev="b34976cae99f8d1b864dbab31e20fc00d06acb09"; hash="sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo="; }; + boringssl = { + rev = "b34976cae99f8d1b864dbab31e20fc00d06acb09"; + hash = "sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo="; + }; }; r77ef86d0 = buildECTesterStandalone { - boringssl = { rev="77ef86d0431ec3ceea503b0c59888942fd35b035"; hash="sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M="; }; + boringssl = { + rev = "77ef86d0431ec3ceea503b0c59888942fd35b035"; + hash = "sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M="; + }; }; r8934b1ef = buildECTesterStandalone { - boringssl = { rev="8934b1ef0857bc08626a2206a6f5f718942c14fc"; hash="sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0="; }; + boringssl = { + rev = "8934b1ef0857bc08626a2206a6f5f718942c14fc"; + hash = "sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0="; + }; }; r7c2b62e9 = buildECTesterStandalone { - boringssl = { rev="7c2b62e93487b772990fddc1905f22d4cfaee4a4"; hash="sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4="; }; + boringssl = { + rev = "7c2b62e93487b772990fddc1905f22d4cfaee4a4"; + hash = "sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4="; + }; }; r12f0f4be = buildECTesterStandalone { - boringssl = { rev="12f0f4bec2a6db53a53748dd6001d1aacaae26ba"; hash="sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw="; }; + boringssl = { + rev = "12f0f4bec2a6db53a53748dd6001d1aacaae26ba"; + hash = "sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw="; + }; }; rca2eba6a = buildECTesterStandalone { - boringssl = { rev="ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa"; hash="sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8="; }; + boringssl = { + rev = "ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa"; + hash = "sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8="; + }; }; rf01108e4 = buildECTesterStandalone { - boringssl = { rev="f01108e4761e1d4189cb134322c3cb01dc71ef87"; hash="sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; }; + boringssl = { + rev = "f01108e4761e1d4189cb134322c3cb01dc71ef87"; + hash = "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; + }; }; r26468aea = buildECTesterStandalone { - boringssl = { rev="26468aea6483135b156fb03a5693c495dbad2e0f"; hash="sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE="; }; + boringssl = { + rev = "26468aea6483135b156fb03a5693c495dbad2e0f"; + hash = "sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE="; + }; }; r7811fdc9 = buildECTesterStandalone { - boringssl = { rev="7811fdc94b7ec146937e83f98d411157974ffa32"; hash="sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; }; + boringssl = { + rev = "7811fdc94b7ec146937e83f98d411157974ffa32"; + hash = "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; + }; }; r45db24b3 = buildECTesterStandalone { - boringssl = { rev="45db24b36a030ec54464ea7a26c362f3c82305ee"; hash="sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0="; }; + boringssl = { + rev = "45db24b36a030ec54464ea7a26c362f3c82305ee"; + hash = "sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0="; + }; }; r45b24641 = buildECTesterStandalone { - boringssl = { rev="45b2464158379f48cec6e35a1ef503ddea1511a6"; hash="sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY="; }; + boringssl = { + rev = "45b2464158379f48cec6e35a1ef503ddea1511a6"; + hash = "sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY="; + }; }; r2fcdd11f = buildECTesterStandalone { - boringssl = { rev="2fcdd11f6d33b667968a5bc5147e2ba83a2082b8"; hash="sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA="; }; + boringssl = { + rev = "2fcdd11f6d33b667968a5bc5147e2ba83a2082b8"; + hash = "sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA="; + }; }; r6c98ebeb = buildECTesterStandalone { - boringssl = { rev="6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec"; hash="sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI="; }; + boringssl = { + rev = "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec"; + hash = "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI="; + }; }; rd1e6d3b4 = buildECTesterStandalone { - boringssl = { rev="d1e6d3b4af50c9490cc6210e2763b3c45ba14b07"; hash="sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo="; }; + boringssl = { + rev = "d1e6d3b4af50c9490cc6210e2763b3c45ba14b07"; + hash = "sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo="; + }; }; r84dc9bb6 = buildECTesterStandalone { - boringssl = { rev="84dc9bb624b47bda0bf802ae9e04a6eecb40865c"; hash="sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo="; }; + boringssl = { + rev = "84dc9bb624b47bda0bf802ae9e04a6eecb40865c"; + hash = "sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo="; + }; }; r67422ed4 = buildECTesterStandalone { - boringssl = { rev="67422ed4434116daa8898773692165ddd51a6ac2"; hash="sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc="; }; + boringssl = { + rev = "67422ed4434116daa8898773692165ddd51a6ac2"; + hash = "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc="; + }; }; rc6c0b650 = buildECTesterStandalone { - boringssl = { rev="c6c0b650091e90e6206a361c14a73223f54d42c1"; hash="sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg="; }; + boringssl = { + rev = "c6c0b650091e90e6206a361c14a73223f54d42c1"; + hash = "sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg="; + }; }; r66d274df = buildECTesterStandalone { - boringssl = { rev="66d274dfbab9e4f84599f06504987c418ca087d9"; hash="sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0="; }; + boringssl = { + rev = "66d274dfbab9e4f84599f06504987c418ca087d9"; + hash = "sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0="; + }; }; re1d209d4 = buildECTesterStandalone { - boringssl = { rev="e1d209d4432846d28c31d84f269f4edcb9a63509"; hash="sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg="; }; + boringssl = { + rev = "e1d209d4432846d28c31d84f269f4edcb9a63509"; + hash = "sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg="; + }; }; r9cac8a6b = buildECTesterStandalone { - boringssl = { rev="9cac8a6b38c1cbd45c77aee108411d588da006fe"; hash="sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs="; }; + boringssl = { + rev = "9cac8a6b38c1cbd45c77aee108411d588da006fe"; + hash = "sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs="; + }; }; r11acdc6a = buildECTesterStandalone { - boringssl = { rev="11acdc6abf13cc8139c30ac9455840a347793110"; hash="sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y="; }; + boringssl = { + rev = "11acdc6abf13cc8139c30ac9455840a347793110"; + hash = "sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y="; + }; }; r962432c6 = buildECTesterStandalone { - boringssl = { rev="962432c687f67f8df1aa6e3dd364fbc88fea4ed8"; hash="sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ="; }; + boringssl = { + rev = "962432c687f67f8df1aa6e3dd364fbc88fea4ed8"; + hash = "sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ="; + }; }; ra220a602 = buildECTesterStandalone { - boringssl = { rev="a220a6024f66c123019b5c080f6bd8bcaf75448c"; hash="sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0="; }; + boringssl = { + rev = "a220a6024f66c123019b5c080f6bd8bcaf75448c"; + hash = "sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0="; + }; }; ra6c42d68 = buildECTesterStandalone { - boringssl = { rev="a6c42d6810ea5317fe8ed85704c097cd8f3513ca"; hash="sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ="; }; + boringssl = { + rev = "a6c42d6810ea5317fe8ed85704c097cd8f3513ca"; + hash = "sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ="; + }; }; r56fb43a2 = buildECTesterStandalone { - boringssl = { rev="56fb43a204e57af68e00f4561c108a7004381aa3"; hash="sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY="; }; + boringssl = { + rev = "56fb43a204e57af68e00f4561c108a7004381aa3"; + hash = "sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY="; + }; }; r29223ac3 = buildECTesterStandalone { - boringssl = { rev="29223ac349c144a4d0babc281644c0410dd1e313"; hash="sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ="; }; + boringssl = { + rev = "29223ac349c144a4d0babc281644c0410dd1e313"; + hash = "sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ="; + }; }; re2a801f6 = buildECTesterStandalone { - boringssl = { rev="e2a801f688dbdfac8fde90b849b1bf75f80b466c"; hash="sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs="; }; + boringssl = { + rev = "e2a801f688dbdfac8fde90b849b1bf75f80b466c"; + hash = "sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs="; + }; }; r39dd1e3c = buildECTesterStandalone { - boringssl = { rev="39dd1e3c904341ac14da80224d72a77d95501ad4"; hash="sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4="; }; + boringssl = { + rev = "39dd1e3c904341ac14da80224d72a77d95501ad4"; + hash = "sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4="; + }; }; r1385dbd5 = buildECTesterStandalone { - boringssl = { rev="1385dbd51dc2eeba39076687a6c9e45c7dc8965c"; hash="sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk="; }; + boringssl = { + rev = "1385dbd51dc2eeba39076687a6c9e45c7dc8965c"; + hash = "sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk="; + }; }; r2bc9245e = buildECTesterStandalone { - boringssl = { rev="2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a"; hash="sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM="; }; + boringssl = { + rev = "2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a"; + hash = "sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM="; + }; }; ra055b938 = buildECTesterStandalone { - boringssl = { rev="a055b93845a1b2a910919e21920e4bd1ce900841"; hash="sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI="; }; + boringssl = { + rev = "a055b93845a1b2a910919e21920e4bd1ce900841"; + hash = "sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI="; + }; }; rdec5989b = buildECTesterStandalone { - boringssl = { rev="dec5989b793c56ad4dd32173bd2d8595ca78b398"; hash="sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI="; }; + boringssl = { + rev = "dec5989b793c56ad4dd32173bd2d8595ca78b398"; + hash = "sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI="; + }; }; rc1d9ac02 = buildECTesterStandalone { - boringssl = { rev="c1d9ac02514a138129872a036e3f8a1074dcb8bd"; hash="sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8="; }; + boringssl = { + rev = "c1d9ac02514a138129872a036e3f8a1074dcb8bd"; + hash = "sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8="; + }; }; re1a860c3 = buildECTesterStandalone { - boringssl = { rev="e1a860c3745c77cb83228dde1b73fa62eaf43930"; hash="sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs="; }; + boringssl = { + rev = "e1a860c3745c77cb83228dde1b73fa62eaf43930"; + hash = "sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs="; + }; }; rfb1c75ca = buildECTesterStandalone { - boringssl = { rev="fb1c75caf8ba5d45a0f2c52facd36e4ad9289549"; hash="sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI="; }; + boringssl = { + rev = "fb1c75caf8ba5d45a0f2c52facd36e4ad9289549"; + hash = "sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI="; + }; }; re491eeb6 = buildECTesterStandalone { - boringssl = { rev="e491eeb610fcc69b98bc6d1ba08faf78655808f6"; hash="sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U="; }; + boringssl = { + rev = "e491eeb610fcc69b98bc6d1ba08faf78655808f6"; + hash = "sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U="; + }; }; ra11277e1 = buildECTesterStandalone { - boringssl = { rev="a11277e187e407d0ef403b8a60d9a32eaab7d301"; hash="sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo="; }; + boringssl = { + rev = "a11277e187e407d0ef403b8a60d9a32eaab7d301"; + hash = "sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo="; + }; }; r25cf1bb9 = buildECTesterStandalone { - boringssl = { rev="25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016"; hash="sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk="; }; + boringssl = { + rev = "25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016"; + hash = "sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk="; + }; }; rc8100f0f = buildECTesterStandalone { - boringssl = { rev="c8100f0f0d05c5185d58113e12a867ae0771a6c9"; hash="sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q="; }; + boringssl = { + rev = "c8100f0f0d05c5185d58113e12a867ae0771a6c9"; + hash = "sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q="; + }; }; r1eda2363 = buildECTesterStandalone { - boringssl = { rev="1eda2363f9e79aaa5febe91d31b6756ae4f24f30"; hash="sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g="; }; + boringssl = { + rev = "1eda2363f9e79aaa5febe91d31b6756ae4f24f30"; + hash = "sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g="; + }; }; r261579f0 = buildECTesterStandalone { - boringssl = { rev="261579f08b2f8aa7959670df1e928c1c305a632c"; hash="sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg="; }; + boringssl = { + rev = "261579f08b2f8aa7959670df1e928c1c305a632c"; + hash = "sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg="; + }; }; r9540c045 = buildECTesterStandalone { - boringssl = { rev="9540c0452343e684f94515288880b6b35655f792"; hash="sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk="; }; + boringssl = { + rev = "9540c0452343e684f94515288880b6b35655f792"; + hash = "sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk="; + }; }; red3f05a6 = buildECTesterStandalone { - boringssl = { rev="ed3f05a6794adfd39937d0027afefad8f6afcae9"; hash="sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc="; }; + boringssl = { + rev = "ed3f05a6794adfd39937d0027afefad8f6afcae9"; + hash = "sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc="; + }; }; r4a7815c9 = buildECTesterStandalone { - boringssl = { rev="4a7815c94077eebb3546fc287d1fa0e1356a2cd0"; hash="sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8="; }; + boringssl = { + rev = "4a7815c94077eebb3546fc287d1fa0e1356a2cd0"; + hash = "sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8="; + }; }; r5326e94d = buildECTesterStandalone { - boringssl = { rev="5326e94dd188beba0a5e536b1d2723aee65bd85d"; hash="sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0="; }; + boringssl = { + rev = "5326e94dd188beba0a5e536b1d2723aee65bd85d"; + hash = "sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0="; + }; }; re09fcf83 = buildECTesterStandalone { - boringssl = { rev="e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e"; hash="sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE="; }; + boringssl = { + rev = "e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e"; + hash = "sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE="; + }; }; rafd52e91 = buildECTesterStandalone { - boringssl = { rev="afd52e91dfed27ab7193be040f067900947b14ac"; hash="sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo="; }; + boringssl = { + rev = "afd52e91dfed27ab7193be040f067900947b14ac"; + hash = "sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo="; + }; }; re95b0cad = buildECTesterStandalone { - boringssl = { rev="e95b0cad901abd49755d2a2a2f1f6c3e87d12b94"; hash="sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw="; }; + boringssl = { + rev = "e95b0cad901abd49755d2a2a2f1f6c3e87d12b94"; + hash = "sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw="; + }; }; r13aa2733 = buildECTesterStandalone { - boringssl = { rev="13aa27338663c62600249ece54c94f180d57bbb7"; hash="sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds="; }; + boringssl = { + rev = "13aa27338663c62600249ece54c94f180d57bbb7"; + hash = "sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds="; + }; }; r03982b4c = buildECTesterStandalone { - boringssl = { rev="03982b4cfadca0e650b384c9539b2fdb5f8aa012"; hash="sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg="; }; + boringssl = { + rev = "03982b4cfadca0e650b384c9539b2fdb5f8aa012"; + hash = "sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg="; + }; }; r273a920f = buildECTesterStandalone { - boringssl = { rev="273a920f84e8b0b258737cea0f2f24627e8c5ed9"; hash="sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ="; }; + boringssl = { + rev = "273a920f84e8b0b258737cea0f2f24627e8c5ed9"; + hash = "sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ="; + }; }; r9f7f4d03 = buildECTesterStandalone { - boringssl = { rev="9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d"; hash="sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw="; }; + boringssl = { + rev = "9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d"; + hash = "sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw="; + }; }; rd7278ceb = buildECTesterStandalone { - boringssl = { rev="d7278cebad5b8eda0901246f2215344cffece4f4"; hash="sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA="; }; + boringssl = { + rev = "d7278cebad5b8eda0901246f2215344cffece4f4"; + hash = "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA="; + }; }; rbfcab2aa = buildECTesterStandalone { - boringssl = { rev="bfcab2aa518899ce71e7ffbc23bb22c4ef51858f"; hash="sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY="; }; + boringssl = { + rev = "bfcab2aa518899ce71e7ffbc23bb22c4ef51858f"; + hash = "sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY="; + }; }; r68c29a24 = buildECTesterStandalone { - boringssl = { rev="68c29a24ee6c9c70ecce56766ca70b115aad768f"; hash="sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo="; }; + boringssl = { + rev = "68c29a24ee6c9c70ecce56766ca70b115aad768f"; + hash = "sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo="; + }; }; rde6ba216 = buildECTesterStandalone { - boringssl = { rev="de6ba216656b819d4d8de7602006561f82a8c669"; hash="sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4="; }; + boringssl = { + rev = "de6ba216656b819d4d8de7602006561f82a8c669"; + hash = "sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4="; + }; }; r29c9e64c = buildECTesterStandalone { - boringssl = { rev="29c9e64ce548ff8278e9d98aa53f611f115c2bed"; hash="sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4="; }; + boringssl = { + rev = "29c9e64ce548ff8278e9d98aa53f611f115c2bed"; + hash = "sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4="; + }; }; r58745d61 = buildECTesterStandalone { - boringssl = { rev="58745d61afe244a37941d391f5dec3ab08f5cf2c"; hash="sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ="; }; + boringssl = { + rev = "58745d61afe244a37941d391f5dec3ab08f5cf2c"; + hash = "sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ="; + }; }; rc798e3a5 = buildECTesterStandalone { - boringssl = { rev="c798e3a54912a1bfbf1c846630e2bb86e9b543a7"; hash="sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig="; }; + boringssl = { + rev = "c798e3a54912a1bfbf1c846630e2bb86e9b543a7"; + hash = "sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig="; + }; }; rba62c812 = buildECTesterStandalone { - boringssl = { rev="ba62c812f01fb379f49f94a08a2d1282ce46e678"; hash="sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU="; }; + boringssl = { + rev = "ba62c812f01fb379f49f94a08a2d1282ce46e678"; + hash = "sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU="; + }; }; r2fb5f9cb = buildECTesterStandalone { - boringssl = { rev="2fb5f9cb8feec2234952f6999af941ac48555710"; hash="sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8="; }; + boringssl = { + rev = "2fb5f9cb8feec2234952f6999af941ac48555710"; + hash = "sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8="; + }; }; rd477c0d7 = buildECTesterStandalone { - boringssl = { rev="d477c0d7c40ddca3a64ae26fc02d2dac175836d3"; hash="sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag="; }; + boringssl = { + rev = "d477c0d7c40ddca3a64ae26fc02d2dac175836d3"; + hash = "sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag="; + }; }; rc7019036 = buildECTesterStandalone { - boringssl = { rev="c70190368c7040c37c1d655f0690bcde2b109a0d"; hash="sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE="; }; + boringssl = { + rev = "c70190368c7040c37c1d655f0690bcde2b109a0d"; + hash = "sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE="; + }; }; r7662e58e = buildECTesterStandalone { - boringssl = { rev="7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2"; hash="sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4="; }; + boringssl = { + rev = "7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2"; + hash = "sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4="; + }; }; r0355048c = buildECTesterStandalone { - boringssl = { rev="0355048ce0302fdeb4744dae4b8a156a38496150"; hash="sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY="; }; + boringssl = { + rev = "0355048ce0302fdeb4744dae4b8a156a38496150"; + hash = "sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY="; + }; }; r3a01cba9 = buildECTesterStandalone { - boringssl = { rev="3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee"; hash="sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk="; }; + boringssl = { + rev = "3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee"; + hash = "sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk="; + }; }; r07f27b1d = buildECTesterStandalone { - boringssl = { rev="07f27b1d445a27433f2c871935da2cefcfbdb458"; hash="sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A="; }; + boringssl = { + rev = "07f27b1d445a27433f2c871935da2cefcfbdb458"; + hash = "sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A="; + }; }; rfc953df2 = buildECTesterStandalone { - boringssl = { rev="fc953df2352e1c1bcb34cb5f75a0e409014c1690"; hash="sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU="; }; + boringssl = { + rev = "fc953df2352e1c1bcb34cb5f75a0e409014c1690"; + hash = "sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU="; + }; }; r1a9edc3e = buildECTesterStandalone { - boringssl = { rev="1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba"; hash="sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI="; }; + boringssl = { + rev = "1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba"; + hash = "sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI="; + }; }; rb8912d71 = buildECTesterStandalone { - boringssl = { rev="b8912d713cb82a748bbe63f28f28b17632c70964"; hash="sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc="; }; + boringssl = { + rev = "b8912d713cb82a748bbe63f28f28b17632c70964"; + hash = "sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc="; + }; }; rb6bca9c6 = buildECTesterStandalone { - boringssl = { rev="b6bca9c6dde177f641137d2991aa677997c54c67"; hash="sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI="; }; + boringssl = { + rev = "b6bca9c6dde177f641137d2991aa677997c54c67"; + hash = "sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI="; + }; }; r03d1b7c5 = buildECTesterStandalone { - boringssl = { rev="03d1b7c544851d9f44df1e9ff21839742e08c819"; hash="sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA="; }; + boringssl = { + rev = "03d1b7c544851d9f44df1e9ff21839742e08c819"; + hash = "sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA="; + }; }; r6b36ad2b = buildECTesterStandalone { - boringssl = { rev="6b36ad2bd6001f17a997b7a1e0ab254b001438ef"; hash="sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY="; }; + boringssl = { + rev = "6b36ad2bd6001f17a997b7a1e0ab254b001438ef"; + hash = "sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY="; + }; }; r1d24e04c = buildECTesterStandalone { - boringssl = { rev="1d24e04c7143171ae2010c842e3e1438510fd1c0"; hash="sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc="; }; + boringssl = { + rev = "1d24e04c7143171ae2010c842e3e1438510fd1c0"; + hash = "sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc="; + }; }; r8a0da669 = buildECTesterStandalone { - boringssl = { rev="8a0da669a08b6c6b805fd7ec9d1e67694fda3711"; hash="sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc="; }; + boringssl = { + rev = "8a0da669a08b6c6b805fd7ec9d1e67694fda3711"; + hash = "sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc="; + }; }; r4d50a595 = buildECTesterStandalone { - boringssl = { rev="4d50a595b49a2e7b7017060a4d402c4ee9fe28a2"; hash="sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA="; }; + boringssl = { + rev = "4d50a595b49a2e7b7017060a4d402c4ee9fe28a2"; + hash = "sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA="; + }; }; rd34f540e = buildECTesterStandalone { - boringssl = { rev="d34f540e57394de22a1599c3c5d852519d388d6c"; hash="sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0="; }; + boringssl = { + rev = "d34f540e57394de22a1599c3c5d852519d388d6c"; + hash = "sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0="; + }; }; re7d76da9 = buildECTesterStandalone { - boringssl = { rev="e7d76da920a1bd79b6ebc77e75b407cdf0a58962"; hash="sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0="; }; + boringssl = { + rev = "e7d76da920a1bd79b6ebc77e75b407cdf0a58962"; + hash = "sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0="; + }; }; r3efe2eb9 = buildECTesterStandalone { - boringssl = { rev="3efe2eb9e3dfb49cb110c53e3430caeae4599f52"; hash="sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I="; }; + boringssl = { + rev = "3efe2eb9e3dfb49cb110c53e3430caeae4599f52"; + hash = "sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I="; + }; }; r35a91094 = buildECTesterStandalone { - boringssl = { rev="35a910949d684aea8b86a8c42db76c4f43e31a96"; hash="sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw="; }; + boringssl = { + rev = "35a910949d684aea8b86a8c42db76c4f43e31a96"; + hash = "sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw="; + }; }; r8e6aa7f3 = buildECTesterStandalone { - boringssl = { rev="8e6aa7f39f4357a6ad15944884f72db8d25b9dff"; hash="sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M="; }; + boringssl = { + rev = "8e6aa7f39f4357a6ad15944884f72db8d25b9dff"; + hash = "sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M="; + }; }; r7c44f450 = buildECTesterStandalone { - boringssl = { rev="7c44f450547cc777229462c2ac864a9326c0106c"; hash="sha256-snkPY4R9RKdCI0yUS3ICn4CHyXE9DKaYaHAggD2UAOk="; }; + boringssl = { + rev = "7c44f450547cc777229462c2ac864a9326c0106c"; + hash = "sha256-snkPY4R9RKdCI0yUS3ICn4CHyXE9DKaYaHAggD2UAOk="; + }; }; r6ab7c148 = buildECTesterStandalone { - boringssl = { rev="6ab7c1482bf4cdc91c87bc512aaf68ffb18975ec"; hash="sha256-+5ICkcKZRXCSC/y5d5Oo9WtcgdfkLZL/goGXE6V/9hE="; }; + boringssl = { + rev = "6ab7c1482bf4cdc91c87bc512aaf68ffb18975ec"; + hash = "sha256-+5ICkcKZRXCSC/y5d5Oo9WtcgdfkLZL/goGXE6V/9hE="; + }; }; rb17231cd = buildECTesterStandalone { - boringssl = { rev="b17231cdb9ec4e877b470c57d3280d9195811cd9"; hash="sha256-5G/wh35qlfGi6vHEj51QFyIryzKeTiGthfTe7tCWK8s="; }; + boringssl = { + rev = "b17231cdb9ec4e877b470c57d3280d9195811cd9"; + hash = "sha256-5G/wh35qlfGi6vHEj51QFyIryzKeTiGthfTe7tCWK8s="; + }; }; r3e89a7e8 = buildECTesterStandalone { - boringssl = { rev="3e89a7e8db8139db356b892ca9993172346c80cf"; hash="sha256-VsTll0A8FfNbObOnoFLah4BMuCzlLNbqOEgSbppQo7k="; }; + boringssl = { + rev = "3e89a7e8db8139db356b892ca9993172346c80cf"; + hash = "sha256-VsTll0A8FfNbObOnoFLah4BMuCzlLNbqOEgSbppQo7k="; + }; }; r8de798be = buildECTesterStandalone { - boringssl = { rev="8de798be4b850cf88ad2c50602abe2ca3bb285df"; hash="sha256-pQ8BTRMOjxLu8UoyTH23wYwy2pC29yZoCyl1c+94hyM="; }; + boringssl = { + rev = "8de798be4b850cf88ad2c50602abe2ca3bb285df"; + hash = "sha256-pQ8BTRMOjxLu8UoyTH23wYwy2pC29yZoCyl1c+94hyM="; + }; }; rd2e3212d = buildECTesterStandalone { - boringssl = { rev="d2e3212de29bac1ceed33ca8ab8bbff3f41a2459"; hash="sha256-HRa+IdVwchzjJh1Unx8wmu++eiFtY7ctdmwgjJqkx9Y="; }; + boringssl = { + rev = "d2e3212de29bac1ceed33ca8ab8bbff3f41a2459"; + hash = "sha256-HRa+IdVwchzjJh1Unx8wmu++eiFtY7ctdmwgjJqkx9Y="; + }; }; r783ae722 = buildECTesterStandalone { - boringssl = { rev="783ae722ed307a3b3782cd253fd4ffb387f38767"; hash="sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo="; }; + boringssl = { + rev = "783ae722ed307a3b3782cd253fd4ffb387f38767"; + hash = "sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo="; + }; }; r2db0eb3f = buildECTesterStandalone { - boringssl = { rev="2db0eb3f96a5756298dcd7f9319e56a98585bd10"; hash="sha256-+G7BcdtU8AeNMY4NLQgKpgF28/CS9FIjf+vaOd+Wf6o="; }; + boringssl = { + rev = "2db0eb3f96a5756298dcd7f9319e56a98585bd10"; + hash = "sha256-+G7BcdtU8AeNMY4NLQgKpgF28/CS9FIjf+vaOd+Wf6o="; + }; }; r70d05d5a = buildECTesterStandalone { - boringssl = { rev="70d05d5a34f6366116e2b0a530ea8d0186bb2a8e"; hash="sha256-aEtH4Efvt+zRGvUD9JAsBU+EfZySk8gU05fek5rbcbM="; }; + boringssl = { + rev = "70d05d5a34f6366116e2b0a530ea8d0186bb2a8e"; + hash = "sha256-aEtH4Efvt+zRGvUD9JAsBU+EfZySk8gU05fek5rbcbM="; + }; }; } diff --git a/nix/boringsslshim.nix b/nix/boringsslshim.nix index 3969381..a5e7fbd 100644 --- a/nix/boringsslshim.nix +++ b/nix/boringsslshim.nix @@ -1,8 +1,6 @@ -{ - pkgs - , boringssl -}: -with pkgs; stdenv.mkDerivation { +{ pkgs, boringssl }: +with pkgs; +stdenv.mkDerivation { name = "BoringSSLShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/botan_pkg_versions.nix b/nix/botan_pkg_versions.nix index 66b0db5..254bca9 100644 --- a/nix/botan_pkg_versions.nix +++ b/nix/botan_pkg_versions.nix @@ -1,122 +1,276 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v200 = buildECTesterStandalone { - botan = { version="2.0.0"; source_extension="tgz"; hash="sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="; }; - }; + botan = { + version = "2.0.0"; + source_extension = "tgz"; + hash = "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="; + }; + }; v201 = buildECTesterStandalone { - botan = { version="2.0.1"; source_extension="tgz"; hash="sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="; }; - }; + botan = { + version = "2.0.1"; + source_extension = "tgz"; + hash = "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="; + }; + }; v210 = buildECTesterStandalone { - botan = { version="2.1.0"; source_extension="tgz"; hash="sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="; }; - }; + botan = { + version = "2.1.0"; + source_extension = "tgz"; + hash = "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="; + }; + }; v2100 = buildECTesterStandalone { - botan = { version="2.10.0"; source_extension="tgz"; hash="sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="; }; - }; + botan = { + version = "2.10.0"; + source_extension = "tgz"; + hash = "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="; + }; + }; v2110 = buildECTesterStandalone { - botan = { version="2.11.0"; source_extension="tar.xz"; hash="sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4="; }; - }; + botan = { + version = "2.11.0"; + source_extension = "tar.xz"; + hash = "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4="; + }; + }; v2120 = buildECTesterStandalone { - botan = { version="2.12.0"; source_extension="tar.xz"; hash="sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM="; }; - }; + botan = { + version = "2.12.0"; + source_extension = "tar.xz"; + hash = "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM="; + }; + }; v2121 = buildECTesterStandalone { - botan = { version="2.12.1"; source_extension="tar.xz"; hash="sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk="; }; - }; + botan = { + version = "2.12.1"; + source_extension = "tar.xz"; + hash = "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk="; + }; + }; v2130 = buildECTesterStandalone { - botan = { version="2.13.0"; source_extension="tar.xz"; hash="sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA="; }; - }; + botan = { + version = "2.13.0"; + source_extension = "tar.xz"; + hash = "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA="; + }; + }; v2140 = buildECTesterStandalone { - botan = { version="2.14.0"; source_extension="tar.xz"; hash="sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU="; }; - }; + botan = { + version = "2.14.0"; + source_extension = "tar.xz"; + hash = "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU="; + }; + }; v2150 = buildECTesterStandalone { - botan = { version="2.15.0"; source_extension="tar.xz"; hash="sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk="; }; - }; + botan = { + version = "2.15.0"; + source_extension = "tar.xz"; + hash = "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk="; + }; + }; v2160 = buildECTesterStandalone { - botan = { version="2.16.0"; source_extension="tar.xz"; hash="sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig="; }; - }; + botan = { + version = "2.16.0"; + source_extension = "tar.xz"; + hash = "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig="; + }; + }; v2170 = buildECTesterStandalone { - botan = { version="2.17.0"; source_extension="tar.xz"; hash="sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M="; }; - }; + botan = { + version = "2.17.0"; + source_extension = "tar.xz"; + hash = "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M="; + }; + }; v2171 = buildECTesterStandalone { - botan = { version="2.17.1"; source_extension="tar.xz"; hash="sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME="; }; - }; + botan = { + version = "2.17.1"; + source_extension = "tar.xz"; + hash = "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME="; + }; + }; v2172 = buildECTesterStandalone { - botan = { version="2.17.2"; source_extension="tar.xz"; hash="sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw="; }; - }; + botan = { + version = "2.17.2"; + source_extension = "tar.xz"; + hash = "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw="; + }; + }; v2173 = buildECTesterStandalone { - botan = { version="2.17.3"; source_extension="tar.xz"; hash="sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g="; }; - }; + botan = { + version = "2.17.3"; + source_extension = "tar.xz"; + hash = "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g="; + }; + }; v2180 = buildECTesterStandalone { - botan = { version="2.18.0"; source_extension="tar.xz"; hash="sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc="; }; - }; + botan = { + version = "2.18.0"; + source_extension = "tar.xz"; + hash = "sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc="; + }; + }; v2181 = buildECTesterStandalone { - botan = { version="2.18.1"; source_extension="tar.xz"; hash="sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik="; }; - }; + botan = { + version = "2.18.1"; + source_extension = "tar.xz"; + hash = "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik="; + }; + }; v2182 = buildECTesterStandalone { - botan = { version="2.18.2"; source_extension="tar.xz"; hash="sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4="; }; - }; + botan = { + version = "2.18.2"; + source_extension = "tar.xz"; + hash = "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4="; + }; + }; v2190 = buildECTesterStandalone { - botan = { version="2.19.0"; source_extension="tar.xz"; hash="sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs="; }; - }; + botan = { + version = "2.19.0"; + source_extension = "tar.xz"; + hash = "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs="; + }; + }; v2191 = buildECTesterStandalone { - botan = { version="2.19.1"; source_extension="tar.xz"; hash="sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA="; }; - }; + botan = { + version = "2.19.1"; + source_extension = "tar.xz"; + hash = "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA="; + }; + }; v2192 = buildECTesterStandalone { - botan = { version="2.19.2"; source_extension="tar.xz"; hash="sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU="; }; - }; + botan = { + version = "2.19.2"; + source_extension = "tar.xz"; + hash = "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU="; + }; + }; v2193 = buildECTesterStandalone { - botan = { version="2.19.3"; source_extension="tar.xz"; hash="sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU="; }; - }; + botan = { + version = "2.19.3"; + source_extension = "tar.xz"; + hash = "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU="; + }; + }; v2194 = buildECTesterStandalone { - botan = { version="2.19.4"; source_extension="tar.xz"; hash="sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY="; }; - }; + botan = { + version = "2.19.4"; + source_extension = "tar.xz"; + hash = "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY="; + }; + }; v2195 = buildECTesterStandalone { - botan = { version="2.19.5"; source_extension="tar.xz"; hash="sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ="; }; - }; + botan = { + version = "2.19.5"; + source_extension = "tar.xz"; + hash = "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ="; + }; + }; v220 = buildECTesterStandalone { - botan = { version="2.2.0"; source_extension="tgz"; hash="sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ="; }; - }; + botan = { + version = "2.2.0"; + source_extension = "tgz"; + hash = "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ="; + }; + }; v230 = buildECTesterStandalone { - botan = { version="2.3.0"; source_extension="tgz"; hash="sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw="; }; - }; + botan = { + version = "2.3.0"; + source_extension = "tgz"; + hash = "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw="; + }; + }; v240 = buildECTesterStandalone { - botan = { version="2.4.0"; source_extension="tgz"; hash="sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU="; }; - }; + botan = { + version = "2.4.0"; + source_extension = "tgz"; + hash = "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU="; + }; + }; v250 = buildECTesterStandalone { - botan = { version="2.5.0"; source_extension="tgz"; hash="sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs="; }; - }; + botan = { + version = "2.5.0"; + source_extension = "tgz"; + hash = "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs="; + }; + }; v260 = buildECTesterStandalone { - botan = { version="2.6.0"; source_extension="tgz"; hash="sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU="; }; - }; + botan = { + version = "2.6.0"; + source_extension = "tgz"; + hash = "sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU="; + }; + }; v270 = buildECTesterStandalone { - botan = { version="2.7.0"; source_extension="tgz"; hash="sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA="; }; - }; + botan = { + version = "2.7.0"; + source_extension = "tgz"; + hash = "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA="; + }; + }; v280 = buildECTesterStandalone { - botan = { version="2.8.0"; source_extension="tgz"; hash="sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA="; }; - }; + botan = { + version = "2.8.0"; + source_extension = "tgz"; + hash = "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA="; + }; + }; v290 = buildECTesterStandalone { - botan = { version="2.9.0"; source_extension="tgz"; hash="sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk="; }; - }; + botan = { + version = "2.9.0"; + source_extension = "tgz"; + hash = "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk="; + }; + }; v300 = buildECTesterStandalone { - botan = { version="3.0.0"; source_extension="tar.xz"; hash="sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc="; }; - }; + botan = { + version = "3.0.0"; + source_extension = "tar.xz"; + hash = "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc="; + }; + }; v310 = buildECTesterStandalone { - botan = { version="3.1.0"; source_extension="tar.xz"; hash="sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4="; }; - }; + botan = { + version = "3.1.0"; + source_extension = "tar.xz"; + hash = "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4="; + }; + }; v311 = buildECTesterStandalone { - botan = { version="3.1.1"; source_extension="tar.xz"; hash="sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms="; }; - }; + botan = { + version = "3.1.1"; + source_extension = "tar.xz"; + hash = "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms="; + }; + }; v320 = buildECTesterStandalone { - botan = { version="3.2.0"; source_extension="tar.xz"; hash="sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM="; }; - }; + botan = { + version = "3.2.0"; + source_extension = "tar.xz"; + hash = "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM="; + }; + }; v330 = buildECTesterStandalone { - botan = { version="3.3.0"; source_extension="tar.xz"; hash="sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk="; }; - }; + botan = { + version = "3.3.0"; + source_extension = "tar.xz"; + hash = "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk="; + }; + }; v340 = buildECTesterStandalone { - botan = { version="3.4.0"; source_extension="tar.xz"; hash="sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc="; }; - }; + botan = { + version = "3.4.0"; + source_extension = "tar.xz"; + hash = "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc="; + }; + }; v350 = buildECTesterStandalone { - botan = { version="3.5.0"; source_extension="tar.xz"; hash="sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8="; }; - }; -} \ No newline at end of file + botan = { + version = "3.5.0"; + source_extension = "tar.xz"; + hash = "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8="; + }; + }; +} diff --git a/nix/botanshim.nix b/nix/botanshim.nix index 3711d1d..8688b20 100644 --- a/nix/botanshim.nix +++ b/nix/botanshim.nix @@ -1,9 +1,9 @@ -{ - stdenv - , botan2 - , pkg-config +{ + stdenv, + botan2, + pkg-config, # NOTE change to jdk17? - , jdk11_headless + jdk11_headless, }: stdenv.mkDerivation { name = "BotanShim"; diff --git a/nix/commonlibs.nix b/nix/commonlibs.nix index 525d4aa..dde4cca 100644 --- a/nix/commonlibs.nix +++ b/nix/commonlibs.nix @@ -1,7 +1,6 @@ -{ - pkgs -}: -with pkgs; stdenv.mkDerivation rec { +{ pkgs }: +with pkgs; +stdenv.mkDerivation rec { name = "Common Libraries"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/cryptopp_pkg_versions.nix b/nix/cryptopp_pkg_versions.nix index 781135b..a4b01e5 100644 --- a/nix/cryptopp_pkg_versions.nix +++ b/nix/cryptopp_pkg_versions.nix @@ -1,53 +1,99 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v890 = buildECTesterStandalone { - cryptopp = { version="8_9_0"; hash="sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ="; }; - }; + cryptopp = { + version = "8_9_0"; + hash = "sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ="; + }; + }; v880 = buildECTesterStandalone { - cryptopp = { version="8_8_0"; hash="sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU="; }; - }; + cryptopp = { + version = "8_8_0"; + hash = "sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU="; + }; + }; v870 = buildECTesterStandalone { - cryptopp = { version="8_7_0"; hash="sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE="; }; - }; + cryptopp = { + version = "8_7_0"; + hash = "sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE="; + }; + }; v860 = buildECTesterStandalone { - cryptopp = { version="8_6_0"; hash="sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4="; }; - }; + cryptopp = { + version = "8_6_0"; + hash = "sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4="; + }; + }; v850 = buildECTesterStandalone { - cryptopp = { version="8_5_0"; hash="sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y="; }; - }; + cryptopp = { + version = "8_5_0"; + hash = "sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y="; + }; + }; v840 = buildECTesterStandalone { - cryptopp = { version="8_4_0"; hash="sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8="; }; - }; + cryptopp = { + version = "8_4_0"; + hash = "sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8="; + }; + }; v830 = buildECTesterStandalone { - cryptopp = { version="8_3_0"; hash="sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng="; }; - }; + cryptopp = { + version = "8_3_0"; + hash = "sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng="; + }; + }; v820 = buildECTesterStandalone { - cryptopp = { version="8_2_0"; hash="sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc="; }; - }; + cryptopp = { + version = "8_2_0"; + hash = "sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc="; + }; + }; v810 = buildECTesterStandalone { - cryptopp = { version="8_1_0"; hash="sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI="; }; - }; + cryptopp = { + version = "8_1_0"; + hash = "sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI="; + }; + }; v800 = buildECTesterStandalone { - cryptopp = { version="8_0_0"; hash="sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w="; }; - }; + cryptopp = { + version = "8_0_0"; + hash = "sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w="; + }; + }; v700 = buildECTesterStandalone { - cryptopp = { version="7_0_0"; hash="sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4="; }; - }; + cryptopp = { + version = "7_0_0"; + hash = "sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4="; + }; + }; v610 = buildECTesterStandalone { - cryptopp = { version="6_1_0"; hash="sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo="; }; - }; + cryptopp = { + version = "6_1_0"; + hash = "sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo="; + }; + }; v600 = buildECTesterStandalone { - cryptopp = { version="6_0_0"; hash="sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E="; }; - }; + cryptopp = { + version = "6_0_0"; + hash = "sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E="; + }; + }; v565 = buildECTesterStandalone { - cryptopp = { version="5_6_5"; hash="sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o="; }; - }; + cryptopp = { + version = "5_6_5"; + hash = "sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o="; + }; + }; v564 = buildECTesterStandalone { - cryptopp = { version="5_6_4"; hash="sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4="; }; - }; + cryptopp = { + version = "5_6_4"; + hash = "sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4="; + }; + }; v563 = buildECTesterStandalone { - cryptopp = { version="5_6_3"; hash="sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0="; }; - }; -} \ No newline at end of file + cryptopp = { + version = "5_6_3"; + hash = "sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0="; + }; + }; +} diff --git a/nix/cryptoppshim.nix b/nix/cryptoppshim.nix index 1c3532c..8c735d7 100644 --- a/nix/cryptoppshim.nix +++ b/nix/cryptoppshim.nix @@ -1,8 +1,6 @@ -{ - pkgs - , cryptopp -}: -with pkgs; stdenv.mkDerivation { +{ pkgs, cryptopp }: +with pkgs; +stdenv.mkDerivation { name = "Crypto++ Shim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/gcrypt_pkg_versions.nix b/nix/gcrypt_pkg_versions.nix index b0be7d7..d27bfae 100644 --- a/nix/gcrypt_pkg_versions.nix +++ b/nix/gcrypt_pkg_versions.nix @@ -1,180 +1,352 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v1110 = buildECTesterStandalone { - gcrypt = { version="1.11.0"; hash="sha256-CRIMmGfOfyCB1qqhd1OGuYwvLyRhNXYarkfYH1hoW5w="; }; - }; + gcrypt = { + version = "1.11.0"; + hash = "sha256-CRIMmGfOfyCB1qqhd1OGuYwvLyRhNXYarkfYH1hoW5w="; + }; + }; v1103 = buildECTesterStandalone { - gcrypt = { version="1.10.3"; hash="sha256-iwhwiXrFrGfe1Wjc+t9Flpz6imvrD9YK8qnq3Coycqo="; }; - }; + gcrypt = { + version = "1.10.3"; + hash = "sha256-iwhwiXrFrGfe1Wjc+t9Flpz6imvrD9YK8qnq3Coycqo="; + }; + }; v1102 = buildECTesterStandalone { - gcrypt = { version="1.10.2"; hash="sha256-O5wCoAS2jCVq3ZlwHeALODrMzPNxd+DWxYKJZkzODAM="; }; - }; + gcrypt = { + version = "1.10.2"; + hash = "sha256-O5wCoAS2jCVq3ZlwHeALODrMzPNxd+DWxYKJZkzODAM="; + }; + }; v1101 = buildECTesterStandalone { - gcrypt = { version="1.10.1"; hash="sha256-7xSuVGsAhM2EJZ9hpV4Ho4w7U6/A9Ua//O8vAbr/6d4="; }; - }; + gcrypt = { + version = "1.10.1"; + hash = "sha256-7xSuVGsAhM2EJZ9hpV4Ho4w7U6/A9Ua//O8vAbr/6d4="; + }; + }; v1100 = buildECTesterStandalone { - gcrypt = { version="1.10.0"; hash="sha256-agD1wFyqTErMEgxGtjhX2g1P9h3EtLA5M/qNRgE/roE="; }; - }; + gcrypt = { + version = "1.10.0"; + hash = "sha256-agD1wFyqTErMEgxGtjhX2g1P9h3EtLA5M/qNRgE/roE="; + }; + }; v194 = buildECTesterStandalone { - gcrypt = { version="1.9.4"; hash="sha256-6oScg6ckVOPtQmdpfoygM5Cu6XKrQh599p3+QrZcqvc="; }; - }; + gcrypt = { + version = "1.9.4"; + hash = "sha256-6oScg6ckVOPtQmdpfoygM5Cu6XKrQh599p3+QrZcqvc="; + }; + }; v193 = buildECTesterStandalone { - gcrypt = { version="1.9.3"; hash="sha256-l+vk+U4vfjW3UhlM4VoPPGYyTg/2ryZlm7+1/y7DKP0="; }; - }; + gcrypt = { + version = "1.9.3"; + hash = "sha256-l+vk+U4vfjW3UhlM4VoPPGYyTg/2ryZlm7+1/y7DKP0="; + }; + }; v192 = buildECTesterStandalone { - gcrypt = { version="1.9.2"; hash="sha256-ssENCRUTsnHkcXcnRgex/7o9lbGIu/qHl/lIrskFPFo="; }; - }; + gcrypt = { + version = "1.9.2"; + hash = "sha256-ssENCRUTsnHkcXcnRgex/7o9lbGIu/qHl/lIrskFPFo="; + }; + }; v191 = buildECTesterStandalone { - gcrypt = { version="1.9.1"; hash="sha256-xaZ6i5sr03D7QV7R7jHHFy5Wgwdkk89KNnig+98CZdk="; }; - }; + gcrypt = { + version = "1.9.1"; + hash = "sha256-xaZ6i5sr03D7QV7R7jHHFy5Wgwdkk89KNnig+98CZdk="; + }; + }; # NOTE Do not use copied from the source https://gnupg.org/ftp/gcrypt/libgcrypt/ v190_do_not_use = buildECTesterStandalone { - gcrypt = { version="1.9.0"; hash="sha256-TZzKpfmdtZ68tk1z9iglsFzoprf4bRkXhVnvhN4Tgcs="; }; - }; + gcrypt = { + version = "1.9.0"; + hash = "sha256-TZzKpfmdtZ68tk1z9iglsFzoprf4bRkXhVnvhN4Tgcs="; + }; + }; v1811 = buildECTesterStandalone { - gcrypt = { version="1.8.11"; hash="sha256-yYJJ+1ux9gF/X5v0hDJ6lAtZB1vKfEb6aeu1QJgkmGA="; }; - }; + gcrypt = { + version = "1.8.11"; + hash = "sha256-yYJJ+1ux9gF/X5v0hDJ6lAtZB1vKfEb6aeu1QJgkmGA="; + }; + }; v1810 = buildECTesterStandalone { - gcrypt = { version="1.8.10"; hash="sha256-aJaRVQH5UeI9AtywRTRpwswiqk13oAH/c6JkfC0p590="; }; - }; + gcrypt = { + version = "1.8.10"; + hash = "sha256-aJaRVQH5UeI9AtywRTRpwswiqk13oAH/c6JkfC0p590="; + }; + }; v189 = buildECTesterStandalone { - gcrypt = { version="1.8.9"; hash="sha256-K9pHkKpfCJXTQHz3v2vXcn/ZkvJaRaY9kv7xB2f6N2k="; }; - }; + gcrypt = { + version = "1.8.9"; + hash = "sha256-K9pHkKpfCJXTQHz3v2vXcn/ZkvJaRaY9kv7xB2f6N2k="; + }; + }; v188 = buildECTesterStandalone { - gcrypt = { version="1.8.8"; hash="sha256-iV3iu5gd0Sfwgh0c4T+t99dg+fp3N2SLFfLB/hPMWvU="; }; - }; + gcrypt = { + version = "1.8.8"; + hash = "sha256-iV3iu5gd0Sfwgh0c4T+t99dg+fp3N2SLFfLB/hPMWvU="; + }; + }; v187 = buildECTesterStandalone { - gcrypt = { version="1.8.7"; hash="sha256-A7cPAoKZVhtwNLiWbX3XfvFu0TnENECSX+h4JWGXR0g="; }; - }; + gcrypt = { + version = "1.8.7"; + hash = "sha256-A7cPAoKZVhtwNLiWbX3XfvFu0TnENECSX+h4JWGXR0g="; + }; + }; v186 = buildECTesterStandalone { - gcrypt = { version="1.8.6"; hash="sha256-DLonAGF7mfwzhkoMFrH6f9+XgdntNQn112cXjl/XuXU="; }; - }; + gcrypt = { + version = "1.8.6"; + hash = "sha256-DLonAGF7mfwzhkoMFrH6f9+XgdntNQn112cXjl/XuXU="; + }; + }; v185 = buildECTesterStandalone { - gcrypt = { version="1.8.5"; hash="sha256-O0oqlMtjfv9b3rvK9G9NlcTyUgb0WYCTOc2toOtXesM="; }; - }; + gcrypt = { + version = "1.8.5"; + hash = "sha256-O0oqlMtjfv9b3rvK9G9NlcTyUgb0WYCTOc2toOtXesM="; + }; + }; v184 = buildECTesterStandalone { - gcrypt = { version="1.8.4"; hash="sha256-9jgUOgZyYo/eDK10XpsU3rhd/7F1cJyswfT+JLk/Iic="; }; - }; + gcrypt = { + version = "1.8.4"; + hash = "sha256-9jgUOgZyYo/eDK10XpsU3rhd/7F1cJyswfT+JLk/Iic="; + }; + }; v183 = buildECTesterStandalone { - gcrypt = { version="1.8.3"; hash="sha256-ZuyQvgNnR2AvK0j5gxI2GpGAyXxoppCl83b6D2fQr3w="; }; - }; + gcrypt = { + version = "1.8.3"; + hash = "sha256-ZuyQvgNnR2AvK0j5gxI2GpGAyXxoppCl83b6D2fQr3w="; + }; + }; v182 = buildECTesterStandalone { - gcrypt = { version="1.8.2"; hash="sha256-yAZMrnVYFEsT7w64cJNBI4DvoWxO4wrRLstUiGpSTAc="; }; - }; + gcrypt = { + version = "1.8.2"; + hash = "sha256-yAZMrnVYFEsT7w64cJNBI4DvoWxO4wrRLstUiGpSTAc="; + }; + }; v181 = buildECTesterStandalone { - gcrypt = { version="1.8.1"; hash="sha256-eih1+LGuAwFzLoeMDMoslmT/Ce9xQI8IXFDjMmVqeLM="; }; - }; + gcrypt = { + version = "1.8.1"; + hash = "sha256-eih1+LGuAwFzLoeMDMoslmT/Ce9xQI8IXFDjMmVqeLM="; + }; + }; v180 = buildECTesterStandalone { - gcrypt = { version="1.8.0"; hash="sha256-I+SWl7h8xBc7A7R1fI30MU4xSQWPoYvcT4IJjxA9iRs="; }; - }; + gcrypt = { + version = "1.8.0"; + hash = "sha256-I+SWl7h8xBc7A7R1fI30MU4xSQWPoYvcT4IJjxA9iRs="; + }; + }; v1710 = buildECTesterStandalone { - gcrypt = { version="1.7.10"; hash="sha256-ifBaQj3WaiXls4MICX4jhuZA0c+DUWDRmlx1NQBx2Uw="; }; - }; + gcrypt = { + version = "1.7.10"; + hash = "sha256-ifBaQj3WaiXls4MICX4jhuZA0c+DUWDRmlx1NQBx2Uw="; + }; + }; v179 = buildECTesterStandalone { - gcrypt = { version="1.7.9"; hash="sha256-v+m7cDwRJsNkfaKBD9IwOcLwnUaWn3FhLCBl3D+pNzs="; }; - }; + gcrypt = { + version = "1.7.9"; + hash = "sha256-v+m7cDwRJsNkfaKBD9IwOcLwnUaWn3FhLCBl3D+pNzs="; + }; + }; v178 = buildECTesterStandalone { - gcrypt = { version="1.7.8"; hash="sha256-lIJ26kfmugJE82oXtR3N1Sz9HmZLChrDvIITT7bOwZk="; }; - }; + gcrypt = { + version = "1.7.8"; + hash = "sha256-lIJ26kfmugJE82oXtR3N1Sz9HmZLChrDvIITT7bOwZk="; + }; + }; v177 = buildECTesterStandalone { - gcrypt = { version="1.7.7"; hash="sha256-ubheugeT6j5uZriW6wMfoF4aRRcnfMmrEIFrNZJUzZo="; }; - }; + gcrypt = { + version = "1.7.7"; + hash = "sha256-ubheugeT6j5uZriW6wMfoF4aRRcnfMmrEIFrNZJUzZo="; + }; + }; v176 = buildECTesterStandalone { - gcrypt = { version="1.7.6"; hash="sha256-Ymqv7oSvnSziU9LBQ9wcCQLdoEV4DMJB85lw/GC+Bbw="; }; - }; + gcrypt = { + version = "1.7.6"; + hash = "sha256-Ymqv7oSvnSziU9LBQ9wcCQLdoEV4DMJB85lw/GC+Bbw="; + }; + }; v175 = buildECTesterStandalone { - gcrypt = { version="1.7.5"; hash="sha256-0f6kEovu8rswpHCva6+rzMUDztNQU0+53Y9aU/+66AA="; }; - }; + gcrypt = { + version = "1.7.5"; + hash = "sha256-0f6kEovu8rswpHCva6+rzMUDztNQU0+53Y9aU/+66AA="; + }; + }; v174 = buildECTesterStandalone { - gcrypt = { version="1.7.4"; hash="sha256-O2eGLi9HEeJcTOPMS0jVKlijr9zR2Malf5OhwO8D5cY="; }; - }; + gcrypt = { + version = "1.7.4"; + hash = "sha256-O2eGLi9HEeJcTOPMS0jVKlijr9zR2Malf5OhwO8D5cY="; + }; + }; v173 = buildECTesterStandalone { - gcrypt = { version="1.7.3"; hash="sha256-3axhEQd9ChYSJHWHviOMUpTdDuTXbce6eDzFX7AzcHE="; }; - }; + gcrypt = { + version = "1.7.3"; + hash = "sha256-3axhEQd9ChYSJHWHviOMUpTdDuTXbce6eDzFX7AzcHE="; + }; + }; v172 = buildECTesterStandalone { - gcrypt = { version="1.7.2"; hash="sha256-PTXfkG1uqzVFBMBddJqbAhlEyyn/X2XI75w91fe2aJ8="; }; - }; + gcrypt = { + version = "1.7.2"; + hash = "sha256-PTXfkG1uqzVFBMBddJqbAhlEyyn/X2XI75w91fe2aJ8="; + }; + }; v171 = buildECTesterStandalone { - gcrypt = { version="1.7.1"; hash="sha256-RQ2c/L8WEcZNvjvQS2J7gzee+J8RQG2UyLujBeNtepU="; }; - }; + gcrypt = { + version = "1.7.1"; + hash = "sha256-RQ2c/L8WEcZNvjvQS2J7gzee+J8RQG2UyLujBeNtepU="; + }; + }; v170 = buildECTesterStandalone { - gcrypt = { version="1.7.0"; hash="sha256-sOZ+p0R0k5kTxNnZ70717DeO++K+vjY4ne4xnHm/+pI="; }; - }; + gcrypt = { + version = "1.7.0"; + hash = "sha256-sOZ+p0R0k5kTxNnZ70717DeO++K+vjY4ne4xnHm/+pI="; + }; + }; v166 = buildECTesterStandalone { - gcrypt = { version="1.6.6"; hash="sha256-+UYbRhm7eLJzqI1GiRV1DUGOiaPqO2QbqwVjqa9LBNA="; }; - }; + gcrypt = { + version = "1.6.6"; + hash = "sha256-+UYbRhm7eLJzqI1GiRV1DUGOiaPqO2QbqwVjqa9LBNA="; + }; + }; v165 = buildECTesterStandalone { - gcrypt = { version="1.6.5"; hash="sha256-9J68WELUVa5wGd7zPrWgFKDweiqDU9w6pQp2/R2vqSQ="; }; - }; + gcrypt = { + version = "1.6.5"; + hash = "sha256-9J68WELUVa5wGd7zPrWgFKDweiqDU9w6pQp2/R2vqSQ="; + }; + }; v164 = buildECTesterStandalone { - gcrypt = { version="1.6.4"; hash="sha256-ybwsf+Ll9OoTsMdPnSS8uxrYibs5KX2Agq6/I/QzYCY="; }; - }; + gcrypt = { + version = "1.6.4"; + hash = "sha256-ybwsf+Ll9OoTsMdPnSS8uxrYibs5KX2Agq6/I/QzYCY="; + }; + }; v163 = buildECTesterStandalone { - gcrypt = { version="1.6.3"; hash="sha256-QbSRe5OuNMag4hJzeNek1m2AWiqGoJkR1Pm9hx23Al8="; }; - }; + gcrypt = { + version = "1.6.3"; + hash = "sha256-QbSRe5OuNMag4hJzeNek1m2AWiqGoJkR1Pm9hx23Al8="; + }; + }; v162 = buildECTesterStandalone { - gcrypt = { version="1.6.2"; hash="sha256-3ghEkqazjNsntn6vdJzrp2v3Ap9jqcDDwbBciMmIXEw="; }; - }; + gcrypt = { + version = "1.6.2"; + hash = "sha256-3ghEkqazjNsntn6vdJzrp2v3Ap9jqcDDwbBciMmIXEw="; + }; + }; v161 = buildECTesterStandalone { - gcrypt = { version="1.6.1"; hash="sha256-ocPv6mn4/+dp9IizAM4ZDu6www3iSlPxwbbkIC/cIHA="; }; - }; + gcrypt = { + version = "1.6.1"; + hash = "sha256-ocPv6mn4/+dp9IizAM4ZDu6www3iSlPxwbbkIC/cIHA="; + }; + }; v160 = buildECTesterStandalone { - gcrypt = { version="1.6.0"; hash="sha256-Zi1QhgCtlMwzTmZbcBYTf+7fzKUiaZjGXd1Wvfyilwg="; }; - }; + gcrypt = { + version = "1.6.0"; + hash = "sha256-Zi1QhgCtlMwzTmZbcBYTf+7fzKUiaZjGXd1Wvfyilwg="; + }; + }; v156 = buildECTesterStandalone { - gcrypt = { version="1.5.6"; hash="sha256-MBgmteUhyGcFb9Ywqtbwpg4XbRigF9prwksWld86vnk="; }; - }; + gcrypt = { + version = "1.5.6"; + hash = "sha256-MBgmteUhyGcFb9Ywqtbwpg4XbRigF9prwksWld86vnk="; + }; + }; v155 = buildECTesterStandalone { - gcrypt = { version="1.5.5"; hash="sha256-2JWCA+eGvKR5zXyQOQaSXop+AzzLlZv1Mxe1fPEaBlU="; }; - }; + gcrypt = { + version = "1.5.5"; + hash = "sha256-2JWCA+eGvKR5zXyQOQaSXop+AzzLlZv1Mxe1fPEaBlU="; + }; + }; v154 = buildECTesterStandalone { - gcrypt = { version="1.5.4"; hash="sha256-1fiNn0GkaVPcJQzbhXUSmzfuIghAG3+jOMiX9mfH+zM="; }; - }; + gcrypt = { + version = "1.5.4"; + hash = "sha256-1fiNn0GkaVPcJQzbhXUSmzfuIghAG3+jOMiX9mfH+zM="; + }; + }; v153 = buildECTesterStandalone { - gcrypt = { version="1.5.3"; hash="sha256-vPUzTn2jUsRd5q7F0ghM6aHTACn/SkpdoT8YSIdHWdE="; }; - }; + gcrypt = { + version = "1.5.3"; + hash = "sha256-vPUzTn2jUsRd5q7F0ghM6aHTACn/SkpdoT8YSIdHWdE="; + }; + }; v152 = buildECTesterStandalone { - gcrypt = { version="1.5.2"; hash="sha256-5BpDOfUClPPJJfL3Gq8kJ+sWLSmU2pFmbfwyYhr+lj8="; }; - }; + gcrypt = { + version = "1.5.2"; + hash = "sha256-5BpDOfUClPPJJfL3Gq8kJ+sWLSmU2pFmbfwyYhr+lj8="; + }; + }; v151 = buildECTesterStandalone { - gcrypt = { version="1.5.1"; hash="sha256-rZ6xWAjnaZmMC9jBgayIFCORn08QVYaRPcy8Dfv65Sc="; }; - }; + gcrypt = { + version = "1.5.1"; + hash = "sha256-rZ6xWAjnaZmMC9jBgayIFCORn08QVYaRPcy8Dfv65Sc="; + }; + }; v150 = buildECTesterStandalone { - gcrypt = { version="1.5.0"; hash="sha256-S2L8UWAElAoFcQJUAaBYHUkZnxp237XOb9Y/UNuBc/o="; }; - }; + gcrypt = { + version = "1.5.0"; + hash = "sha256-S2L8UWAElAoFcQJUAaBYHUkZnxp237XOb9Y/UNuBc/o="; + }; + }; v146 = buildECTesterStandalone { - gcrypt = { version="1.4.6"; hash="sha256-Pksw2ms1e1ZTM9AiITO2SgQUvpm6cnMwgRZcjqm8a4U="; }; - }; + gcrypt = { + version = "1.4.6"; + hash = "sha256-Pksw2ms1e1ZTM9AiITO2SgQUvpm6cnMwgRZcjqm8a4U="; + }; + }; v145 = buildECTesterStandalone { - gcrypt = { version="1.4.5"; hash="sha256-SW+QfFMk3nU2fsYcY7/u0TCe8LxkhF3CCzWXcxq9nkA="; }; - }; + gcrypt = { + version = "1.4.5"; + hash = "sha256-SW+QfFMk3nU2fsYcY7/u0TCe8LxkhF3CCzWXcxq9nkA="; + }; + }; v144 = buildECTesterStandalone { - gcrypt = { version="1.4.4"; hash="sha256-MhK4gIDPj6AGFk04/Bdvr6XClZHIOE8oSriA2w2/MG8="; }; - }; + gcrypt = { + version = "1.4.4"; + hash = "sha256-MhK4gIDPj6AGFk04/Bdvr6XClZHIOE8oSriA2w2/MG8="; + }; + }; v143 = buildECTesterStandalone { - gcrypt = { version="1.4.3"; hash="sha256-iMgZvZ8B19SBiJjhM6USBE54w0MHqmBrapTuznwLIws="; }; - }; + gcrypt = { + version = "1.4.3"; + hash = "sha256-iMgZvZ8B19SBiJjhM6USBE54w0MHqmBrapTuznwLIws="; + }; + }; v142 = buildECTesterStandalone { - gcrypt = { version="1.4.2"; hash="sha256-unQUhG9/O6IrIs842hug6dXCJjixxArAh85RZJgRUsM="; }; - }; + gcrypt = { + version = "1.4.2"; + hash = "sha256-unQUhG9/O6IrIs842hug6dXCJjixxArAh85RZJgRUsM="; + }; + }; v141 = buildECTesterStandalone { - gcrypt = { version="1.4.1"; hash="sha256-/jsyvfDJLWs7t7Pks8Gaaomanetl8bNvCliC0wjJH6M="; }; - }; + gcrypt = { + version = "1.4.1"; + hash = "sha256-/jsyvfDJLWs7t7Pks8Gaaomanetl8bNvCliC0wjJH6M="; + }; + }; v140 = buildECTesterStandalone { - gcrypt = { version="1.4.0"; hash="sha256-1/hV92aUSltuf/7i1v/fgoq3CazURTsOZK6oCM4nYOw="; }; - }; + gcrypt = { + version = "1.4.0"; + hash = "sha256-1/hV92aUSltuf/7i1v/fgoq3CazURTsOZK6oCM4nYOw="; + }; + }; v124 = buildECTesterStandalone { - gcrypt = { version="1.2.4"; hash="sha256-fWFVxNCkD7o9ug8hqVnHhIxzS6ZzTejifuomrlPAyIA="; }; - }; + gcrypt = { + version = "1.2.4"; + hash = "sha256-fWFVxNCkD7o9ug8hqVnHhIxzS6ZzTejifuomrlPAyIA="; + }; + }; v123 = buildECTesterStandalone { - gcrypt = { version="1.2.3"; hash="sha256-6OKRFjlRFIIHWAeSWILQBlYRPDHgqJAV1ITcFsbYD7Q="; }; - }; + gcrypt = { + version = "1.2.3"; + hash = "sha256-6OKRFjlRFIIHWAeSWILQBlYRPDHgqJAV1ITcFsbYD7Q="; + }; + }; v122 = buildECTesterStandalone { - gcrypt = { version="1.2.2"; hash="sha256-espQrfRId1XGHAWQ1286k1Lie9s908DcDP+Py0Eq5iQ="; }; - }; + gcrypt = { + version = "1.2.2"; + hash = "sha256-espQrfRId1XGHAWQ1286k1Lie9s908DcDP+Py0Eq5iQ="; + }; + }; v121 = buildECTesterStandalone { - gcrypt = { version="1.2.1"; hash="sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I="; }; - }; + gcrypt = { + version = "1.2.1"; + hash = "sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I="; + }; + }; } diff --git a/nix/gcryptshim.nix b/nix/gcryptshim.nix index bfe027b..764b03c 100644 --- a/nix/gcryptshim.nix +++ b/nix/gcryptshim.nix @@ -1,9 +1,10 @@ { - pkgs - , libgcrypt - , libgpg-error + pkgs, + libgcrypt, + libgpg-error, }: -with pkgs; stdenv.mkDerivation { +with pkgs; +stdenv.mkDerivation { name = "Gcrypt Shim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/ippcp_pkg_versions.nix b/nix/ippcp_pkg_versions.nix index ac97208..a3140cf 100644 --- a/nix/ippcp_pkg_versions.nix +++ b/nix/ippcp_pkg_versions.nix @@ -1,77 +1,147 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v2021_12_1 = buildECTesterStandalone { - ippcp = { version="2021.12.1"; hash="sha256-voxjx9Np/8jy9XS6EvUK4aW18/DGQGaPpTKm9RzuCU8="; }; - }; + ippcp = { + version = "2021.12.1"; + hash = "sha256-voxjx9Np/8jy9XS6EvUK4aW18/DGQGaPpTKm9RzuCU8="; + }; + }; v2021_12_0 = buildECTesterStandalone { - ippcp = { version="2021.12.0"; hash="sha256-FeCfiXwOUM3cL4Ah3IjLa/2SKo9WHTZFUfg/w8WTNcc="; }; - }; + ippcp = { + version = "2021.12.0"; + hash = "sha256-FeCfiXwOUM3cL4Ah3IjLa/2SKo9WHTZFUfg/w8WTNcc="; + }; + }; v2021_11_1 = buildECTesterStandalone { - ippcp = { version="2021.11.1"; hash="sha256-OgNrrPE8jFVD/hcv7A43Bno96r4Z/lb7/SE6TEL7RDI="; }; - }; + ippcp = { + version = "2021.11.1"; + hash = "sha256-OgNrrPE8jFVD/hcv7A43Bno96r4Z/lb7/SE6TEL7RDI="; + }; + }; v2021_11_0 = buildECTesterStandalone { - ippcp = { version="2021.11.0"; hash="sha256-MVhiKEJxYa1HaicPbkzrAlZxFqIEP7eDLusC/T52gXI="; }; - }; + ippcp = { + version = "2021.11.0"; + hash = "sha256-MVhiKEJxYa1HaicPbkzrAlZxFqIEP7eDLusC/T52gXI="; + }; + }; v2021_10_0 = buildECTesterStandalone { - ippcp = { version="2021.10.0"; hash="sha256-DfXsJ+4XqyjCD+79LUD53Cx8D46o1a4fAZa2UxGI1Xg="; }; - }; + ippcp = { + version = "2021.10.0"; + hash = "sha256-DfXsJ+4XqyjCD+79LUD53Cx8D46o1a4fAZa2UxGI1Xg="; + }; + }; v2021_9_0 = buildECTesterStandalone { - ippcp = { version="2021.9.0"; hash="sha256-+ITnxyrkDQp4xRa+PVzXdYsSkI5sMNwQGfGU+lFJ6co="; }; - }; + ippcp = { + version = "2021.9.0"; + hash = "sha256-+ITnxyrkDQp4xRa+PVzXdYsSkI5sMNwQGfGU+lFJ6co="; + }; + }; v2021_8 = buildECTesterStandalone { - ippcp = { version="2021.8"; hash="sha256-Iz1Pql+cf2DdPe7KoNpxQ7H76SFwWkUbtL4bJxr7D4w="; }; - }; + ippcp = { + version = "2021.8"; + hash = "sha256-Iz1Pql+cf2DdPe7KoNpxQ7H76SFwWkUbtL4bJxr7D4w="; + }; + }; v2021_7_1 = buildECTesterStandalone { - ippcp = { version="2021.7.1"; hash="sha256-iyg4ja7tsbpng7XOZwISri+x8knwEeyh/aP9ldhQY60="; }; - }; + ippcp = { + version = "2021.7.1"; + hash = "sha256-iyg4ja7tsbpng7XOZwISri+x8knwEeyh/aP9ldhQY60="; + }; + }; v2021_7 = buildECTesterStandalone { - ippcp = { version="2021.7"; hash="sha256-3W0LlJgmrp2Rk7xQ+0GQfkF2UpH4htx9R7IL86smtnY="; }; - }; + ippcp = { + version = "2021.7"; + hash = "sha256-3W0LlJgmrp2Rk7xQ+0GQfkF2UpH4htx9R7IL86smtnY="; + }; + }; v2021_6 = buildECTesterStandalone { - ippcp = { version="2021.6"; hash="sha256-lr6oiJTaTQhTrxhdY5dTfOrl/ZBwOYbuyuNU3tJbEe0="; }; - }; + ippcp = { + version = "2021.6"; + hash = "sha256-lr6oiJTaTQhTrxhdY5dTfOrl/ZBwOYbuyuNU3tJbEe0="; + }; + }; v2021_5 = buildECTesterStandalone { - ippcp = { version="2021.5"; hash="sha256-xc44XvGz9KnbLKKMmSJQ2Eq8IhEFVb0tYIWVW4oJRuo="; }; - }; + ippcp = { + version = "2021.5"; + hash = "sha256-xc44XvGz9KnbLKKMmSJQ2Eq8IhEFVb0tYIWVW4oJRuo="; + }; + }; v2021_4 = buildECTesterStandalone { - ippcp = { version="2021.4"; hash="sha256-SyRY3BoHY7zQIFA6j0U0W0oD5PZhp3vsvFQVBw4/AXY="; }; - }; + ippcp = { + version = "2021.4"; + hash = "sha256-SyRY3BoHY7zQIFA6j0U0W0oD5PZhp3vsvFQVBw4/AXY="; + }; + }; v2021_3 = buildECTesterStandalone { - ippcp = { version="2021.3"; hash="sha256-QEJXvQ//zhQqibFxXwPMdS1MHewgyb24LRmkycVSGrM="; }; - }; + ippcp = { + version = "2021.3"; + hash = "sha256-QEJXvQ//zhQqibFxXwPMdS1MHewgyb24LRmkycVSGrM="; + }; + }; v2021_2 = buildECTesterStandalone { - ippcp = { version="2021.2"; hash="sha256-8I3y//LK5TcyC71fdX1biF588rdK2AplO6eh9GUHx9U="; }; - }; + ippcp = { + version = "2021.2"; + hash = "sha256-8I3y//LK5TcyC71fdX1biF588rdK2AplO6eh9GUHx9U="; + }; + }; v2020u3 = buildECTesterStandalone { - ippcp = { version="2020u3"; hash="sha256-i/iPOSTKR02pHzxBRn3odZJ+6SzGtS+pCG1BWo1qdAs="; }; - }; + ippcp = { + version = "2020u3"; + hash = "sha256-i/iPOSTKR02pHzxBRn3odZJ+6SzGtS+pCG1BWo1qdAs="; + }; + }; v2020u2 = buildECTesterStandalone { - ippcp = { version="2020u2"; hash="sha256-cn76ju41RdEJxH9SmF75Z38V3e9vnLXGdyjh4hISpr8="; }; - }; + ippcp = { + version = "2020u2"; + hash = "sha256-cn76ju41RdEJxH9SmF75Z38V3e9vnLXGdyjh4hISpr8="; + }; + }; v2020u1 = buildECTesterStandalone { - ippcp = { version="2020u1"; hash="sha256-4h5Zrx4hvsvZkXpHu0ZXJftoLFms34PstTRN0gHCXrM="; }; - }; + ippcp = { + version = "2020u1"; + hash = "sha256-4h5Zrx4hvsvZkXpHu0ZXJftoLFms34PstTRN0gHCXrM="; + }; + }; v2020 = buildECTesterStandalone { - ippcp = { version="2020"; hash="sha256-k4CuLLtNX+wrEGRgoIP9e0wp42U1VRF96nhDE8qNkMk="; }; - }; + ippcp = { + version = "2020"; + hash = "sha256-k4CuLLtNX+wrEGRgoIP9e0wp42U1VRF96nhDE8qNkMk="; + }; + }; v2019u4 = buildECTesterStandalone { - ippcp = { version="2019u4"; hash="sha256-Xi3I0frlR/OjX4IRJyBuFcSkrCaxL9ABRZ1w8FUAseg="; }; - }; + ippcp = { + version = "2019u4"; + hash = "sha256-Xi3I0frlR/OjX4IRJyBuFcSkrCaxL9ABRZ1w8FUAseg="; + }; + }; v2019u3 = buildECTesterStandalone { - ippcp = { version="2019u3"; hash="sha256-8sdPlRNfdjMkc061e6EFpJMMA1QKK5/SpKlMV2E5TH4="; }; - }; + ippcp = { + version = "2019u3"; + hash = "sha256-8sdPlRNfdjMkc061e6EFpJMMA1QKK5/SpKlMV2E5TH4="; + }; + }; v2019u2 = buildECTesterStandalone { - ippcp = { version="2019u2"; hash="sha256-WoiO1pXA6UTRdKCcn9ckMk4/6IvbQAK4k7d8P3rGbqc="; }; - }; + ippcp = { + version = "2019u2"; + hash = "sha256-WoiO1pXA6UTRdKCcn9ckMk4/6IvbQAK4k7d8P3rGbqc="; + }; + }; v2019u1 = buildECTesterStandalone { - ippcp = { version="2019u1"; hash="sha256-2KcZz+7NrhbvRVLXtdME73uMBrhw+4q0ajiXeWwZdJs="; }; - }; + ippcp = { + version = "2019u1"; + hash = "sha256-2KcZz+7NrhbvRVLXtdME73uMBrhw+4q0ajiXeWwZdJs="; + }; + }; v2019 = buildECTesterStandalone { - ippcp = { version="2019"; hash="sha256-iTupt9pRN+6ze3Hf/dmtve9u15iVL0g2kujUpyGgums="; }; - }; + ippcp = { + version = "2019"; + hash = "sha256-iTupt9pRN+6ze3Hf/dmtve9u15iVL0g2kujUpyGgums="; + }; + }; v2019b = buildECTesterStandalone { - ippcp = { version="2019b"; hash="sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8="; }; - }; -} \ No newline at end of file + ippcp = { + version = "2019b"; + hash = "sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8="; + }; + }; +} diff --git a/nix/ippcpshim.nix b/nix/ippcpshim.nix index 43ec4d6..2b1d676 100644 --- a/nix/ippcpshim.nix +++ b/nix/ippcpshim.nix @@ -1,8 +1,6 @@ -{ - pkgs - , ipp-crypto -}: - with pkgs; stdenv.mkDerivation rec { +{ pkgs, ipp-crypto }: +with pkgs; +stdenv.mkDerivation rec { name = "IppCryptoShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/libressl_pkg_versions.nix b/nix/libressl_pkg_versions.nix index 1621521..d723778 100644 --- a/nix/libressl_pkg_versions.nix +++ b/nix/libressl_pkg_versions.nix @@ -1,362 +1,717 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v200 = buildECTesterStandalone { - libressl = { version="2.0.0"; hash="sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s="; }; - }; + libressl = { + version = "2.0.0"; + hash = "sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s="; + }; + }; v201 = buildECTesterStandalone { - libressl = { version="2.0.1"; hash="sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro="; }; - }; + libressl = { + version = "2.0.1"; + hash = "sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro="; + }; + }; v202 = buildECTesterStandalone { - libressl = { version="2.0.2"; hash="sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys="; }; - }; + libressl = { + version = "2.0.2"; + hash = "sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys="; + }; + }; v203 = buildECTesterStandalone { - libressl = { version="2.0.3"; hash="sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ="; }; - }; + libressl = { + version = "2.0.3"; + hash = "sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ="; + }; + }; v204 = buildECTesterStandalone { - libressl = { version="2.0.4"; hash="sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw="; }; - }; + libressl = { + version = "2.0.4"; + hash = "sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw="; + }; + }; v205 = buildECTesterStandalone { - libressl = { version="2.0.5"; hash="sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo="; }; - }; + libressl = { + version = "2.0.5"; + hash = "sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo="; + }; + }; v206 = buildECTesterStandalone { - libressl = { version="2.0.6"; hash="sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y="; }; - }; + libressl = { + version = "2.0.6"; + hash = "sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y="; + }; + }; v210 = buildECTesterStandalone { - libressl = { version="2.1.0"; hash="sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w="; }; - }; + libressl = { + version = "2.1.0"; + hash = "sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w="; + }; + }; v211 = buildECTesterStandalone { - libressl = { version="2.1.1"; hash="sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc="; }; - }; + libressl = { + version = "2.1.1"; + hash = "sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc="; + }; + }; v2110 = buildECTesterStandalone { - libressl = { version="2.1.10"; hash="sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE="; }; - }; + libressl = { + version = "2.1.10"; + hash = "sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE="; + }; + }; v212 = buildECTesterStandalone { - libressl = { version="2.1.2"; hash="sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I="; }; - }; + libressl = { + version = "2.1.2"; + hash = "sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I="; + }; + }; v213 = buildECTesterStandalone { - libressl = { version="2.1.3"; hash="sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w="; }; - }; + libressl = { + version = "2.1.3"; + hash = "sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w="; + }; + }; v214 = buildECTesterStandalone { - libressl = { version="2.1.4"; hash="sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4="; }; - }; + libressl = { + version = "2.1.4"; + hash = "sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4="; + }; + }; v215 = buildECTesterStandalone { - libressl = { version="2.1.5"; hash="sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s="; }; - }; + libressl = { + version = "2.1.5"; + hash = "sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s="; + }; + }; v216 = buildECTesterStandalone { - libressl = { version="2.1.6"; hash="sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g="; }; - }; + libressl = { + version = "2.1.6"; + hash = "sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g="; + }; + }; v217 = buildECTesterStandalone { - libressl = { version="2.1.7"; hash="sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248="; }; - }; + libressl = { + version = "2.1.7"; + hash = "sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248="; + }; + }; v218 = buildECTesterStandalone { - libressl = { version="2.1.8"; hash="sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM="; }; - }; + libressl = { + version = "2.1.8"; + hash = "sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM="; + }; + }; v219 = buildECTesterStandalone { - libressl = { version="2.1.9"; hash="sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654="; }; - }; + libressl = { + version = "2.1.9"; + hash = "sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654="; + }; + }; v220 = buildECTesterStandalone { - libressl = { version="2.2.0"; hash="sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA="; }; - }; + libressl = { + version = "2.2.0"; + hash = "sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA="; + }; + }; v221 = buildECTesterStandalone { - libressl = { version="2.2.1"; hash="sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0="; }; - }; + libressl = { + version = "2.2.1"; + hash = "sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0="; + }; + }; v222 = buildECTesterStandalone { - libressl = { version="2.2.2"; hash="sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ="; }; - }; + libressl = { + version = "2.2.2"; + hash = "sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ="; + }; + }; v223 = buildECTesterStandalone { - libressl = { version="2.2.3"; hash="sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II="; }; - }; + libressl = { + version = "2.2.3"; + hash = "sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II="; + }; + }; v224 = buildECTesterStandalone { - libressl = { version="2.2.4"; hash="sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4="; }; - }; + libressl = { + version = "2.2.4"; + hash = "sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4="; + }; + }; v225 = buildECTesterStandalone { - libressl = { version="2.2.5"; hash="sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs="; }; - }; + libressl = { + version = "2.2.5"; + hash = "sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs="; + }; + }; v226 = buildECTesterStandalone { - libressl = { version="2.2.6"; hash="sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8="; }; - }; + libressl = { + version = "2.2.6"; + hash = "sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8="; + }; + }; v227 = buildECTesterStandalone { - libressl = { version="2.2.7"; hash="sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80="; }; - }; + libressl = { + version = "2.2.7"; + hash = "sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80="; + }; + }; v228 = buildECTesterStandalone { - libressl = { version="2.2.8"; hash="sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws="; }; - }; + libressl = { + version = "2.2.8"; + hash = "sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws="; + }; + }; v229 = buildECTesterStandalone { - libressl = { version="2.2.9"; hash="sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ="; }; - }; + libressl = { + version = "2.2.9"; + hash = "sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ="; + }; + }; v230 = buildECTesterStandalone { - libressl = { version="2.3.0"; hash="sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA="; }; - }; + libressl = { + version = "2.3.0"; + hash = "sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA="; + }; + }; v231 = buildECTesterStandalone { - libressl = { version="2.3.1"; hash="sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4="; }; - }; + libressl = { + version = "2.3.1"; + hash = "sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4="; + }; + }; v2310 = buildECTesterStandalone { - libressl = { version="2.3.10"; hash="sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM="; }; - }; + libressl = { + version = "2.3.10"; + hash = "sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM="; + }; + }; v232 = buildECTesterStandalone { - libressl = { version="2.3.2"; hash="sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo="; }; - }; + libressl = { + version = "2.3.2"; + hash = "sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo="; + }; + }; v233 = buildECTesterStandalone { - libressl = { version="2.3.3"; hash="sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk="; }; - }; + libressl = { + version = "2.3.3"; + hash = "sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk="; + }; + }; v234 = buildECTesterStandalone { - libressl = { version="2.3.4"; hash="sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk="; }; - }; + libressl = { + version = "2.3.4"; + hash = "sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk="; + }; + }; v235 = buildECTesterStandalone { - libressl = { version="2.3.5"; hash="sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs="; }; - }; + libressl = { + version = "2.3.5"; + hash = "sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs="; + }; + }; v236 = buildECTesterStandalone { - libressl = { version="2.3.6"; hash="sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o="; }; - }; + libressl = { + version = "2.3.6"; + hash = "sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o="; + }; + }; v237 = buildECTesterStandalone { - libressl = { version="2.3.7"; hash="sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA="; }; - }; + libressl = { + version = "2.3.7"; + hash = "sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA="; + }; + }; v238 = buildECTesterStandalone { - libressl = { version="2.3.8"; hash="sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I="; }; - }; + libressl = { + version = "2.3.8"; + hash = "sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I="; + }; + }; v239 = buildECTesterStandalone { - libressl = { version="2.3.9"; hash="sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw="; }; - }; + libressl = { + version = "2.3.9"; + hash = "sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw="; + }; + }; v240 = buildECTesterStandalone { - libressl = { version="2.4.0"; hash="sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4="; }; - }; + libressl = { + version = "2.4.0"; + hash = "sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4="; + }; + }; v241 = buildECTesterStandalone { - libressl = { version="2.4.1"; hash="sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc="; }; - }; + libressl = { + version = "2.4.1"; + hash = "sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc="; + }; + }; v242 = buildECTesterStandalone { - libressl = { version="2.4.2"; hash="sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM="; }; - }; + libressl = { + version = "2.4.2"; + hash = "sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM="; + }; + }; v243 = buildECTesterStandalone { - libressl = { version="2.4.3"; hash="sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4="; }; - }; + libressl = { + version = "2.4.3"; + hash = "sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4="; + }; + }; v244 = buildECTesterStandalone { - libressl = { version="2.4.4"; hash="sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E="; }; - }; + libressl = { + version = "2.4.4"; + hash = "sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E="; + }; + }; v245 = buildECTesterStandalone { - libressl = { version="2.4.5"; hash="sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c="; }; - }; + libressl = { + version = "2.4.5"; + hash = "sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c="; + }; + }; v250 = buildECTesterStandalone { - libressl = { version="2.5.0"; hash="sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4="; }; - }; + libressl = { + version = "2.5.0"; + hash = "sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4="; + }; + }; v251 = buildECTesterStandalone { - libressl = { version="2.5.1"; hash="sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80="; }; - }; + libressl = { + version = "2.5.1"; + hash = "sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80="; + }; + }; v252 = buildECTesterStandalone { - libressl = { version="2.5.2"; hash="sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII="; }; - }; + libressl = { + version = "2.5.2"; + hash = "sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII="; + }; + }; v253 = buildECTesterStandalone { - libressl = { version="2.5.3"; hash="sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA="; }; - }; + libressl = { + version = "2.5.3"; + hash = "sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA="; + }; + }; v254 = buildECTesterStandalone { - libressl = { version="2.5.4"; hash="sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo="; }; - }; + libressl = { + version = "2.5.4"; + hash = "sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo="; + }; + }; v255 = buildECTesterStandalone { - libressl = { version="2.5.5"; hash="sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q="; }; - }; + libressl = { + version = "2.5.5"; + hash = "sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q="; + }; + }; v260 = buildECTesterStandalone { - libressl = { version="2.6.0"; hash="sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM="; }; - }; + libressl = { + version = "2.6.0"; + hash = "sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM="; + }; + }; v261 = buildECTesterStandalone { - libressl = { version="2.6.1"; hash="sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4="; }; - }; + libressl = { + version = "2.6.1"; + hash = "sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4="; + }; + }; v262 = buildECTesterStandalone { - libressl = { version="2.6.2"; hash="sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg="; }; - }; + libressl = { + version = "2.6.2"; + hash = "sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg="; + }; + }; v263 = buildECTesterStandalone { - libressl = { version="2.6.3"; hash="sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg="; }; - }; + libressl = { + version = "2.6.3"; + hash = "sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg="; + }; + }; v264 = buildECTesterStandalone { - libressl = { version="2.6.4"; hash="sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8="; }; - }; + libressl = { + version = "2.6.4"; + hash = "sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8="; + }; + }; v265 = buildECTesterStandalone { - libressl = { version="2.6.5"; hash="sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So="; }; - }; + libressl = { + version = "2.6.5"; + hash = "sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So="; + }; + }; v270 = buildECTesterStandalone { - libressl = { version="2.7.0"; hash="sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4="; }; - }; + libressl = { + version = "2.7.0"; + hash = "sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4="; + }; + }; v271 = buildECTesterStandalone { - libressl = { version="2.7.1"; hash="sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA="; }; - }; + libressl = { + version = "2.7.1"; + hash = "sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA="; + }; + }; v272 = buildECTesterStandalone { - libressl = { version="2.7.2"; hash="sha256-kXqHecNCF3/zdRor+VXQJi0diRaktAiTDEXO8yZwCZU="; }; - }; + libressl = { + version = "2.7.2"; + hash = "sha256-kXqHecNCF3/zdRor+VXQJi0diRaktAiTDEXO8yZwCZU="; + }; + }; v273 = buildECTesterStandalone { - libressl = { version="2.7.3"; hash="sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U="; }; - }; + libressl = { + version = "2.7.3"; + hash = "sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U="; + }; + }; v274 = buildECTesterStandalone { - libressl = { version="2.7.4"; hash="sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY="; }; - }; + libressl = { + version = "2.7.4"; + hash = "sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY="; + }; + }; v275 = buildECTesterStandalone { - libressl = { version="2.7.5"; hash="sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA="; }; - }; + libressl = { + version = "2.7.5"; + hash = "sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA="; + }; + }; v280 = buildECTesterStandalone { - libressl = { version="2.8.0"; hash="sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM="; }; - }; + libressl = { + version = "2.8.0"; + hash = "sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM="; + }; + }; v281 = buildECTesterStandalone { - libressl = { version="2.8.1"; hash="sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I="; }; - }; + libressl = { + version = "2.8.1"; + hash = "sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I="; + }; + }; v282 = buildECTesterStandalone { - libressl = { version="2.8.2"; hash="sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U="; }; - }; + libressl = { + version = "2.8.2"; + hash = "sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U="; + }; + }; v283 = buildECTesterStandalone { - libressl = { version="2.8.3"; hash="sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc="; }; - }; + libressl = { + version = "2.8.3"; + hash = "sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc="; + }; + }; v290 = buildECTesterStandalone { - libressl = { version="2.9.0"; hash="sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ="; }; - }; + libressl = { + version = "2.9.0"; + hash = "sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ="; + }; + }; v291 = buildECTesterStandalone { - libressl = { version="2.9.1"; hash="sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg="; }; - }; + libressl = { + version = "2.9.1"; + hash = "sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg="; + }; + }; v292 = buildECTesterStandalone { - libressl = { version="2.9.2"; hash="sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ="; }; - }; + libressl = { + version = "2.9.2"; + hash = "sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ="; + }; + }; v300 = buildECTesterStandalone { - libressl = { version="3.0.0"; hash="sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY="; }; - }; + libressl = { + version = "3.0.0"; + hash = "sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY="; + }; + }; v301 = buildECTesterStandalone { - libressl = { version="3.0.1"; hash="sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s="; }; - }; + libressl = { + version = "3.0.1"; + hash = "sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s="; + }; + }; v302 = buildECTesterStandalone { - libressl = { version="3.0.2"; hash="sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4="; }; - }; + libressl = { + version = "3.0.2"; + hash = "sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4="; + }; + }; v310 = buildECTesterStandalone { - libressl = { version="3.1.0"; hash="sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY="; }; - }; + libressl = { + version = "3.1.0"; + hash = "sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY="; + }; + }; v311 = buildECTesterStandalone { - libressl = { version="3.1.1"; hash="sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA="; }; - }; + libressl = { + version = "3.1.1"; + hash = "sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA="; + }; + }; v312 = buildECTesterStandalone { - libressl = { version="3.1.2"; hash="sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI="; }; - }; + libressl = { + version = "3.1.2"; + hash = "sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI="; + }; + }; v313 = buildECTesterStandalone { - libressl = { version="3.1.3"; hash="sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A="; }; - }; + libressl = { + version = "3.1.3"; + hash = "sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A="; + }; + }; v314 = buildECTesterStandalone { - libressl = { version="3.1.4"; hash="sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y="; }; - }; + libressl = { + version = "3.1.4"; + hash = "sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y="; + }; + }; v315 = buildECTesterStandalone { - libressl = { version="3.1.5"; hash="sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ="; }; - }; + libressl = { + version = "3.1.5"; + hash = "sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ="; + }; + }; v320 = buildECTesterStandalone { - libressl = { version="3.2.0"; hash="sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU="; }; - }; + libressl = { + version = "3.2.0"; + hash = "sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU="; + }; + }; v321 = buildECTesterStandalone { - libressl = { version="3.2.1"; hash="sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU="; }; - }; + libressl = { + version = "3.2.1"; + hash = "sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU="; + }; + }; v322 = buildECTesterStandalone { - libressl = { version="3.2.2"; hash="sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E="; }; - }; + libressl = { + version = "3.2.2"; + hash = "sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E="; + }; + }; v323 = buildECTesterStandalone { - libressl = { version="3.2.3"; hash="sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM="; }; - }; + libressl = { + version = "3.2.3"; + hash = "sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM="; + }; + }; v324 = buildECTesterStandalone { - libressl = { version="3.2.4"; hash="sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo="; }; - }; + libressl = { + version = "3.2.4"; + hash = "sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo="; + }; + }; v325 = buildECTesterStandalone { - libressl = { version="3.2.5"; hash="sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4="; }; - }; + libressl = { + version = "3.2.5"; + hash = "sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4="; + }; + }; v326 = buildECTesterStandalone { - libressl = { version="3.2.6"; hash="sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls="; }; - }; + libressl = { + version = "3.2.6"; + hash = "sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls="; + }; + }; v327 = buildECTesterStandalone { - libressl = { version="3.2.7"; hash="sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q="; }; - }; + libressl = { + version = "3.2.7"; + hash = "sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q="; + }; + }; v330 = buildECTesterStandalone { - libressl = { version="3.3.0"; hash="sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY="; }; - }; + libressl = { + version = "3.3.0"; + hash = "sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY="; + }; + }; v331 = buildECTesterStandalone { - libressl = { version="3.3.1"; hash="sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s="; }; - }; + libressl = { + version = "3.3.1"; + hash = "sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s="; + }; + }; v332 = buildECTesterStandalone { - libressl = { version="3.3.2"; hash="sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ="; }; - }; + libressl = { + version = "3.3.2"; + hash = "sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ="; + }; + }; v333 = buildECTesterStandalone { - libressl = { version="3.3.3"; hash="sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY="; }; - }; + libressl = { + version = "3.3.3"; + hash = "sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY="; + }; + }; v334 = buildECTesterStandalone { - libressl = { version="3.3.4"; hash="sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE="; }; - }; + libressl = { + version = "3.3.4"; + hash = "sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE="; + }; + }; v335 = buildECTesterStandalone { - libressl = { version="3.3.5"; hash="sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU="; }; - }; + libressl = { + version = "3.3.5"; + hash = "sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU="; + }; + }; v336 = buildECTesterStandalone { - libressl = { version="3.3.6"; hash="sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o="; }; - }; + libressl = { + version = "3.3.6"; + hash = "sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o="; + }; + }; v340 = buildECTesterStandalone { - libressl = { version="3.4.0"; hash="sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI="; }; - }; + libressl = { + version = "3.4.0"; + hash = "sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI="; + }; + }; v341 = buildECTesterStandalone { - libressl = { version="3.4.1"; hash="sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw="; }; - }; + libressl = { + version = "3.4.1"; + hash = "sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw="; + }; + }; v342 = buildECTesterStandalone { - libressl = { version="3.4.2"; hash="sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84="; }; - }; + libressl = { + version = "3.4.2"; + hash = "sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84="; + }; + }; v343 = buildECTesterStandalone { - libressl = { version="3.4.3"; hash="sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0="; }; - }; + libressl = { + version = "3.4.3"; + hash = "sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0="; + }; + }; v350 = buildECTesterStandalone { - libressl = { version="3.5.0"; hash="sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c="; }; - }; + libressl = { + version = "3.5.0"; + hash = "sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c="; + }; + }; v351 = buildECTesterStandalone { - libressl = { version="3.5.1"; hash="sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg="; }; - }; + libressl = { + version = "3.5.1"; + hash = "sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg="; + }; + }; v352 = buildECTesterStandalone { - libressl = { version="3.5.2"; hash="sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8="; }; - }; + libressl = { + version = "3.5.2"; + hash = "sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8="; + }; + }; v353 = buildECTesterStandalone { - libressl = { version="3.5.3"; hash="sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg="; }; - }; + libressl = { + version = "3.5.3"; + hash = "sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg="; + }; + }; v354 = buildECTesterStandalone { - libressl = { version="3.5.4"; hash="sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w="; }; - }; + libressl = { + version = "3.5.4"; + hash = "sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w="; + }; + }; v360 = buildECTesterStandalone { - libressl = { version="3.6.0"; hash="sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ="; }; - }; + libressl = { + version = "3.6.0"; + hash = "sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ="; + }; + }; v361 = buildECTesterStandalone { - libressl = { version="3.6.1"; hash="sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q="; }; - }; + libressl = { + version = "3.6.1"; + hash = "sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q="; + }; + }; v362 = buildECTesterStandalone { - libressl = { version="3.6.2"; hash="sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM="; }; - }; + libressl = { + version = "3.6.2"; + hash = "sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM="; + }; + }; v363 = buildECTesterStandalone { - libressl = { version="3.6.3"; hash="sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc="; }; - }; + libressl = { + version = "3.6.3"; + hash = "sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc="; + }; + }; v370 = buildECTesterStandalone { - libressl = { version="3.7.0"; hash="sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY="; }; - }; + libressl = { + version = "3.7.0"; + hash = "sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY="; + }; + }; v371 = buildECTesterStandalone { - libressl = { version="3.7.1"; hash="sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0="; }; - }; + libressl = { + version = "3.7.1"; + hash = "sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0="; + }; + }; v372 = buildECTesterStandalone { - libressl = { version="3.7.2"; hash="sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc="; }; - }; + libressl = { + version = "3.7.2"; + hash = "sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc="; + }; + }; v373 = buildECTesterStandalone { - libressl = { version="3.7.3"; hash="sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM="; }; - }; + libressl = { + version = "3.7.3"; + hash = "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM="; + }; + }; v380 = buildECTesterStandalone { - libressl = { version="3.8.0"; hash="sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw="; }; - }; + libressl = { + version = "3.8.0"; + hash = "sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw="; + }; + }; v381 = buildECTesterStandalone { - libressl = { version="3.8.1"; hash="sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I="; }; - }; + libressl = { + version = "3.8.1"; + hash = "sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I="; + }; + }; v382 = buildECTesterStandalone { - libressl = { version="3.8.2"; hash="sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ="; }; - }; + libressl = { + version = "3.8.2"; + hash = "sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ="; + }; + }; v383 = buildECTesterStandalone { - libressl = { version="3.8.3"; hash="sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI="; }; - }; + libressl = { + version = "3.8.3"; + hash = "sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI="; + }; + }; v384 = buildECTesterStandalone { - libressl = { version="3.8.4"; hash="sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0="; }; - }; + libressl = { + version = "3.8.4"; + hash = "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0="; + }; + }; v390 = buildECTesterStandalone { - libressl = { version="3.9.0"; hash="sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA="; }; - }; + libressl = { + version = "3.9.0"; + hash = "sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA="; + }; + }; v391 = buildECTesterStandalone { - libressl = { version="3.9.1"; hash="sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE="; }; - }; + libressl = { + version = "3.9.1"; + hash = "sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE="; + }; + }; v392 = buildECTesterStandalone { - libressl = { version="3.9.2"; hash="sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; }; - }; + libressl = { + version = "3.9.2"; + hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; + }; + }; } diff --git a/nix/libresslshim.nix b/nix/libresslshim.nix index 97bc3d9..9d23f4b 100644 --- a/nix/libresslshim.nix +++ b/nix/libresslshim.nix @@ -1,8 +1,6 @@ -{ - pkgs - , libressl -}: -with pkgs; stdenv.mkDerivation rec { +{ pkgs, libressl }: +with pkgs; +stdenv.mkDerivation rec { name = "LibreSSLShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/mbedtls_pkg_versions.nix b/nix/mbedtls_pkg_versions.nix index e429a4a..6877800 100644 --- a/nix/mbedtls_pkg_versions.nix +++ b/nix/mbedtls_pkg_versions.nix @@ -1,95 +1,183 @@ -{ - buildECTesterStandalone -}: +{ buildECTesterStandalone }: { v360 = buildECTesterStandalone { - mbedtls = { version="v3.6.0"; hash="sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg="; }; + mbedtls = { + version = "v3.6.0"; + hash = "sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg="; + }; }; v2288 = buildECTesterStandalone { - mbedtls = { version="v2.28.8"; hash="sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o="; }; + mbedtls = { + version = "v2.28.8"; + hash = "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o="; + }; }; v352 = buildECTesterStandalone { - mbedtls = { version="v3.5.2"; hash="sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM="; }; + mbedtls = { + version = "v3.5.2"; + hash = "sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM="; + }; }; v2287 = buildECTesterStandalone { - mbedtls = { version="v2.28.7"; hash="sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw="; }; + mbedtls = { + version = "v2.28.7"; + hash = "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw="; + }; }; v351 = buildECTesterStandalone { - mbedtls = { version="v3.5.1"; hash="sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw="; }; + mbedtls = { + version = "v3.5.1"; + hash = "sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw="; + }; }; v2286 = buildECTesterStandalone { - mbedtls = { version="v2.28.6"; hash="sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8="; }; + mbedtls = { + version = "v2.28.6"; + hash = "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8="; + }; }; mbedtls-350 = buildECTesterStandalone { - mbedtls = { version="mbedtls-3.5.0"; hash="sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU="; }; + mbedtls = { + version = "mbedtls-3.5.0"; + hash = "sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU="; + }; }; mbedtls-2285 = buildECTesterStandalone { - mbedtls = { version="mbedtls-2.28.5"; hash="sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o="; }; + mbedtls = { + version = "mbedtls-2.28.5"; + hash = "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o="; + }; }; v341 = buildECTesterStandalone { - mbedtls = { version="v3.4.1"; hash="sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts="; }; + mbedtls = { + version = "v3.4.1"; + hash = "sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts="; + }; }; v2284 = buildECTesterStandalone { - mbedtls = { version="v2.28.4"; hash="sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE="; }; + mbedtls = { + version = "v2.28.4"; + hash = "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE="; + }; }; v340 = buildECTesterStandalone { - mbedtls = { version="v3.4.0"; hash="sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg="; }; + mbedtls = { + version = "v3.4.0"; + hash = "sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg="; + }; }; v2283 = buildECTesterStandalone { - mbedtls = { version="v2.28.3"; hash="sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw="; }; + mbedtls = { + version = "v2.28.3"; + hash = "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw="; + }; }; v330 = buildECTesterStandalone { - mbedtls = { version="v3.3.0"; hash="sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE="; }; + mbedtls = { + version = "v3.3.0"; + hash = "sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE="; + }; }; v2282 = buildECTesterStandalone { - mbedtls = { version="v2.28.2"; hash="sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ="; }; + mbedtls = { + version = "v2.28.2"; + hash = "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ="; + }; }; v321 = buildECTesterStandalone { - mbedtls = { version="v3.2.1"; hash="sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc="; }; + mbedtls = { + version = "v3.2.1"; + hash = "sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc="; + }; }; v320 = buildECTesterStandalone { - mbedtls = { version="v3.2.0"; hash="sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ="; }; + mbedtls = { + version = "v3.2.0"; + hash = "sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ="; + }; }; v2281 = buildECTesterStandalone { - mbedtls = { version="v2.28.1"; hash="sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw="; }; + mbedtls = { + version = "v2.28.1"; + hash = "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw="; + }; }; v310 = buildECTesterStandalone { - mbedtls = { version="v3.1.0"; hash="sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs="; }; + mbedtls = { + version = "v3.1.0"; + hash = "sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs="; + }; }; v2280 = buildECTesterStandalone { - mbedtls = { version="v2.28.0"; hash="sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g="; }; + mbedtls = { + version = "v2.28.0"; + hash = "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g="; + }; }; v21612 = buildECTesterStandalone { - mbedtls = { version="v2.16.12"; hash="sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q="; }; + mbedtls = { + version = "v2.16.12"; + hash = "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q="; + }; }; v300 = buildECTesterStandalone { - mbedtls = { version="v3.0.0"; hash="sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s="; }; + mbedtls = { + version = "v3.0.0"; + hash = "sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s="; + }; }; v2270 = buildECTesterStandalone { - mbedtls = { version="v2.27.0"; hash="sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M="; }; + mbedtls = { + version = "v2.27.0"; + hash = "sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M="; + }; }; v21611 = buildECTesterStandalone { - mbedtls = { version="v2.16.11"; hash="sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg="; }; + mbedtls = { + version = "v2.16.11"; + hash = "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg="; + }; }; v2260 = buildECTesterStandalone { - mbedtls = { version="v2.26.0"; hash="sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk="; }; + mbedtls = { + version = "v2.26.0"; + hash = "sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk="; + }; }; v21610 = buildECTesterStandalone { - mbedtls = { version="v2.16.10"; hash="sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4="; }; + mbedtls = { + version = "v2.16.10"; + hash = "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4="; + }; }; v2719 = buildECTesterStandalone { - mbedtls = { version="v2.7.19"; hash="sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY="; }; + mbedtls = { + version = "v2.7.19"; + hash = "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY="; + }; }; v2250 = buildECTesterStandalone { - mbedtls = { version="v2.25.0"; hash="sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ="; }; + mbedtls = { + version = "v2.25.0"; + hash = "sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ="; + }; }; v2169 = buildECTesterStandalone { - mbedtls = { version="v2.16.9"; hash="sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c="; }; + mbedtls = { + version = "v2.16.9"; + hash = "sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c="; + }; }; v2718 = buildECTesterStandalone { - mbedtls = { version="v2.7.18"; hash="sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg="; }; + mbedtls = { + version = "v2.7.18"; + hash = "sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg="; + }; }; v2240 = buildECTesterStandalone { - mbedtls = { version="v2.24.0"; hash="sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM="; }; + mbedtls = { + version = "v2.24.0"; + hash = "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM="; + }; }; } diff --git a/nix/mbedtlsshim.nix b/nix/mbedtlsshim.nix index cbb850c..d1f5434 100644 --- a/nix/mbedtlsshim.nix +++ b/nix/mbedtlsshim.nix @@ -1,8 +1,6 @@ -{ - pkgs - , mbedtls -}: -with pkgs; stdenv.mkDerivation rec { +{ pkgs, mbedtls }: +with pkgs; +stdenv.mkDerivation rec { name = "MbedTLSShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/nettle_pkg_versions.nix b/nix/nettle_pkg_versions.nix index c5d7270..8350f88 100644 --- a/nix/nettle_pkg_versions.nix +++ b/nix/nettle_pkg_versions.nix @@ -1,59 +1,129 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v3_8_1 = buildECTesterStandalone { - nettle = { version="3.8.1"; tag="nettle_3.8.1_release_20220727"; hash="sha256-Nk8+K3fNfc3oP9fEUhnINOVLDHXkKLb4lKI9Et1By/4="; }; - }; + nettle = { + version = "3.8.1"; + tag = "nettle_3.8.1_release_20220727"; + hash = "sha256-Nk8+K3fNfc3oP9fEUhnINOVLDHXkKLb4lKI9Et1By/4="; + }; + }; v3_8 = buildECTesterStandalone { - nettle = { version="3.8"; tag="nettle_3.8_release_20220602"; hash="sha256-dXbGhIHBmPZEsIwWDRpIULqUSeMIBpRVtSEzGfI06OY="; }; - }; + nettle = { + version = "3.8"; + tag = "nettle_3.8_release_20220602"; + hash = "sha256-dXbGhIHBmPZEsIwWDRpIULqUSeMIBpRVtSEzGfI06OY="; + }; + }; v3_7_3 = buildECTesterStandalone { - nettle = { version="3.7.3"; tag="nettle_3.7.3_release_20210606"; hash="sha256-Zh9esD8EijuSTDqK0lFdQGjkD2fndOiiaCdlgAfjvPA="; }; - }; + nettle = { + version = "3.7.3"; + tag = "nettle_3.7.3_release_20210606"; + hash = "sha256-Zh9esD8EijuSTDqK0lFdQGjkD2fndOiiaCdlgAfjvPA="; + }; + }; v3_7_2 = buildECTesterStandalone { - nettle = { version="3.7.2"; tag="nettle_3.7.2_release_20210321"; hash="sha256-jSpgTvHN5M1ft35CJTHqJa0GRnn/Ct+VbnizNS4O8WI="; }; - }; + nettle = { + version = "3.7.2"; + tag = "nettle_3.7.2_release_20210321"; + hash = "sha256-jSpgTvHN5M1ft35CJTHqJa0GRnn/Ct+VbnizNS4O8WI="; + }; + }; v3_7_1 = buildECTesterStandalone { - nettle = { version="3.7.1"; tag="nettle_3.7.1_release_20210217"; hash="sha256-FWYhQnx7AKdf+bNLdwuV00+A73pVw0B96UsWy/Q2xC4="; }; - }; + nettle = { + version = "3.7.1"; + tag = "nettle_3.7.1_release_20210217"; + hash = "sha256-FWYhQnx7AKdf+bNLdwuV00+A73pVw0B96UsWy/Q2xC4="; + }; + }; v3_7 = buildECTesterStandalone { - nettle = { version="3.7"; tag="nettle_3.7_release_20210104"; hash="sha256-8AH2TrREvxPdkbzsy8IKy8YMQxHW4rIIeEUuuanOx1o="; }; - }; + nettle = { + version = "3.7"; + tag = "nettle_3.7_release_20210104"; + hash = "sha256-8AH2TrREvxPdkbzsy8IKy8YMQxHW4rIIeEUuuanOx1o="; + }; + }; v3_6 = buildECTesterStandalone { - nettle = { version="3.6"; tag="nettle_3.6_release_20200429"; hash="sha256-0kwNDyq/+8j0803PEUsPEx7Dd0iV81VZIv4vQPPV4/E="; }; - }; + nettle = { + version = "3.6"; + tag = "nettle_3.6_release_20200429"; + hash = "sha256-0kwNDyq/+8j0803PEUsPEx7Dd0iV81VZIv4vQPPV4/E="; + }; + }; v3_5_1 = buildECTesterStandalone { - nettle = { version="3.5.1"; tag="nettle_3.5.1_release_20190627"; hash="sha256-dcyhmYdhsC4W8ttW2lKZKu9iK/VaO0XsU4vC7trclBk="; }; - }; + nettle = { + version = "3.5.1"; + tag = "nettle_3.5.1_release_20190627"; + hash = "sha256-dcyhmYdhsC4W8ttW2lKZKu9iK/VaO0XsU4vC7trclBk="; + }; + }; v3_5 = buildECTesterStandalone { - nettle = { version="3.5"; tag="nettle_3.5_release_20190626"; hash="sha256-Qy2Y3NNBy9BjqWMCVSQSI2jB8u6cchu2jXcdXjRnS08="; }; - }; + nettle = { + version = "3.5"; + tag = "nettle_3.5_release_20190626"; + hash = "sha256-Qy2Y3NNBy9BjqWMCVSQSI2jB8u6cchu2jXcdXjRnS08="; + }; + }; v3_4_1 = buildECTesterStandalone { - nettle = { version="3.4.1"; tag="nettle_3.4.1_release_20181204"; hash="sha256-+UHPFTXNXRgZvlzK5bq+8B9tthH5tad3uunHYEuKkq0="; }; - }; + nettle = { + version = "3.4.1"; + tag = "nettle_3.4.1_release_20181204"; + hash = "sha256-+UHPFTXNXRgZvlzK5bq+8B9tthH5tad3uunHYEuKkq0="; + }; + }; v3_4 = buildECTesterStandalone { - nettle = { version="3.4"; tag="nettle_3.4_release_20171119"; hash="sha256-rnpC3wJlULhdrKg4m2pgumMTsFZ/N0OS5UkYWIpBHpQ="; }; - }; + nettle = { + version = "3.4"; + tag = "nettle_3.4_release_20171119"; + hash = "sha256-rnpC3wJlULhdrKg4m2pgumMTsFZ/N0OS5UkYWIpBHpQ="; + }; + }; v3_3 = buildECTesterStandalone { - nettle = { version="3.3"; tag="nettle_3.3_release_20161001"; hash="sha256-RpQmJ9XQyhFyD+wY2B/Dj374N+pBl8H2MOcc4NRwsR4="; }; - }; + nettle = { + version = "3.3"; + tag = "nettle_3.3_release_20161001"; + hash = "sha256-RpQmJ9XQyhFyD+wY2B/Dj374N+pBl8H2MOcc4NRwsR4="; + }; + }; v3_2 = buildECTesterStandalone { - nettle = { version="3.2"; tag="nettle_3.2_release_20160128"; hash="sha256-6kKD3vI2QT7ataTPnPMq31QMjfG5tnZBz8IwL8qEnZc="; }; - }; + nettle = { + version = "3.2"; + tag = "nettle_3.2_release_20160128"; + hash = "sha256-6kKD3vI2QT7ataTPnPMq31QMjfG5tnZBz8IwL8qEnZc="; + }; + }; v3_1_1 = buildECTesterStandalone { - nettle = { version="3.1.1"; tag="nettle_3.1.1_release_20150424"; hash="sha256-X9TSXWTY3cuF0NiXVyr3OwW00WPGzElDilv7uP8pPUw="; }; - }; + nettle = { + version = "3.1.1"; + tag = "nettle_3.1.1_release_20150424"; + hash = "sha256-X9TSXWTY3cuF0NiXVyr3OwW00WPGzElDilv7uP8pPUw="; + }; + }; v3_1 = buildECTesterStandalone { - nettle = { version="3.1"; tag="nettle_3.1_release_20150407"; hash="sha256-9oWdTsiOcIBVkK+YYrS4xDotH8eZHfCnpxGx58qfydM="; }; - }; + nettle = { + version = "3.1"; + tag = "nettle_3.1_release_20150407"; + hash = "sha256-9oWdTsiOcIBVkK+YYrS4xDotH8eZHfCnpxGx58qfydM="; + }; + }; v3_0 = buildECTesterStandalone { - nettle = { version="3.0"; tag="nettle_3.0_release_20140607"; hash="sha256-llHAvSMm63N9DtnrQDREcSQHwBolsP6BNDLvMb682RM="; }; - }; + nettle = { + version = "3.0"; + tag = "nettle_3.0_release_20140607"; + hash = "sha256-llHAvSMm63N9DtnrQDREcSQHwBolsP6BNDLvMb682RM="; + }; + }; v2_7_1 = buildECTesterStandalone { - nettle = { version="2.7.1"; tag="nettle_2.7.1_release_20130528"; hash="sha256-vHHr1DQ1U312d5nkFPzojlIbcnjUjIYGUSFuH8ZVW0A="; }; - }; + nettle = { + version = "2.7.1"; + tag = "nettle_2.7.1_release_20130528"; + hash = "sha256-vHHr1DQ1U312d5nkFPzojlIbcnjUjIYGUSFuH8ZVW0A="; + }; + }; v2_7 = buildECTesterStandalone { - nettle = { version="2.7"; tag="nettle_2.7_release_20130424"; hash="sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY="; }; - }; + nettle = { + version = "2.7"; + tag = "nettle_2.7_release_20130424"; + hash = "sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY="; + }; + }; } diff --git a/nix/nettleshim.nix b/nix/nettleshim.nix index b431a2a..f968357 100644 --- a/nix/nettleshim.nix +++ b/nix/nettleshim.nix @@ -1,9 +1,10 @@ { - pkgs - , nettle - , gmp + pkgs, + nettle, + gmp, }: -with pkgs; stdenv.mkDerivation rec { +with pkgs; +stdenv.mkDerivation rec { name = "NettleShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/openssl_pkg_versions.nix b/nix/openssl_pkg_versions.nix index a702e61..61c6306 100644 --- a/nix/openssl_pkg_versions.nix +++ b/nix/openssl_pkg_versions.nix @@ -1,65 +1,123 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v331 = buildECTesterStandalone { - openssl = { version="3.3.1"; hash="sha256-Ezvzm40WNayUqEgwQsxEglG3cKDRLHrwwF6old3Zjx0="; }; - }; + openssl = { + version = "3.3.1"; + hash = "sha256-Ezvzm40WNayUqEgwQsxEglG3cKDRLHrwwF6old3Zjx0="; + }; + }; v322 = buildECTesterStandalone { - openssl = { version="3.2.2"; hash="sha256-QYFzZZxh7gSRWwtSaV8JHgF6w+ZjePgTT9b4H+CjB6s="; }; - }; + openssl = { + version = "3.2.2"; + hash = "sha256-QYFzZZxh7gSRWwtSaV8JHgF6w+ZjePgTT9b4H+CjB6s="; + }; + }; v316 = buildECTesterStandalone { - openssl = { version="3.1.6"; hash="sha256-QrArZza3vMRME4/iAy+K4mwtCyErH9mklYkRrZciPrM="; }; - }; + openssl = { + version = "3.1.6"; + hash = "sha256-QrArZza3vMRME4/iAy+K4mwtCyErH9mklYkRrZciPrM="; + }; + }; v3014 = buildECTesterStandalone { - openssl = { version="3.0.14"; hash="sha256-DwwWLusMcv1Zz9t8KsV3pFVtFDvfAJTXCJDSfg6jAh8="; }; - }; + openssl = { + version = "3.0.14"; + hash = "sha256-DwwWLusMcv1Zz9t8KsV3pFVtFDvfAJTXCJDSfg6jAh8="; + }; + }; v330 = buildECTesterStandalone { - openssl = { version="3.3.0"; hash="sha256-Gke9xG+sJWoNyO+2lvf3b6X5YEm6G2D97VR4vTFlxtI="; }; - }; + openssl = { + version = "3.3.0"; + hash = "sha256-Gke9xG+sJWoNyO+2lvf3b6X5YEm6G2D97VR4vTFlxtI="; + }; + }; v321 = buildECTesterStandalone { - openssl = { version="3.2.1"; hash="sha256-dcxoA/+skmJcBuo8Z3+zLvINFaG0HsyN3bxrnWotqEw="; }; - }; + openssl = { + version = "3.2.1"; + hash = "sha256-dcxoA/+skmJcBuo8Z3+zLvINFaG0HsyN3bxrnWotqEw="; + }; + }; v315 = buildECTesterStandalone { - openssl = { version="3.1.5"; hash="sha256-KZ3f0KUGptN95WOG0VzjDTRNkYhN/JirMzC3wAkCmTE="; }; - }; + openssl = { + version = "3.1.5"; + hash = "sha256-KZ3f0KUGptN95WOG0VzjDTRNkYhN/JirMzC3wAkCmTE="; + }; + }; v3013 = buildECTesterStandalone { - openssl = { version="3.0.13"; hash="sha256-50UE7XA1KV7HBisdoWwVtX/yoDzSBkoo2MOUWMrMRfw="; }; - }; + openssl = { + version = "3.0.13"; + hash = "sha256-50UE7XA1KV7HBisdoWwVtX/yoDzSBkoo2MOUWMrMRfw="; + }; + }; v320 = buildECTesterStandalone { - openssl = { version="3.2.0"; hash="sha256-qS9tvKl1ZngOyV4ro9SKqNqgkEiqyDksfHxYzJwDx2I="; }; - }; + openssl = { + version = "3.2.0"; + hash = "sha256-qS9tvKl1ZngOyV4ro9SKqNqgkEiqyDksfHxYzJwDx2I="; + }; + }; v314 = buildECTesterStandalone { - openssl = { version="3.1.4"; hash="sha256-cnwwVD/kCugEwZ5tZbB+PlfWRIJtpUtutOveOsQHfZc="; }; - }; + openssl = { + version = "3.1.4"; + hash = "sha256-cnwwVD/kCugEwZ5tZbB+PlfWRIJtpUtutOveOsQHfZc="; + }; + }; v3012 = buildECTesterStandalone { - openssl = { version="3.0.12"; hash="sha256-mnpzVfPUtz9DtXMM6ANx+dH5eET/yMSwHHI7oGJdaq0="; }; - }; + openssl = { + version = "3.0.12"; + hash = "sha256-mnpzVfPUtz9DtXMM6ANx+dH5eET/yMSwHHI7oGJdaq0="; + }; + }; v313 = buildECTesterStandalone { - openssl = { version="3.1.3"; hash="sha256-+0zy03Hvld8NyiqoXxHgrivbyG95gcv5MM6O/hrKDyg="; }; - }; + openssl = { + version = "3.1.3"; + hash = "sha256-+0zy03Hvld8NyiqoXxHgrivbyG95gcv5MM6O/hrKDyg="; + }; + }; v3011 = buildECTesterStandalone { - openssl = { version="3.0.11"; hash="sha256-n6TUFXzWgxk1pUJ5ZxzCDF5U6VlDOOEJy5h5+giV0Qw="; }; - }; + openssl = { + version = "3.0.11"; + hash = "sha256-n6TUFXzWgxk1pUJ5ZxzCDF5U6VlDOOEJy5h5+giV0Qw="; + }; + }; v312 = buildECTesterStandalone { - openssl = { version="3.1.2"; hash="sha256-jHdpkxVGUtC7OT9QbYULgRUXyL2NJLEAiu9X++VdPzE="; }; - }; + openssl = { + version = "3.1.2"; + hash = "sha256-jHdpkxVGUtC7OT9QbYULgRUXyL2NJLEAiu9X++VdPzE="; + }; + }; v3010 = buildECTesterStandalone { - openssl = { version="3.0.10"; hash="sha256-II8ngfBapaRVxpMOIKXPe5eGoZh7Qlhb4BN/tF4rimQ="; }; - }; + openssl = { + version = "3.0.10"; + hash = "sha256-II8ngfBapaRVxpMOIKXPe5eGoZh7Qlhb4BN/tF4rimQ="; + }; + }; v311 = buildECTesterStandalone { - openssl = { version="3.1.1"; hash="sha256-aLQF6mRSHJhTd3lbW3BdEWwc87+TOE0bvngkf3YBCCI="; }; - }; + openssl = { + version = "3.1.1"; + hash = "sha256-aLQF6mRSHJhTd3lbW3BdEWwc87+TOE0bvngkf3YBCCI="; + }; + }; v309 = buildECTesterStandalone { - openssl = { version="3.0.9"; hash="sha256-Luwx8qwOEm/2jYEHiR71NBWcT8+wlTZdTNTcV9gmFu4="; }; - }; + openssl = { + version = "3.0.9"; + hash = "sha256-Luwx8qwOEm/2jYEHiR71NBWcT8+wlTZdTNTcV9gmFu4="; + }; + }; v310 = buildECTesterStandalone { - openssl = { version="3.1.0"; hash="sha256-qG6tXD4lm/F1FN7LMLKQ4L86Y2aDFobP+6z3UN9EFSc="; }; - }; + openssl = { + version = "3.1.0"; + hash = "sha256-qG6tXD4lm/F1FN7LMLKQ4L86Y2aDFobP+6z3UN9EFSc="; + }; + }; v308 = buildECTesterStandalone { - openssl = { version="3.0.8"; hash="sha256-aTPi8dpvI6UOoibuxukbVD0nfSCYAldjtZMc9qfgmcc="; }; - }; + openssl = { + version = "3.0.8"; + hash = "sha256-aTPi8dpvI6UOoibuxukbVD0nfSCYAldjtZMc9qfgmcc="; + }; + }; v307 = buildECTesterStandalone { - openssl = { version="3.0.7"; hash="sha256-6Pc1kIFYRtsobSFZUP3vm4grtriG1QrLQxwChXgv41s="; }; - }; -} \ No newline at end of file + openssl = { + version = "3.0.7"; + hash = "sha256-6Pc1kIFYRtsobSFZUP3vm4grtriG1QrLQxwChXgv41s="; + }; + }; +} diff --git a/nix/opensslshim.nix b/nix/opensslshim.nix index 6260b71..1c79e94 100644 --- a/nix/opensslshim.nix +++ b/nix/opensslshim.nix @@ -1,8 +1,6 @@ -{ - pkgs - , openssl -}: -with pkgs; stdenv.mkDerivation { +{ pkgs, openssl }: +with pkgs; +stdenv.mkDerivation { name = "OpenSSL Shim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/tomcrypt_pkg_versions.nix b/nix/tomcrypt_pkg_versions.nix index fcd0883..c3ccc19 100644 --- a/nix/tomcrypt_pkg_versions.nix +++ b/nix/tomcrypt_pkg_versions.nix @@ -1,26 +1,48 @@ +{ buildECTesterStandalone }: { - buildECTesterStandalone -}: -{ v1182 = buildECTesterStandalone { - tomcrypt = { version = "1.18.2"; hash = "sha256-MEU+u54aXKGSAMPYsh+L9axowzIHiew1uWq8wDsEBmw=";}; - tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + tomcrypt = { + version = "1.18.2"; + hash = "sha256-MEU+u54aXKGSAMPYsh+L9axowzIHiew1uWq8wDsEBmw="; + }; + tommath = { + version = "1.3.0"; + hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; + }; }; v1181 = buildECTesterStandalone { - tomcrypt = { version = "1.18.1"; hash = "sha256-P00koc4+mAHQ/L5iCuPoiOeI/msZscO5KHZrqmbotRo=";}; - tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + tomcrypt = { + version = "1.18.1"; + hash = "sha256-P00koc4+mAHQ/L5iCuPoiOeI/msZscO5KHZrqmbotRo="; + }; + tommath = { + version = "1.3.0"; + hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; + }; }; v1180 = buildECTesterStandalone { - tomcrypt = { version = "1.18.0"; hash = "sha256-Y7U+updJI/f3zD6k84DTZDQZh6vhfqR0W8HyizlUZcU=";}; - tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; + tomcrypt = { + version = "1.18.0"; + hash = "sha256-Y7U+updJI/f3zD6k84DTZDQZh6vhfqR0W8HyizlUZcU="; + }; + tommath = { + version = "1.3.0"; + hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; + }; }; # v101 = buildECTesterStandalone { # tomcrypt = { version = "1.01"; hash = "sha256-lVAPxgkAcBivzZmWfqu0sEh8yGo7Ji2hIYwx4/g0GzM=";}; # tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; # }; v117 = buildECTesterStandalone { - tomcrypt = { version = "1.17"; hash = "sha256-NWWAs6p27UC64nDL0MwMvzU5aWNe8LZu7DC06d/8isA=";}; + tomcrypt = { + version = "1.17"; + hash = "sha256-NWWAs6p27UC64nDL0MwMvzU5aWNe8LZu7DC06d/8isA="; + }; # NOTE: which is the correct version of libtommath for a particular version of libtomcryp? - tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; - }; + tommath = { + version = "1.3.0"; + hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; + }; + }; } diff --git a/nix/tomcryptshim.nix b/nix/tomcryptshim.nix index 64e22b4..bcdc984 100644 --- a/nix/tomcryptshim.nix +++ b/nix/tomcryptshim.nix @@ -1,9 +1,10 @@ { - pkgs - , libtomcrypt - , libtommath + pkgs, + libtomcrypt, + libtommath, }: -with pkgs; stdenv.mkDerivation { +with pkgs; +stdenv.mkDerivation { name = "TomCryptShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; diff --git a/nix/x b/nix/x new file mode 100644 index 0000000..9d23f4b --- /dev/null +++ b/nix/x @@ -0,0 +1,21 @@ +{ pkgs, libressl }: +with pkgs; +stdenv.mkDerivation rec { + name = "LibreSSLShim"; + src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + + buildInputs = [ + libressl + pkg-config + jdk11_headless + ]; + + buildPhase = '' + make libressl + ''; + + installPhase = '' + mkdir --parents $out/lib + cp libressl_provider.so $out/lib + ''; +} diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 0ee834c..3ceb718 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -97,10 +97,10 @@ openssl.o: openssl.c boringssl: boringssl_provider.so boringssl_provider.so: boringssl.o c_utils.o | lib_timing.so lib_csignals.so - NIX_CFLAGS_COMPILE= $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -l:lib_boringssl.a -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so + $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -l:lib_boringssl.a -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so boringssl.o: boringssl.c - NIX_CFLAGS_COMPILE= $(CC) -I$(BORINGSSL_CFLAGS) $(CFLAGS) -c $< + $(CC) -I$(BORINGSSL_CFLAGS) $(CFLAGS) -c $< # libgcrypt shim @@ -183,10 +183,10 @@ nettle.o: nettle.c libressl: libressl_provider.so libressl_provider.so: libressl.o c_utils.o | lib_timing.so lib_csignals.so - NIX_CFLAGS_COMPILE= $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs libresslcrypto) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs libresslcrypto) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so libressl.o: libressl.c - NIX_CFLAGS_COMPILE= $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< + $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< help: @echo "# This makefile builds the JNI shims necessary to test native libraries." -- cgit v1.3.1 From 40f7282b2ef832933396787fda54fbfe2a9c4694 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 14:43:04 +0200 Subject: Recalculate correct OpenSSL source hashes --- fetchReleases.py | 3 ++- nix/openssl_pkg_versions.nix | 40 ++++++++++++++++++++-------------------- 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index a17b708..940dc6a 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -111,8 +111,9 @@ def fetch_openssl(): except ValueError: continue flat_version = "v" + "".join(dotted_version.split('.')) - download_url = f"https://github.com/{owner}/{repo}/archive/{release['tag_name']}.tar.gz" + download_url = f"https://www.openssl.org/source/openssl-{dotted_version}.tar.gz" digest = get_source_hash(download_url) + print(f"{dotted_version}:{digest}") rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=dotted_version).strip() diff --git a/nix/openssl_pkg_versions.nix b/nix/openssl_pkg_versions.nix index 61c6306..11add73 100644 --- a/nix/openssl_pkg_versions.nix +++ b/nix/openssl_pkg_versions.nix @@ -3,121 +3,121 @@ v331 = buildECTesterStandalone { openssl = { version = "3.3.1"; - hash = "sha256-Ezvzm40WNayUqEgwQsxEglG3cKDRLHrwwF6old3Zjx0="; + hash = "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; }; }; v322 = buildECTesterStandalone { openssl = { version = "3.2.2"; - hash = "sha256-QYFzZZxh7gSRWwtSaV8JHgF6w+ZjePgTT9b4H+CjB6s="; + hash = "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc="; }; }; v316 = buildECTesterStandalone { openssl = { version = "3.1.6"; - hash = "sha256-QrArZza3vMRME4/iAy+K4mwtCyErH9mklYkRrZciPrM="; + hash = "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc="; }; }; v3014 = buildECTesterStandalone { openssl = { version = "3.0.14"; - hash = "sha256-DwwWLusMcv1Zz9t8KsV3pFVtFDvfAJTXCJDSfg6jAh8="; + hash = "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o="; }; }; v330 = buildECTesterStandalone { openssl = { version = "3.3.0"; - hash = "sha256-Gke9xG+sJWoNyO+2lvf3b6X5YEm6G2D97VR4vTFlxtI="; + hash = "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI="; }; }; v321 = buildECTesterStandalone { openssl = { version = "3.2.1"; - hash = "sha256-dcxoA/+skmJcBuo8Z3+zLvINFaG0HsyN3bxrnWotqEw="; + hash = "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk="; }; }; v315 = buildECTesterStandalone { openssl = { version = "3.1.5"; - hash = "sha256-KZ3f0KUGptN95WOG0VzjDTRNkYhN/JirMzC3wAkCmTE="; + hash = "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="; }; }; v3013 = buildECTesterStandalone { openssl = { version = "3.0.13"; - hash = "sha256-50UE7XA1KV7HBisdoWwVtX/yoDzSBkoo2MOUWMrMRfw="; + hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="; }; }; v320 = buildECTesterStandalone { openssl = { version = "3.2.0"; - hash = "sha256-qS9tvKl1ZngOyV4ro9SKqNqgkEiqyDksfHxYzJwDx2I="; + hash = "sha256-FMgm8Hx+QzcG+1xp+p4l2rlWhIRLTJYqLPG/GD60aQ4="; }; }; v314 = buildECTesterStandalone { openssl = { version = "3.1.4"; - hash = "sha256-cnwwVD/kCugEwZ5tZbB+PlfWRIJtpUtutOveOsQHfZc="; + hash = "sha256-hAr1Nmq5tSK95SWCa+PvD7Cvgcap69hMqmAP6hcx7uM="; }; }; v3012 = buildECTesterStandalone { openssl = { version = "3.0.12"; - hash = "sha256-mnpzVfPUtz9DtXMM6ANx+dH5eET/yMSwHHI7oGJdaq0="; + hash = "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E="; }; }; v313 = buildECTesterStandalone { openssl = { version = "3.1.3"; - hash = "sha256-+0zy03Hvld8NyiqoXxHgrivbyG95gcv5MM6O/hrKDyg="; + hash = "sha256-8DFqLr2J5/I1KXZEVFhon4AwIJN4jEZmkvsqGIsurPY="; }; }; v3011 = buildECTesterStandalone { openssl = { version = "3.0.11"; - hash = "sha256-n6TUFXzWgxk1pUJ5ZxzCDF5U6VlDOOEJy5h5+giV0Qw="; + hash = "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U="; }; }; v312 = buildECTesterStandalone { openssl = { version = "3.1.2"; - hash = "sha256-jHdpkxVGUtC7OT9QbYULgRUXyL2NJLEAiu9X++VdPzE="; + hash = "sha256-oM5puLl+pqNblodSNapFO5Zro8uory3iNlfYtnZ9ZTk="; }; }; v3010 = buildECTesterStandalone { openssl = { version = "3.0.10"; - hash = "sha256-II8ngfBapaRVxpMOIKXPe5eGoZh7Qlhb4BN/tF4rimQ="; + hash = "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM="; }; }; v311 = buildECTesterStandalone { openssl = { version = "3.1.1"; - hash = "sha256-aLQF6mRSHJhTd3lbW3BdEWwc87+TOE0bvngkf3YBCCI="; + hash = "sha256-s6phM0IzuFK2PdsEjfGBF3wsZZ651DdgCBGPnAjQdnQ="; }; }; v309 = buildECTesterStandalone { openssl = { version = "3.0.9"; - hash = "sha256-Luwx8qwOEm/2jYEHiR71NBWcT8+wlTZdTNTcV9gmFu4="; + hash = "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA="; }; }; v310 = buildECTesterStandalone { openssl = { version = "3.1.0"; - hash = "sha256-qG6tXD4lm/F1FN7LMLKQ4L86Y2aDFobP+6z3UN9EFSc="; + hash = "sha256-qqklrZgodFxMrZ2e/rJz3sqCDyzc8sOsfXwSErfEl7Q="; }; }; v308 = buildECTesterStandalone { openssl = { version = "3.0.8"; - hash = "sha256-aTPi8dpvI6UOoibuxukbVD0nfSCYAldjtZMc9qfgmcc="; + hash = "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="; }; }; v307 = buildECTesterStandalone { openssl = { version = "3.0.7"; - hash = "sha256-6Pc1kIFYRtsobSFZUP3vm4grtriG1QrLQxwChXgv41s="; + hash = "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4="; }; }; } -- cgit v1.3.1 From 424d9520440dfb0c769a1e4070351c181137328d Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 16:52:31 +0200 Subject: Remove accidental copy --- nix/x | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 nix/x diff --git a/nix/x b/nix/x deleted file mode 100644 index 9d23f4b..0000000 --- a/nix/x +++ /dev/null @@ -1,21 +0,0 @@ -{ pkgs, libressl }: -with pkgs; -stdenv.mkDerivation rec { - name = "LibreSSLShim"; - src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; - - buildInputs = [ - libressl - pkg-config - jdk11_headless - ]; - - buildPhase = '' - make libressl - ''; - - installPhase = '' - mkdir --parents $out/lib - cp libressl_provider.so $out/lib - ''; -} -- cgit v1.3.1 From a1033858ff932863599898e889b6ee4303208ae4 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 16:53:37 +0200 Subject: Update BoringSSL hashes --- nix/boringssl_pkg_versions.nix | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/nix/boringssl_pkg_versions.nix b/nix/boringssl_pkg_versions.nix index 87e9519..675d495 100644 --- a/nix/boringssl_pkg_versions.nix +++ b/nix/boringssl_pkg_versions.nix @@ -1,5 +1,17 @@ { buildECTesterStandalone }: { + rb7f5443c = buildECTesterStandalone { + boringssl = { + rev = "b7f5443cfc1298d77dfb9e6f2eea68035de521a4"; + hash = "sha256-ojt43tOnQRRLXZL9amoIDk1J7xncpMmiHf4qtgMQ2Po="; + }; + }; + r1b40d99d = buildECTesterStandalone { + boringssl = { + rev = "1b40d99d6a90d0039e9021adde5ad4de743cf0ad"; + hash = "sha256-2z2h71y5MyM5ExL/b8EzVVK4e88z6Q9vbui3Ju/4kpg="; + }; + }; r5af122c3 = buildECTesterStandalone { boringssl = { rev = "5af122c3dfc163b5d1859f1f450756e8e320a142"; @@ -588,16 +600,4 @@ hash = "sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo="; }; }; - r2db0eb3f = buildECTesterStandalone { - boringssl = { - rev = "2db0eb3f96a5756298dcd7f9319e56a98585bd10"; - hash = "sha256-+G7BcdtU8AeNMY4NLQgKpgF28/CS9FIjf+vaOd+Wf6o="; - }; - }; - r70d05d5a = buildECTesterStandalone { - boringssl = { - rev = "70d05d5a34f6366116e2b0a530ea8d0186bb2a8e"; - hash = "sha256-aEtH4Efvt+zRGvUD9JAsBU+EfZySk8gU05fek5rbcbM="; - }; - }; } -- cgit v1.3.1 From 6a8ecdda92841fe87edab5f750af047c03911956 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 16:55:34 +0200 Subject: Store package versions in JSON to simplify reusability --- fetchReleases.py | 107 +++++- flake.nix | 61 +++- nix/boringssl_pkg_versions.json | 402 ++++++++++++++++++++++ nix/boringssl_pkg_versions.nix | 603 --------------------------------- nix/botan_pkg_versions.json | 1 + nix/botan_pkg_versions.nix | 276 ---------------- nix/cryptopp_pkg_versions.json | 1 + nix/cryptopp_pkg_versions.nix | 99 ------ nix/gcrypt_pkg_versions.json | 234 +++++++++++++ nix/gcrypt_pkg_versions.nix | 352 -------------------- nix/ippcp_pkg_versions.json | 98 ++++++ nix/ippcp_pkg_versions.nix | 147 -------- nix/libressl_pkg_versions.json | 478 +++++++++++++++++++++++++++ nix/libressl_pkg_versions.nix | 717 ---------------------------------------- nix/mbedtls_pkg_versions.json | 122 +++++++ nix/mbedtls_pkg_versions.nix | 183 ---------- nix/nettle_pkg_versions.json | 92 ++++++ nix/nettle_pkg_versions.nix | 129 -------- nix/openssl_pkg_versions.json | 1 + nix/openssl_pkg_versions.nix | 123 ------- nix/tomcrypt_pkg_versions.nix | 48 --- 21 files changed, 1570 insertions(+), 2704 deletions(-) create mode 100644 nix/boringssl_pkg_versions.json delete mode 100644 nix/boringssl_pkg_versions.nix create mode 100644 nix/botan_pkg_versions.json delete mode 100644 nix/botan_pkg_versions.nix create mode 100644 nix/cryptopp_pkg_versions.json delete mode 100644 nix/cryptopp_pkg_versions.nix create mode 100644 nix/gcrypt_pkg_versions.json delete mode 100644 nix/gcrypt_pkg_versions.nix create mode 100644 nix/ippcp_pkg_versions.json delete mode 100644 nix/ippcp_pkg_versions.nix create mode 100644 nix/libressl_pkg_versions.json delete mode 100644 nix/libressl_pkg_versions.nix create mode 100644 nix/mbedtls_pkg_versions.json delete mode 100644 nix/mbedtls_pkg_versions.nix create mode 100644 nix/nettle_pkg_versions.json delete mode 100644 nix/nettle_pkg_versions.nix create mode 100644 nix/openssl_pkg_versions.json delete mode 100644 nix/openssl_pkg_versions.nix delete mode 100644 nix/tomcrypt_pkg_versions.nix diff --git a/fetchReleases.py b/fetchReleases.py index 940dc6a..137d992 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -37,6 +37,7 @@ def get_source_hash(url, unpack=False): return digest_sri def fetch_botan(): + pkg = "botan" # NOTE: this way omits the older releases at https://botan.randombit.net/releases/old release_list = "https://botan.randombit.net/releases/" download_url = "https://botan.randombit.net/releases/{version}" @@ -48,6 +49,7 @@ def fetch_botan(): };""") renders = [] + versions = {} for link in soup.find_all("a"): if link.text.startswith("Botan") and not link.text.endswith('.asc'): download_link = download_url.format(version=link['href']) @@ -59,15 +61,25 @@ def fetch_botan(): digest = get_source_hash(download_link) # NOTE: use underscore to separate the versions? flat_version = f"v{match['major']}{match['minor']}{match['patch']}" + print(f"{version}:{digest}") - rendered = single_version_template.render(pkg="botan", digest=digest, ext=ext, flat_version=flat_version, version=version).strip() + rendered = single_version_template.render(pkg=pkg, digest=digest, ext=ext, flat_version=flat_version, version=version).strip() renders.append(rendered) + versions[flat_version] = { + "version": version, + "source_extension": ext, + "hash": digest + } all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open("./nix/botan_pkg_versions.nix", "w") as handle: + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + def fetch_cryptopp(): + pkg = "cryptopp" owner = "weidai11" repo = "cryptopp" release_url = f"https://api.github.com/repos/{owner}/{repo}/releases" @@ -77,6 +89,7 @@ def fetch_cryptopp(): {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; };""") renders = [] + versions = {} for release in resp.json(): if not release['draft'] and not release['prerelease']: _, *version_values = release['tag_name'].split('_') @@ -84,15 +97,22 @@ def fetch_cryptopp(): flat_version = "v" + "".join(version_values) download_url = f"https://github.com/{owner}/{repo}/archive/{release['tag_name']}.tar.gz" digest = get_source_hash(download_url, unpack=True) + print(f"{underscored_version}:{digest}") - - rendered = single_version_template.render(pkg="cryptopp", digest=digest, flat_version=flat_version, version=underscored_version).strip() + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=underscored_version).strip() renders.append(rendered) + versions[flat_version] = { + "version": underscored_version, + "hash": digest + } all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open("./nix/cryptopp_pkg_versions.nix", "w") as handle: + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + def fetch_openssl(): pkg = "openssl" owner = "openssl" @@ -104,6 +124,7 @@ def fetch_openssl(): {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; };""") renders = [] + versions = {} for release in resp.json(): if not release['draft'] and not release['prerelease']: try: @@ -114,6 +135,10 @@ def fetch_openssl(): download_url = f"https://www.openssl.org/source/openssl-{dotted_version}.tar.gz" digest = get_source_hash(download_url) print(f"{dotted_version}:{digest}") + versions[flat_version] = { + "version": dotted_version, + "hash": digest + } rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=dotted_version).strip() @@ -123,12 +148,15 @@ def fetch_openssl(): with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + + def fetch_tomcrypt(): # fetch libtomcrypt pass def fetch_gcrypt(): - pkg = "gcrypt" release_list = "https://gnupg.org/ftp/gcrypt/libgcrypt/" download_url = "https://gnupg.org/ftp/gcrypt/libgcrypt/{version}" @@ -140,29 +168,35 @@ def fetch_gcrypt(): };""") renders = [] + versions = {} for link in soup.find_all("a"): if link.text.startswith("libgcrypt") and link.text.endswith("tar.bz2"): download_link = download_url.format(version=link['href']) match = re.match(r"libgcrypt-(?P\d+)\.(?P\d+)\.(?P\d+)(?P_do_not_use)?\.(?P.*)", link.text) version = f"{match['major']}.{match['minor']}.{match['patch']}" - print(version) digest = get_source_hash(download_link) - print(digest) + print(f"{version}:{digest}") flat_version = f"v{match['major']}{match['minor']}{match['patch']}" if match['dont']: flat_version += "_do_not_use" - rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() renders.append(rendered) + versions[flat_version] = { + "version": version, + "hash": digest + } + all_versions = all_versions_template.render(pkg_versions=renders).strip() with open("./nix/gcrypt_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) def fetch_boringssl(): @@ -172,6 +206,7 @@ def fetch_boringssl(): {{ pkg }} = { rev="{{ rev }}"; hash="{{ digest }}"; }; };""") renders = [] + versions = {} with tempfile.TemporaryDirectory() as repodir, tempfile.TemporaryDirectory() as gitdir: repodir = pathlib.Path(repodir) gitdir = pathlib.Path(gitdir) @@ -190,11 +225,18 @@ def fetch_boringssl(): rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=f"r{abbrev_commit}", rev=rev).strip() renders.append(rendered) + versions[f"r{abbrev_commit}"] = { + "rev": rev, + "hash": digest, + } all_versions = all_versions_template.render(pkg_versions=renders).strip() with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + def fetch_mbedtls(): # Mbed-TLS/mbedtls pkg = "mbedtls" @@ -207,22 +249,29 @@ def fetch_mbedtls(): {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; };""") renders = [] + versions = {} for release in resp.json(): if not release['draft'] and not release['prerelease']: version = release['tag_name'] - print(version) flat_version = version.replace('.', '') download_url = f"https://github.com/{owner}/{repo}/archive/{version}.tar.gz" digest = get_source_hash(download_url, unpack=True) - + print(f"{version}:{digest}") rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() renders.append(rendered) + versions[flat_version] = { + "version": version, + "hash": digest, + } all_versions = all_versions_template.render(pkg_versions=renders).strip() with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + def fetch_ippcp(): # https://api.github.com/repos/intel/ipp-crypto/releases pkg = "ippcp" @@ -235,22 +284,29 @@ def fetch_ippcp(): {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; };""") renders = [] + versions = {} for release in resp.json(): if not release['draft'] and not release['prerelease']: version = release['tag_name'].split('_')[1] - print(version) flat_version = "v" + version.replace('.', '_') download_url = f"https://github.com/{owner}/{repo}/archive/{release['tag_name']}.tar.gz" digest = get_source_hash(download_url, unpack=True) - + print(f"{version}:{digest}") rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() renders.append(rendered) + versions[flat_version] = { + "version": version, + "hash": digest, + } all_versions = all_versions_template.render(pkg_versions=renders).strip() with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + def fetch_nettle(): # https://api.github.com/repos/intel/ipp-crypto/releases pkg = "nettle" @@ -263,6 +319,7 @@ def fetch_nettle(): {{ pkg }} = { version="{{ version }}"; tag="{{ tag }}"; hash="{{ digest }}"; }; };""") renders = [] + versions = {} for tag in resp.json(): if tag['name'] == 'release_nettle_0.2.20010617': continue @@ -273,17 +330,26 @@ def fetch_nettle(): flat_version = "v" + version.replace('.', '_') # download_url = f"https://github.com/{owner}/{repo}/archive/{tag['name']}.tar.gz" download_url = f"mirror://gnu/nettle/nettle-{version}.tar.gz" - print(download_url) digest = get_source_hash(download_url, unpack=False) + print(f"{version}:{digest}") rendered = single_version_template.render( pkg=pkg, digest=digest, flat_version=flat_version, tag=tag['name'], version=version).strip() renders.append(rendered) + versions[flat_version] = { + "version": version, + "tag": tag['name'], + "hash": digest, + } all_versions = all_versions_template.render(pkg_versions=renders).strip() with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) + + def fetch_libressl(): pkg = "libressl" release_list = "https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/" @@ -296,23 +362,30 @@ def fetch_libressl(): };""") renders = [] + versions = {} for link in soup.find_all("a"): if link.text.startswith("libressl") and link.text.endswith('.tar.gz'): match = re.match(r"libressl-(?P\d+)\.(?P\d+)\.(?P\d+)\.tar.gz", link.text) version = f"{match['major']}.{match['minor']}.{match['patch']}" download_link = download_url.format(version=version) - print(version) digest = get_source_hash(download_link) + print(f"{version}:{digest}") # NOTE: use underscore to separate the versions? flat_version = f"v{match['major']}{match['minor']}{match['patch']}" - rendered = single_version_template.render(pkg="botan", digest=digest, flat_version=flat_version, version=version).strip() + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() renders.append(rendered) + versions[flat_version] = { + "version": version, + "hash": digest, + } all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open("./nix/{pkg}_pkg_versions.nix", "w") as handle: + with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: handle.write(all_versions) + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(versions, handle, indent=4) def main(): parser = argparse.ArgumentParser() diff --git a/flake.nix b/flake.nix index d6e2997..6a8150e 100644 --- a/flake.nix +++ b/flake.nix @@ -533,20 +533,61 @@ } ); + loadVersions = + { libName, function }: + pkgs.lib.mapAttrs (rev: specs: function { ${libName} = specs; }) ( + builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json) + ); + loadVersionsForShim = + { libName, function }: + pkgs.lib.mapAttrs (rev: specs: function specs) ( + builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json) + ); in { packages = rec { default = openssl.v331; - tomcrypt = pkgs.callPackage ./nix/tomcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; - botan = pkgs.callPackage ./nix/botan_pkg_versions.nix { inherit buildECTesterStandalone; }; - cryptopp = pkgs.callPackage ./nix/cryptopp_pkg_versions.nix { inherit buildECTesterStandalone; }; - openssl = pkgs.callPackage ./nix/openssl_pkg_versions.nix { inherit buildECTesterStandalone; }; - boringssl = pkgs.callPackage ./nix/boringssl_pkg_versions.nix { inherit buildECTesterStandalone; }; - gcrypt = pkgs.callPackage ./nix/gcrypt_pkg_versions.nix { inherit buildECTesterStandalone; }; - mbedtls = pkgs.callPackage ./nix/mbedtls_pkg_versions.nix { inherit buildECTesterStandalone; }; - ippcp = pkgs.callPackage ./nix/ippcp_pkg_versions.nix { inherit buildECTesterStandalone; }; - nettle = pkgs.callPackage ./nix/nettle_pkg_versions.nix { inherit buildECTesterStandalone; }; - libressl = pkgs.callPackage ./nix/libressl_pkg_versions.nix { inherit buildECTesterStandalone; }; + tomcrypt = loadVersions { + libName = "tomcrypt"; + function = buildECTesterStandalone; + }; + botan = loadVersions { + libName = "botan"; + function = buildECTesterStandalone; + }; + cryptopp = loadVersions { + libName = "cryptopp"; + function = buildECTesterStandalone; + }; + openssl = loadVersions { + libName = "openssl"; + function = buildECTesterStandalone; + }; + boringssl = loadVersions { + libName = "boringssl"; + function = buildECTesterStandalone; + }; + gcrypt = loadVersions { + libName = "gcrypt"; + function = buildECTesterStandalone; + }; + mbedtls = loadVersions { + libName = "mbedtls"; + function = buildECTesterStandalone; + }; + ippcp = loadVersions { + libName = "ippcp"; + function = buildECTesterStandalone; + }; + nettle = loadVersions { + libName = "nettle"; + function = buildECTesterStandalone; + }; + libressl = loadVersions { + libName = "libressl"; + function = buildECTesterStandalone; + }; + fetchReleases = with pkgs.python3Packages; diff --git a/nix/boringssl_pkg_versions.json b/nix/boringssl_pkg_versions.json new file mode 100644 index 0000000..77c4e62 --- /dev/null +++ b/nix/boringssl_pkg_versions.json @@ -0,0 +1,402 @@ +{ + "rb7f5443c": { + "rev": "b7f5443cfc1298d77dfb9e6f2eea68035de521a4", + "hash": "sha256-ojt43tOnQRRLXZL9amoIDk1J7xncpMmiHf4qtgMQ2Po=" + }, + "r1b40d99d": { + "rev": "1b40d99d6a90d0039e9021adde5ad4de743cf0ad", + "hash": "sha256-2z2h71y5MyM5ExL/b8EzVVK4e88z6Q9vbui3Ju/4kpg=" + }, + "r5af122c3": { + "rev": "5af122c3dfc163b5d1859f1f450756e8e320a142", + "hash": "sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk=" + }, + "r1e8c35af": { + "rev": "1e8c35af5363c21f0f349b4e570dcccfb9ec3f74", + "hash": "sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI=" + }, + "r14a2f35b": { + "rev": "14a2f35b6e06756902eaa7e188a25895721055fc", + "hash": "sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw=" + }, + "re23fe9b6": { + "rev": "e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6", + "hash": "sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ=" + }, + "r7a6e828d": { + "rev": "7a6e828dc53ba9a56bd49915f2a0780d63af97d2", + "hash": "sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk=" + }, + "r9cffd74f": { + "rev": "9cffd74fdb65c69506a0ce1b19420a67ad0cb19e", + "hash": "sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4=" + }, + "r82f9853f": { + "rev": "82f9853fc7d7360ae44f1e1357a6422c5244bbd8", + "hash": "sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY=" + }, + "r9b3ef1b3": { + "rev": "9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3", + "hash": "sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE=" + }, + "r096ded9f": { + "rev": "096ded9f097b73a15956b04cd168c7cfe7e28f52", + "hash": "sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo=" + }, + "rd274b1ba": { + "rev": "d274b1bacdca36f3941bf78e43dc38acf676a1a8", + "hash": "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk=" + }, + "rb34976ca": { + "rev": "b34976cae99f8d1b864dbab31e20fc00d06acb09", + "hash": "sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo=" + }, + "r77ef86d0": { + "rev": "77ef86d0431ec3ceea503b0c59888942fd35b035", + "hash": "sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M=" + }, + "r8934b1ef": { + "rev": "8934b1ef0857bc08626a2206a6f5f718942c14fc", + "hash": "sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0=" + }, + "r7c2b62e9": { + "rev": "7c2b62e93487b772990fddc1905f22d4cfaee4a4", + "hash": "sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4=" + }, + "r12f0f4be": { + "rev": "12f0f4bec2a6db53a53748dd6001d1aacaae26ba", + "hash": "sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw=" + }, + "rca2eba6a": { + "rev": "ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa", + "hash": "sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8=" + }, + "rf01108e4": { + "rev": "f01108e4761e1d4189cb134322c3cb01dc71ef87", + "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" + }, + "r26468aea": { + "rev": "26468aea6483135b156fb03a5693c495dbad2e0f", + "hash": "sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE=" + }, + "r7811fdc9": { + "rev": "7811fdc94b7ec146937e83f98d411157974ffa32", + "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" + }, + "r45db24b3": { + "rev": "45db24b36a030ec54464ea7a26c362f3c82305ee", + "hash": "sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0=" + }, + "r45b24641": { + "rev": "45b2464158379f48cec6e35a1ef503ddea1511a6", + "hash": "sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY=" + }, + "r2fcdd11f": { + "rev": "2fcdd11f6d33b667968a5bc5147e2ba83a2082b8", + "hash": "sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA=" + }, + "r6c98ebeb": { + "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", + "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" + }, + "rd1e6d3b4": { + "rev": "d1e6d3b4af50c9490cc6210e2763b3c45ba14b07", + "hash": "sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo=" + }, + "r84dc9bb6": { + "rev": "84dc9bb624b47bda0bf802ae9e04a6eecb40865c", + "hash": "sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo=" + }, + "r67422ed4": { + "rev": "67422ed4434116daa8898773692165ddd51a6ac2", + "hash": "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc=" + }, + "rc6c0b650": { + "rev": "c6c0b650091e90e6206a361c14a73223f54d42c1", + "hash": "sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg=" + }, + "r66d274df": { + "rev": "66d274dfbab9e4f84599f06504987c418ca087d9", + "hash": "sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0=" + }, + "re1d209d4": { + "rev": "e1d209d4432846d28c31d84f269f4edcb9a63509", + "hash": "sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg=" + }, + "r9cac8a6b": { + "rev": "9cac8a6b38c1cbd45c77aee108411d588da006fe", + "hash": "sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs=" + }, + "r11acdc6a": { + "rev": "11acdc6abf13cc8139c30ac9455840a347793110", + "hash": "sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y=" + }, + "r962432c6": { + "rev": "962432c687f67f8df1aa6e3dd364fbc88fea4ed8", + "hash": "sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ=" + }, + "ra220a602": { + "rev": "a220a6024f66c123019b5c080f6bd8bcaf75448c", + "hash": "sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0=" + }, + "ra6c42d68": { + "rev": "a6c42d6810ea5317fe8ed85704c097cd8f3513ca", + "hash": "sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ=" + }, + "r56fb43a2": { + "rev": "56fb43a204e57af68e00f4561c108a7004381aa3", + "hash": "sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY=" + }, + "r29223ac3": { + "rev": "29223ac349c144a4d0babc281644c0410dd1e313", + "hash": "sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ=" + }, + "re2a801f6": { + "rev": "e2a801f688dbdfac8fde90b849b1bf75f80b466c", + "hash": "sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs=" + }, + "r39dd1e3c": { + "rev": "39dd1e3c904341ac14da80224d72a77d95501ad4", + "hash": "sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4=" + }, + "r1385dbd5": { + "rev": "1385dbd51dc2eeba39076687a6c9e45c7dc8965c", + "hash": "sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk=" + }, + "r2bc9245e": { + "rev": "2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a", + "hash": "sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM=" + }, + "ra055b938": { + "rev": "a055b93845a1b2a910919e21920e4bd1ce900841", + "hash": "sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI=" + }, + "rdec5989b": { + "rev": "dec5989b793c56ad4dd32173bd2d8595ca78b398", + "hash": "sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI=" + }, + "rc1d9ac02": { + "rev": "c1d9ac02514a138129872a036e3f8a1074dcb8bd", + "hash": "sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8=" + }, + "re1a860c3": { + "rev": "e1a860c3745c77cb83228dde1b73fa62eaf43930", + "hash": "sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs=" + }, + "rfb1c75ca": { + "rev": "fb1c75caf8ba5d45a0f2c52facd36e4ad9289549", + "hash": "sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI=" + }, + "re491eeb6": { + "rev": "e491eeb610fcc69b98bc6d1ba08faf78655808f6", + "hash": "sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U=" + }, + "ra11277e1": { + "rev": "a11277e187e407d0ef403b8a60d9a32eaab7d301", + "hash": "sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo=" + }, + "r25cf1bb9": { + "rev": "25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016", + "hash": "sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk=" + }, + "rc8100f0f": { + "rev": "c8100f0f0d05c5185d58113e12a867ae0771a6c9", + "hash": "sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q=" + }, + "r1eda2363": { + "rev": "1eda2363f9e79aaa5febe91d31b6756ae4f24f30", + "hash": "sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g=" + }, + "r261579f0": { + "rev": "261579f08b2f8aa7959670df1e928c1c305a632c", + "hash": "sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg=" + }, + "r9540c045": { + "rev": "9540c0452343e684f94515288880b6b35655f792", + "hash": "sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk=" + }, + "red3f05a6": { + "rev": "ed3f05a6794adfd39937d0027afefad8f6afcae9", + "hash": "sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc=" + }, + "r4a7815c9": { + "rev": "4a7815c94077eebb3546fc287d1fa0e1356a2cd0", + "hash": "sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8=" + }, + "r5326e94d": { + "rev": "5326e94dd188beba0a5e536b1d2723aee65bd85d", + "hash": "sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0=" + }, + "re09fcf83": { + "rev": "e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e", + "hash": "sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE=" + }, + "rafd52e91": { + "rev": "afd52e91dfed27ab7193be040f067900947b14ac", + "hash": "sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo=" + }, + "re95b0cad": { + "rev": "e95b0cad901abd49755d2a2a2f1f6c3e87d12b94", + "hash": "sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw=" + }, + "r13aa2733": { + "rev": "13aa27338663c62600249ece54c94f180d57bbb7", + "hash": "sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds=" + }, + "r03982b4c": { + "rev": "03982b4cfadca0e650b384c9539b2fdb5f8aa012", + "hash": "sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg=" + }, + "r273a920f": { + "rev": "273a920f84e8b0b258737cea0f2f24627e8c5ed9", + "hash": "sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ=" + }, + "r9f7f4d03": { + "rev": "9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d", + "hash": "sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw=" + }, + "rd7278ceb": { + "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", + "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" + }, + "rbfcab2aa": { + "rev": "bfcab2aa518899ce71e7ffbc23bb22c4ef51858f", + "hash": "sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY=" + }, + "r68c29a24": { + "rev": "68c29a24ee6c9c70ecce56766ca70b115aad768f", + "hash": "sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo=" + }, + "rde6ba216": { + "rev": "de6ba216656b819d4d8de7602006561f82a8c669", + "hash": "sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4=" + }, + "r29c9e64c": { + "rev": "29c9e64ce548ff8278e9d98aa53f611f115c2bed", + "hash": "sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4=" + }, + "r58745d61": { + "rev": "58745d61afe244a37941d391f5dec3ab08f5cf2c", + "hash": "sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ=" + }, + "rc798e3a5": { + "rev": "c798e3a54912a1bfbf1c846630e2bb86e9b543a7", + "hash": "sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig=" + }, + "rba62c812": { + "rev": "ba62c812f01fb379f49f94a08a2d1282ce46e678", + "hash": "sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU=" + }, + "r2fb5f9cb": { + "rev": "2fb5f9cb8feec2234952f6999af941ac48555710", + "hash": "sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8=" + }, + "rd477c0d7": { + "rev": "d477c0d7c40ddca3a64ae26fc02d2dac175836d3", + "hash": "sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag=" + }, + "rc7019036": { + "rev": "c70190368c7040c37c1d655f0690bcde2b109a0d", + "hash": "sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE=" + }, + "r7662e58e": { + "rev": "7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2", + "hash": "sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4=" + }, + "r0355048c": { + "rev": "0355048ce0302fdeb4744dae4b8a156a38496150", + "hash": "sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY=" + }, + "r3a01cba9": { + "rev": "3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee", + "hash": "sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk=" + }, + "r07f27b1d": { + "rev": "07f27b1d445a27433f2c871935da2cefcfbdb458", + "hash": "sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A=" + }, + "rfc953df2": { + "rev": "fc953df2352e1c1bcb34cb5f75a0e409014c1690", + "hash": "sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU=" + }, + "r1a9edc3e": { + "rev": "1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba", + "hash": "sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI=" + }, + "rb8912d71": { + "rev": "b8912d713cb82a748bbe63f28f28b17632c70964", + "hash": "sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc=" + }, + "rb6bca9c6": { + "rev": "b6bca9c6dde177f641137d2991aa677997c54c67", + "hash": "sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI=" + }, + "r03d1b7c5": { + "rev": "03d1b7c544851d9f44df1e9ff21839742e08c819", + "hash": "sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA=" + }, + "r6b36ad2b": { + "rev": "6b36ad2bd6001f17a997b7a1e0ab254b001438ef", + "hash": "sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY=" + }, + "r1d24e04c": { + "rev": "1d24e04c7143171ae2010c842e3e1438510fd1c0", + "hash": "sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc=" + }, + "r8a0da669": { + "rev": "8a0da669a08b6c6b805fd7ec9d1e67694fda3711", + "hash": "sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc=" + }, + "r4d50a595": { + "rev": "4d50a595b49a2e7b7017060a4d402c4ee9fe28a2", + "hash": "sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA=" + }, + "rd34f540e": { + "rev": "d34f540e57394de22a1599c3c5d852519d388d6c", + "hash": "sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0=" + }, + "re7d76da9": { + "rev": "e7d76da920a1bd79b6ebc77e75b407cdf0a58962", + "hash": "sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0=" + }, + "r3efe2eb9": { + "rev": "3efe2eb9e3dfb49cb110c53e3430caeae4599f52", + "hash": "sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I=" + }, + "r35a91094": { + "rev": "35a910949d684aea8b86a8c42db76c4f43e31a96", + "hash": "sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw=" + }, + "r8e6aa7f3": { + "rev": "8e6aa7f39f4357a6ad15944884f72db8d25b9dff", + "hash": "sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M=" + }, + "r7c44f450": { + "rev": "7c44f450547cc777229462c2ac864a9326c0106c", + "hash": "sha256-snkPY4R9RKdCI0yUS3ICn4CHyXE9DKaYaHAggD2UAOk=" + }, + "r6ab7c148": { + "rev": "6ab7c1482bf4cdc91c87bc512aaf68ffb18975ec", + "hash": "sha256-+5ICkcKZRXCSC/y5d5Oo9WtcgdfkLZL/goGXE6V/9hE=" + }, + "rb17231cd": { + "rev": "b17231cdb9ec4e877b470c57d3280d9195811cd9", + "hash": "sha256-5G/wh35qlfGi6vHEj51QFyIryzKeTiGthfTe7tCWK8s=" + }, + "r3e89a7e8": { + "rev": "3e89a7e8db8139db356b892ca9993172346c80cf", + "hash": "sha256-VsTll0A8FfNbObOnoFLah4BMuCzlLNbqOEgSbppQo7k=" + }, + "r8de798be": { + "rev": "8de798be4b850cf88ad2c50602abe2ca3bb285df", + "hash": "sha256-pQ8BTRMOjxLu8UoyTH23wYwy2pC29yZoCyl1c+94hyM=" + }, + "rd2e3212d": { + "rev": "d2e3212de29bac1ceed33ca8ab8bbff3f41a2459", + "hash": "sha256-HRa+IdVwchzjJh1Unx8wmu++eiFtY7ctdmwgjJqkx9Y=" + }, + "r783ae722": { + "rev": "783ae722ed307a3b3782cd253fd4ffb387f38767", + "hash": "sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo=" + } +} \ No newline at end of file diff --git a/nix/boringssl_pkg_versions.nix b/nix/boringssl_pkg_versions.nix deleted file mode 100644 index 675d495..0000000 --- a/nix/boringssl_pkg_versions.nix +++ /dev/null @@ -1,603 +0,0 @@ -{ buildECTesterStandalone }: -{ - rb7f5443c = buildECTesterStandalone { - boringssl = { - rev = "b7f5443cfc1298d77dfb9e6f2eea68035de521a4"; - hash = "sha256-ojt43tOnQRRLXZL9amoIDk1J7xncpMmiHf4qtgMQ2Po="; - }; - }; - r1b40d99d = buildECTesterStandalone { - boringssl = { - rev = "1b40d99d6a90d0039e9021adde5ad4de743cf0ad"; - hash = "sha256-2z2h71y5MyM5ExL/b8EzVVK4e88z6Q9vbui3Ju/4kpg="; - }; - }; - r5af122c3 = buildECTesterStandalone { - boringssl = { - rev = "5af122c3dfc163b5d1859f1f450756e8e320a142"; - hash = "sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk="; - }; - }; - r1e8c35af = buildECTesterStandalone { - boringssl = { - rev = "1e8c35af5363c21f0f349b4e570dcccfb9ec3f74"; - hash = "sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI="; - }; - }; - r14a2f35b = buildECTesterStandalone { - boringssl = { - rev = "14a2f35b6e06756902eaa7e188a25895721055fc"; - hash = "sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw="; - }; - }; - re23fe9b6 = buildECTesterStandalone { - boringssl = { - rev = "e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6"; - hash = "sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ="; - }; - }; - r7a6e828d = buildECTesterStandalone { - boringssl = { - rev = "7a6e828dc53ba9a56bd49915f2a0780d63af97d2"; - hash = "sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk="; - }; - }; - r9cffd74f = buildECTesterStandalone { - boringssl = { - rev = "9cffd74fdb65c69506a0ce1b19420a67ad0cb19e"; - hash = "sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4="; - }; - }; - r82f9853f = buildECTesterStandalone { - boringssl = { - rev = "82f9853fc7d7360ae44f1e1357a6422c5244bbd8"; - hash = "sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY="; - }; - }; - r9b3ef1b3 = buildECTesterStandalone { - boringssl = { - rev = "9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3"; - hash = "sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE="; - }; - }; - r096ded9f = buildECTesterStandalone { - boringssl = { - rev = "096ded9f097b73a15956b04cd168c7cfe7e28f52"; - hash = "sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo="; - }; - }; - rd274b1ba = buildECTesterStandalone { - boringssl = { - rev = "d274b1bacdca36f3941bf78e43dc38acf676a1a8"; - hash = "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk="; - }; - }; - rb34976ca = buildECTesterStandalone { - boringssl = { - rev = "b34976cae99f8d1b864dbab31e20fc00d06acb09"; - hash = "sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo="; - }; - }; - r77ef86d0 = buildECTesterStandalone { - boringssl = { - rev = "77ef86d0431ec3ceea503b0c59888942fd35b035"; - hash = "sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M="; - }; - }; - r8934b1ef = buildECTesterStandalone { - boringssl = { - rev = "8934b1ef0857bc08626a2206a6f5f718942c14fc"; - hash = "sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0="; - }; - }; - r7c2b62e9 = buildECTesterStandalone { - boringssl = { - rev = "7c2b62e93487b772990fddc1905f22d4cfaee4a4"; - hash = "sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4="; - }; - }; - r12f0f4be = buildECTesterStandalone { - boringssl = { - rev = "12f0f4bec2a6db53a53748dd6001d1aacaae26ba"; - hash = "sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw="; - }; - }; - rca2eba6a = buildECTesterStandalone { - boringssl = { - rev = "ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa"; - hash = "sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8="; - }; - }; - rf01108e4 = buildECTesterStandalone { - boringssl = { - rev = "f01108e4761e1d4189cb134322c3cb01dc71ef87"; - hash = "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; - }; - }; - r26468aea = buildECTesterStandalone { - boringssl = { - rev = "26468aea6483135b156fb03a5693c495dbad2e0f"; - hash = "sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE="; - }; - }; - r7811fdc9 = buildECTesterStandalone { - boringssl = { - rev = "7811fdc94b7ec146937e83f98d411157974ffa32"; - hash = "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY="; - }; - }; - r45db24b3 = buildECTesterStandalone { - boringssl = { - rev = "45db24b36a030ec54464ea7a26c362f3c82305ee"; - hash = "sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0="; - }; - }; - r45b24641 = buildECTesterStandalone { - boringssl = { - rev = "45b2464158379f48cec6e35a1ef503ddea1511a6"; - hash = "sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY="; - }; - }; - r2fcdd11f = buildECTesterStandalone { - boringssl = { - rev = "2fcdd11f6d33b667968a5bc5147e2ba83a2082b8"; - hash = "sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA="; - }; - }; - r6c98ebeb = buildECTesterStandalone { - boringssl = { - rev = "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec"; - hash = "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI="; - }; - }; - rd1e6d3b4 = buildECTesterStandalone { - boringssl = { - rev = "d1e6d3b4af50c9490cc6210e2763b3c45ba14b07"; - hash = "sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo="; - }; - }; - r84dc9bb6 = buildECTesterStandalone { - boringssl = { - rev = "84dc9bb624b47bda0bf802ae9e04a6eecb40865c"; - hash = "sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo="; - }; - }; - r67422ed4 = buildECTesterStandalone { - boringssl = { - rev = "67422ed4434116daa8898773692165ddd51a6ac2"; - hash = "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc="; - }; - }; - rc6c0b650 = buildECTesterStandalone { - boringssl = { - rev = "c6c0b650091e90e6206a361c14a73223f54d42c1"; - hash = "sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg="; - }; - }; - r66d274df = buildECTesterStandalone { - boringssl = { - rev = "66d274dfbab9e4f84599f06504987c418ca087d9"; - hash = "sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0="; - }; - }; - re1d209d4 = buildECTesterStandalone { - boringssl = { - rev = "e1d209d4432846d28c31d84f269f4edcb9a63509"; - hash = "sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg="; - }; - }; - r9cac8a6b = buildECTesterStandalone { - boringssl = { - rev = "9cac8a6b38c1cbd45c77aee108411d588da006fe"; - hash = "sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs="; - }; - }; - r11acdc6a = buildECTesterStandalone { - boringssl = { - rev = "11acdc6abf13cc8139c30ac9455840a347793110"; - hash = "sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y="; - }; - }; - r962432c6 = buildECTesterStandalone { - boringssl = { - rev = "962432c687f67f8df1aa6e3dd364fbc88fea4ed8"; - hash = "sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ="; - }; - }; - ra220a602 = buildECTesterStandalone { - boringssl = { - rev = "a220a6024f66c123019b5c080f6bd8bcaf75448c"; - hash = "sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0="; - }; - }; - ra6c42d68 = buildECTesterStandalone { - boringssl = { - rev = "a6c42d6810ea5317fe8ed85704c097cd8f3513ca"; - hash = "sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ="; - }; - }; - r56fb43a2 = buildECTesterStandalone { - boringssl = { - rev = "56fb43a204e57af68e00f4561c108a7004381aa3"; - hash = "sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY="; - }; - }; - r29223ac3 = buildECTesterStandalone { - boringssl = { - rev = "29223ac349c144a4d0babc281644c0410dd1e313"; - hash = "sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ="; - }; - }; - re2a801f6 = buildECTesterStandalone { - boringssl = { - rev = "e2a801f688dbdfac8fde90b849b1bf75f80b466c"; - hash = "sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs="; - }; - }; - r39dd1e3c = buildECTesterStandalone { - boringssl = { - rev = "39dd1e3c904341ac14da80224d72a77d95501ad4"; - hash = "sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4="; - }; - }; - r1385dbd5 = buildECTesterStandalone { - boringssl = { - rev = "1385dbd51dc2eeba39076687a6c9e45c7dc8965c"; - hash = "sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk="; - }; - }; - r2bc9245e = buildECTesterStandalone { - boringssl = { - rev = "2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a"; - hash = "sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM="; - }; - }; - ra055b938 = buildECTesterStandalone { - boringssl = { - rev = "a055b93845a1b2a910919e21920e4bd1ce900841"; - hash = "sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI="; - }; - }; - rdec5989b = buildECTesterStandalone { - boringssl = { - rev = "dec5989b793c56ad4dd32173bd2d8595ca78b398"; - hash = "sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI="; - }; - }; - rc1d9ac02 = buildECTesterStandalone { - boringssl = { - rev = "c1d9ac02514a138129872a036e3f8a1074dcb8bd"; - hash = "sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8="; - }; - }; - re1a860c3 = buildECTesterStandalone { - boringssl = { - rev = "e1a860c3745c77cb83228dde1b73fa62eaf43930"; - hash = "sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs="; - }; - }; - rfb1c75ca = buildECTesterStandalone { - boringssl = { - rev = "fb1c75caf8ba5d45a0f2c52facd36e4ad9289549"; - hash = "sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI="; - }; - }; - re491eeb6 = buildECTesterStandalone { - boringssl = { - rev = "e491eeb610fcc69b98bc6d1ba08faf78655808f6"; - hash = "sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U="; - }; - }; - ra11277e1 = buildECTesterStandalone { - boringssl = { - rev = "a11277e187e407d0ef403b8a60d9a32eaab7d301"; - hash = "sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo="; - }; - }; - r25cf1bb9 = buildECTesterStandalone { - boringssl = { - rev = "25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016"; - hash = "sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk="; - }; - }; - rc8100f0f = buildECTesterStandalone { - boringssl = { - rev = "c8100f0f0d05c5185d58113e12a867ae0771a6c9"; - hash = "sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q="; - }; - }; - r1eda2363 = buildECTesterStandalone { - boringssl = { - rev = "1eda2363f9e79aaa5febe91d31b6756ae4f24f30"; - hash = "sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g="; - }; - }; - r261579f0 = buildECTesterStandalone { - boringssl = { - rev = "261579f08b2f8aa7959670df1e928c1c305a632c"; - hash = "sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg="; - }; - }; - r9540c045 = buildECTesterStandalone { - boringssl = { - rev = "9540c0452343e684f94515288880b6b35655f792"; - hash = "sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk="; - }; - }; - red3f05a6 = buildECTesterStandalone { - boringssl = { - rev = "ed3f05a6794adfd39937d0027afefad8f6afcae9"; - hash = "sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc="; - }; - }; - r4a7815c9 = buildECTesterStandalone { - boringssl = { - rev = "4a7815c94077eebb3546fc287d1fa0e1356a2cd0"; - hash = "sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8="; - }; - }; - r5326e94d = buildECTesterStandalone { - boringssl = { - rev = "5326e94dd188beba0a5e536b1d2723aee65bd85d"; - hash = "sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0="; - }; - }; - re09fcf83 = buildECTesterStandalone { - boringssl = { - rev = "e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e"; - hash = "sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE="; - }; - }; - rafd52e91 = buildECTesterStandalone { - boringssl = { - rev = "afd52e91dfed27ab7193be040f067900947b14ac"; - hash = "sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo="; - }; - }; - re95b0cad = buildECTesterStandalone { - boringssl = { - rev = "e95b0cad901abd49755d2a2a2f1f6c3e87d12b94"; - hash = "sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw="; - }; - }; - r13aa2733 = buildECTesterStandalone { - boringssl = { - rev = "13aa27338663c62600249ece54c94f180d57bbb7"; - hash = "sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds="; - }; - }; - r03982b4c = buildECTesterStandalone { - boringssl = { - rev = "03982b4cfadca0e650b384c9539b2fdb5f8aa012"; - hash = "sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg="; - }; - }; - r273a920f = buildECTesterStandalone { - boringssl = { - rev = "273a920f84e8b0b258737cea0f2f24627e8c5ed9"; - hash = "sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ="; - }; - }; - r9f7f4d03 = buildECTesterStandalone { - boringssl = { - rev = "9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d"; - hash = "sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw="; - }; - }; - rd7278ceb = buildECTesterStandalone { - boringssl = { - rev = "d7278cebad5b8eda0901246f2215344cffece4f4"; - hash = "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA="; - }; - }; - rbfcab2aa = buildECTesterStandalone { - boringssl = { - rev = "bfcab2aa518899ce71e7ffbc23bb22c4ef51858f"; - hash = "sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY="; - }; - }; - r68c29a24 = buildECTesterStandalone { - boringssl = { - rev = "68c29a24ee6c9c70ecce56766ca70b115aad768f"; - hash = "sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo="; - }; - }; - rde6ba216 = buildECTesterStandalone { - boringssl = { - rev = "de6ba216656b819d4d8de7602006561f82a8c669"; - hash = "sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4="; - }; - }; - r29c9e64c = buildECTesterStandalone { - boringssl = { - rev = "29c9e64ce548ff8278e9d98aa53f611f115c2bed"; - hash = "sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4="; - }; - }; - r58745d61 = buildECTesterStandalone { - boringssl = { - rev = "58745d61afe244a37941d391f5dec3ab08f5cf2c"; - hash = "sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ="; - }; - }; - rc798e3a5 = buildECTesterStandalone { - boringssl = { - rev = "c798e3a54912a1bfbf1c846630e2bb86e9b543a7"; - hash = "sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig="; - }; - }; - rba62c812 = buildECTesterStandalone { - boringssl = { - rev = "ba62c812f01fb379f49f94a08a2d1282ce46e678"; - hash = "sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU="; - }; - }; - r2fb5f9cb = buildECTesterStandalone { - boringssl = { - rev = "2fb5f9cb8feec2234952f6999af941ac48555710"; - hash = "sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8="; - }; - }; - rd477c0d7 = buildECTesterStandalone { - boringssl = { - rev = "d477c0d7c40ddca3a64ae26fc02d2dac175836d3"; - hash = "sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag="; - }; - }; - rc7019036 = buildECTesterStandalone { - boringssl = { - rev = "c70190368c7040c37c1d655f0690bcde2b109a0d"; - hash = "sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE="; - }; - }; - r7662e58e = buildECTesterStandalone { - boringssl = { - rev = "7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2"; - hash = "sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4="; - }; - }; - r0355048c = buildECTesterStandalone { - boringssl = { - rev = "0355048ce0302fdeb4744dae4b8a156a38496150"; - hash = "sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY="; - }; - }; - r3a01cba9 = buildECTesterStandalone { - boringssl = { - rev = "3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee"; - hash = "sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk="; - }; - }; - r07f27b1d = buildECTesterStandalone { - boringssl = { - rev = "07f27b1d445a27433f2c871935da2cefcfbdb458"; - hash = "sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A="; - }; - }; - rfc953df2 = buildECTesterStandalone { - boringssl = { - rev = "fc953df2352e1c1bcb34cb5f75a0e409014c1690"; - hash = "sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU="; - }; - }; - r1a9edc3e = buildECTesterStandalone { - boringssl = { - rev = "1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba"; - hash = "sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI="; - }; - }; - rb8912d71 = buildECTesterStandalone { - boringssl = { - rev = "b8912d713cb82a748bbe63f28f28b17632c70964"; - hash = "sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc="; - }; - }; - rb6bca9c6 = buildECTesterStandalone { - boringssl = { - rev = "b6bca9c6dde177f641137d2991aa677997c54c67"; - hash = "sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI="; - }; - }; - r03d1b7c5 = buildECTesterStandalone { - boringssl = { - rev = "03d1b7c544851d9f44df1e9ff21839742e08c819"; - hash = "sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA="; - }; - }; - r6b36ad2b = buildECTesterStandalone { - boringssl = { - rev = "6b36ad2bd6001f17a997b7a1e0ab254b001438ef"; - hash = "sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY="; - }; - }; - r1d24e04c = buildECTesterStandalone { - boringssl = { - rev = "1d24e04c7143171ae2010c842e3e1438510fd1c0"; - hash = "sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc="; - }; - }; - r8a0da669 = buildECTesterStandalone { - boringssl = { - rev = "8a0da669a08b6c6b805fd7ec9d1e67694fda3711"; - hash = "sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc="; - }; - }; - r4d50a595 = buildECTesterStandalone { - boringssl = { - rev = "4d50a595b49a2e7b7017060a4d402c4ee9fe28a2"; - hash = "sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA="; - }; - }; - rd34f540e = buildECTesterStandalone { - boringssl = { - rev = "d34f540e57394de22a1599c3c5d852519d388d6c"; - hash = "sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0="; - }; - }; - re7d76da9 = buildECTesterStandalone { - boringssl = { - rev = "e7d76da920a1bd79b6ebc77e75b407cdf0a58962"; - hash = "sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0="; - }; - }; - r3efe2eb9 = buildECTesterStandalone { - boringssl = { - rev = "3efe2eb9e3dfb49cb110c53e3430caeae4599f52"; - hash = "sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I="; - }; - }; - r35a91094 = buildECTesterStandalone { - boringssl = { - rev = "35a910949d684aea8b86a8c42db76c4f43e31a96"; - hash = "sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw="; - }; - }; - r8e6aa7f3 = buildECTesterStandalone { - boringssl = { - rev = "8e6aa7f39f4357a6ad15944884f72db8d25b9dff"; - hash = "sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M="; - }; - }; - r7c44f450 = buildECTesterStandalone { - boringssl = { - rev = "7c44f450547cc777229462c2ac864a9326c0106c"; - hash = "sha256-snkPY4R9RKdCI0yUS3ICn4CHyXE9DKaYaHAggD2UAOk="; - }; - }; - r6ab7c148 = buildECTesterStandalone { - boringssl = { - rev = "6ab7c1482bf4cdc91c87bc512aaf68ffb18975ec"; - hash = "sha256-+5ICkcKZRXCSC/y5d5Oo9WtcgdfkLZL/goGXE6V/9hE="; - }; - }; - rb17231cd = buildECTesterStandalone { - boringssl = { - rev = "b17231cdb9ec4e877b470c57d3280d9195811cd9"; - hash = "sha256-5G/wh35qlfGi6vHEj51QFyIryzKeTiGthfTe7tCWK8s="; - }; - }; - r3e89a7e8 = buildECTesterStandalone { - boringssl = { - rev = "3e89a7e8db8139db356b892ca9993172346c80cf"; - hash = "sha256-VsTll0A8FfNbObOnoFLah4BMuCzlLNbqOEgSbppQo7k="; - }; - }; - r8de798be = buildECTesterStandalone { - boringssl = { - rev = "8de798be4b850cf88ad2c50602abe2ca3bb285df"; - hash = "sha256-pQ8BTRMOjxLu8UoyTH23wYwy2pC29yZoCyl1c+94hyM="; - }; - }; - rd2e3212d = buildECTesterStandalone { - boringssl = { - rev = "d2e3212de29bac1ceed33ca8ab8bbff3f41a2459"; - hash = "sha256-HRa+IdVwchzjJh1Unx8wmu++eiFtY7ctdmwgjJqkx9Y="; - }; - }; - r783ae722 = buildECTesterStandalone { - boringssl = { - rev = "783ae722ed307a3b3782cd253fd4ffb387f38767"; - hash = "sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo="; - }; - }; -} diff --git a/nix/botan_pkg_versions.json b/nix/botan_pkg_versions.json new file mode 100644 index 0000000..0f3753d --- /dev/null +++ b/nix/botan_pkg_versions.json @@ -0,0 +1 @@ +{"v200": {"version": "2.0.0", "source_extension": "tgz", "hash": "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="}, "v201": {"version": "2.0.1", "source_extension": "tgz", "hash": "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="}, "v210": {"version": "2.1.0", "source_extension": "tgz", "hash": "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="}, "v2100": {"version": "2.10.0", "source_extension": "tgz", "hash": "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="}, "v2110": {"version": "2.11.0", "source_extension": "tar.xz", "hash": "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4="}, "v2120": {"version": "2.12.0", "source_extension": "tar.xz", "hash": "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM="}, "v2121": {"version": "2.12.1", "source_extension": "tar.xz", "hash": "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk="}, "v2130": {"version": "2.13.0", "source_extension": "tar.xz", "hash": "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA="}, "v2140": {"version": "2.14.0", "source_extension": "tar.xz", "hash": "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU="}, "v2150": {"version": "2.15.0", "source_extension": "tar.xz", "hash": "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk="}, "v2160": {"version": "2.16.0", "source_extension": "tar.xz", "hash": "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig="}, "v2170": {"version": "2.17.0", "source_extension": "tar.xz", "hash": "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M="}, "v2171": {"version": "2.17.1", "source_extension": "tar.xz", "hash": "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME="}, "v2172": {"version": "2.17.2", "source_extension": "tar.xz", "hash": "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw="}, "v2173": {"version": "2.17.3", "source_extension": "tar.xz", "hash": "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g="}, "v2180": {"version": "2.18.0", "source_extension": "tar.xz", "hash": "sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc="}, "v2181": {"version": "2.18.1", "source_extension": "tar.xz", "hash": "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik="}, "v2182": {"version": "2.18.2", "source_extension": "tar.xz", "hash": "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4="}, "v2190": {"version": "2.19.0", "source_extension": "tar.xz", "hash": "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs="}, "v2191": {"version": "2.19.1", "source_extension": "tar.xz", "hash": "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA="}, "v2192": {"version": "2.19.2", "source_extension": "tar.xz", "hash": "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU="}, "v2193": {"version": "2.19.3", "source_extension": "tar.xz", "hash": "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU="}, "v2194": {"version": "2.19.4", "source_extension": "tar.xz", "hash": "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY="}, "v2195": {"version": "2.19.5", "source_extension": "tar.xz", "hash": "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ="}, "v220": {"version": "2.2.0", "source_extension": "tgz", "hash": "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ="}, "v230": {"version": "2.3.0", "source_extension": "tgz", "hash": "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw="}, "v240": {"version": "2.4.0", "source_extension": "tgz", "hash": "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU="}, "v250": {"version": "2.5.0", "source_extension": "tgz", "hash": "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs="}, "v260": {"version": "2.6.0", "source_extension": "tgz", "hash": "sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU="}, "v270": {"version": "2.7.0", "source_extension": "tgz", "hash": "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA="}, "v280": {"version": "2.8.0", "source_extension": "tgz", "hash": "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA="}, "v290": {"version": "2.9.0", "source_extension": "tgz", "hash": "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk="}, "v300": {"version": "3.0.0", "source_extension": "tar.xz", "hash": "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc="}, "v310": {"version": "3.1.0", "source_extension": "tar.xz", "hash": "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4="}, "v311": {"version": "3.1.1", "source_extension": "tar.xz", "hash": "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms="}, "v320": {"version": "3.2.0", "source_extension": "tar.xz", "hash": "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM="}, "v330": {"version": "3.3.0", "source_extension": "tar.xz", "hash": "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk="}, "v340": {"version": "3.4.0", "source_extension": "tar.xz", "hash": "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc="}, "v350": {"version": "3.5.0", "source_extension": "tar.xz", "hash": "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8="}} \ No newline at end of file diff --git a/nix/botan_pkg_versions.nix b/nix/botan_pkg_versions.nix deleted file mode 100644 index 254bca9..0000000 --- a/nix/botan_pkg_versions.nix +++ /dev/null @@ -1,276 +0,0 @@ -{ buildECTesterStandalone }: -{ - v200 = buildECTesterStandalone { - botan = { - version = "2.0.0"; - source_extension = "tgz"; - hash = "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="; - }; - }; - v201 = buildECTesterStandalone { - botan = { - version = "2.0.1"; - source_extension = "tgz"; - hash = "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="; - }; - }; - v210 = buildECTesterStandalone { - botan = { - version = "2.1.0"; - source_extension = "tgz"; - hash = "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="; - }; - }; - v2100 = buildECTesterStandalone { - botan = { - version = "2.10.0"; - source_extension = "tgz"; - hash = "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="; - }; - }; - v2110 = buildECTesterStandalone { - botan = { - version = "2.11.0"; - source_extension = "tar.xz"; - hash = "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4="; - }; - }; - v2120 = buildECTesterStandalone { - botan = { - version = "2.12.0"; - source_extension = "tar.xz"; - hash = "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM="; - }; - }; - v2121 = buildECTesterStandalone { - botan = { - version = "2.12.1"; - source_extension = "tar.xz"; - hash = "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk="; - }; - }; - v2130 = buildECTesterStandalone { - botan = { - version = "2.13.0"; - source_extension = "tar.xz"; - hash = "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA="; - }; - }; - v2140 = buildECTesterStandalone { - botan = { - version = "2.14.0"; - source_extension = "tar.xz"; - hash = "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU="; - }; - }; - v2150 = buildECTesterStandalone { - botan = { - version = "2.15.0"; - source_extension = "tar.xz"; - hash = "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk="; - }; - }; - v2160 = buildECTesterStandalone { - botan = { - version = "2.16.0"; - source_extension = "tar.xz"; - hash = "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig="; - }; - }; - v2170 = buildECTesterStandalone { - botan = { - version = "2.17.0"; - source_extension = "tar.xz"; - hash = "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M="; - }; - }; - v2171 = buildECTesterStandalone { - botan = { - version = "2.17.1"; - source_extension = "tar.xz"; - hash = "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME="; - }; - }; - v2172 = buildECTesterStandalone { - botan = { - version = "2.17.2"; - source_extension = "tar.xz"; - hash = "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw="; - }; - }; - v2173 = buildECTesterStandalone { - botan = { - version = "2.17.3"; - source_extension = "tar.xz"; - hash = "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g="; - }; - }; - v2180 = buildECTesterStandalone { - botan = { - version = "2.18.0"; - source_extension = "tar.xz"; - hash = "sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc="; - }; - }; - v2181 = buildECTesterStandalone { - botan = { - version = "2.18.1"; - source_extension = "tar.xz"; - hash = "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik="; - }; - }; - v2182 = buildECTesterStandalone { - botan = { - version = "2.18.2"; - source_extension = "tar.xz"; - hash = "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4="; - }; - }; - v2190 = buildECTesterStandalone { - botan = { - version = "2.19.0"; - source_extension = "tar.xz"; - hash = "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs="; - }; - }; - v2191 = buildECTesterStandalone { - botan = { - version = "2.19.1"; - source_extension = "tar.xz"; - hash = "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA="; - }; - }; - v2192 = buildECTesterStandalone { - botan = { - version = "2.19.2"; - source_extension = "tar.xz"; - hash = "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU="; - }; - }; - v2193 = buildECTesterStandalone { - botan = { - version = "2.19.3"; - source_extension = "tar.xz"; - hash = "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU="; - }; - }; - v2194 = buildECTesterStandalone { - botan = { - version = "2.19.4"; - source_extension = "tar.xz"; - hash = "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY="; - }; - }; - v2195 = buildECTesterStandalone { - botan = { - version = "2.19.5"; - source_extension = "tar.xz"; - hash = "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ="; - }; - }; - v220 = buildECTesterStandalone { - botan = { - version = "2.2.0"; - source_extension = "tgz"; - hash = "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ="; - }; - }; - v230 = buildECTesterStandalone { - botan = { - version = "2.3.0"; - source_extension = "tgz"; - hash = "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw="; - }; - }; - v240 = buildECTesterStandalone { - botan = { - version = "2.4.0"; - source_extension = "tgz"; - hash = "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU="; - }; - }; - v250 = buildECTesterStandalone { - botan = { - version = "2.5.0"; - source_extension = "tgz"; - hash = "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs="; - }; - }; - v260 = buildECTesterStandalone { - botan = { - version = "2.6.0"; - source_extension = "tgz"; - hash = "sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU="; - }; - }; - v270 = buildECTesterStandalone { - botan = { - version = "2.7.0"; - source_extension = "tgz"; - hash = "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA="; - }; - }; - v280 = buildECTesterStandalone { - botan = { - version = "2.8.0"; - source_extension = "tgz"; - hash = "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA="; - }; - }; - v290 = buildECTesterStandalone { - botan = { - version = "2.9.0"; - source_extension = "tgz"; - hash = "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk="; - }; - }; - v300 = buildECTesterStandalone { - botan = { - version = "3.0.0"; - source_extension = "tar.xz"; - hash = "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc="; - }; - }; - v310 = buildECTesterStandalone { - botan = { - version = "3.1.0"; - source_extension = "tar.xz"; - hash = "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4="; - }; - }; - v311 = buildECTesterStandalone { - botan = { - version = "3.1.1"; - source_extension = "tar.xz"; - hash = "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms="; - }; - }; - v320 = buildECTesterStandalone { - botan = { - version = "3.2.0"; - source_extension = "tar.xz"; - hash = "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM="; - }; - }; - v330 = buildECTesterStandalone { - botan = { - version = "3.3.0"; - source_extension = "tar.xz"; - hash = "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk="; - }; - }; - v340 = buildECTesterStandalone { - botan = { - version = "3.4.0"; - source_extension = "tar.xz"; - hash = "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc="; - }; - }; - v350 = buildECTesterStandalone { - botan = { - version = "3.5.0"; - source_extension = "tar.xz"; - hash = "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8="; - }; - }; -} diff --git a/nix/cryptopp_pkg_versions.json b/nix/cryptopp_pkg_versions.json new file mode 100644 index 0000000..194d12c --- /dev/null +++ b/nix/cryptopp_pkg_versions.json @@ -0,0 +1 @@ +{"v890": {"version": "8_9_0", "hash": "sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ="}, "v880": {"version": "8_8_0", "hash": "sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU="}, "v870": {"version": "8_7_0", "hash": "sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE="}, "v860": {"version": "8_6_0", "hash": "sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4="}, "v850": {"version": "8_5_0", "hash": "sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y="}, "v840": {"version": "8_4_0", "hash": "sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8="}, "v830": {"version": "8_3_0", "hash": "sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng="}, "v820": {"version": "8_2_0", "hash": "sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc="}, "v810": {"version": "8_1_0", "hash": "sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI="}, "v800": {"version": "8_0_0", "hash": "sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w="}, "v700": {"version": "7_0_0", "hash": "sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4="}, "v610": {"version": "6_1_0", "hash": "sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo="}, "v600": {"version": "6_0_0", "hash": "sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E="}, "v565": {"version": "5_6_5", "hash": "sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o="}, "v564": {"version": "5_6_4", "hash": "sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4="}, "v563": {"version": "5_6_3", "hash": "sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0="}} \ No newline at end of file diff --git a/nix/cryptopp_pkg_versions.nix b/nix/cryptopp_pkg_versions.nix deleted file mode 100644 index a4b01e5..0000000 --- a/nix/cryptopp_pkg_versions.nix +++ /dev/null @@ -1,99 +0,0 @@ -{ buildECTesterStandalone }: -{ - v890 = buildECTesterStandalone { - cryptopp = { - version = "8_9_0"; - hash = "sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ="; - }; - }; - v880 = buildECTesterStandalone { - cryptopp = { - version = "8_8_0"; - hash = "sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU="; - }; - }; - v870 = buildECTesterStandalone { - cryptopp = { - version = "8_7_0"; - hash = "sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE="; - }; - }; - v860 = buildECTesterStandalone { - cryptopp = { - version = "8_6_0"; - hash = "sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4="; - }; - }; - v850 = buildECTesterStandalone { - cryptopp = { - version = "8_5_0"; - hash = "sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y="; - }; - }; - v840 = buildECTesterStandalone { - cryptopp = { - version = "8_4_0"; - hash = "sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8="; - }; - }; - v830 = buildECTesterStandalone { - cryptopp = { - version = "8_3_0"; - hash = "sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng="; - }; - }; - v820 = buildECTesterStandalone { - cryptopp = { - version = "8_2_0"; - hash = "sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc="; - }; - }; - v810 = buildECTesterStandalone { - cryptopp = { - version = "8_1_0"; - hash = "sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI="; - }; - }; - v800 = buildECTesterStandalone { - cryptopp = { - version = "8_0_0"; - hash = "sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w="; - }; - }; - v700 = buildECTesterStandalone { - cryptopp = { - version = "7_0_0"; - hash = "sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4="; - }; - }; - v610 = buildECTesterStandalone { - cryptopp = { - version = "6_1_0"; - hash = "sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo="; - }; - }; - v600 = buildECTesterStandalone { - cryptopp = { - version = "6_0_0"; - hash = "sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E="; - }; - }; - v565 = buildECTesterStandalone { - cryptopp = { - version = "5_6_5"; - hash = "sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o="; - }; - }; - v564 = buildECTesterStandalone { - cryptopp = { - version = "5_6_4"; - hash = "sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4="; - }; - }; - v563 = buildECTesterStandalone { - cryptopp = { - version = "5_6_3"; - hash = "sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0="; - }; - }; -} diff --git a/nix/gcrypt_pkg_versions.json b/nix/gcrypt_pkg_versions.json new file mode 100644 index 0000000..c17dbe6 --- /dev/null +++ b/nix/gcrypt_pkg_versions.json @@ -0,0 +1,234 @@ +{ + "v1110": { + "version": "1.11.0", + "hash": "sha256-CRIMmGfOfyCB1qqhd1OGuYwvLyRhNXYarkfYH1hoW5w=" + }, + "v1103": { + "version": "1.10.3", + "hash": "sha256-iwhwiXrFrGfe1Wjc+t9Flpz6imvrD9YK8qnq3Coycqo=" + }, + "v1102": { + "version": "1.10.2", + "hash": "sha256-O5wCoAS2jCVq3ZlwHeALODrMzPNxd+DWxYKJZkzODAM=" + }, + "v1101": { + "version": "1.10.1", + "hash": "sha256-7xSuVGsAhM2EJZ9hpV4Ho4w7U6/A9Ua//O8vAbr/6d4=" + }, + "v1100": { + "version": "1.10.0", + "hash": "sha256-agD1wFyqTErMEgxGtjhX2g1P9h3EtLA5M/qNRgE/roE=" + }, + "v194": { + "version": "1.9.4", + "hash": "sha256-6oScg6ckVOPtQmdpfoygM5Cu6XKrQh599p3+QrZcqvc=" + }, + "v193": { + "version": "1.9.3", + "hash": "sha256-l+vk+U4vfjW3UhlM4VoPPGYyTg/2ryZlm7+1/y7DKP0=" + }, + "v192": { + "version": "1.9.2", + "hash": "sha256-ssENCRUTsnHkcXcnRgex/7o9lbGIu/qHl/lIrskFPFo=" + }, + "v191": { + "version": "1.9.1", + "hash": "sha256-xaZ6i5sr03D7QV7R7jHHFy5Wgwdkk89KNnig+98CZdk=" + }, + "v190_do_not_use": { + "version": "1.9.0", + "hash": "sha256-TZzKpfmdtZ68tk1z9iglsFzoprf4bRkXhVnvhN4Tgcs=" + }, + "v1811": { + "version": "1.8.11", + "hash": "sha256-yYJJ+1ux9gF/X5v0hDJ6lAtZB1vKfEb6aeu1QJgkmGA=" + }, + "v1810": { + "version": "1.8.10", + "hash": "sha256-aJaRVQH5UeI9AtywRTRpwswiqk13oAH/c6JkfC0p590=" + }, + "v189": { + "version": "1.8.9", + "hash": "sha256-K9pHkKpfCJXTQHz3v2vXcn/ZkvJaRaY9kv7xB2f6N2k=" + }, + "v188": { + "version": "1.8.8", + "hash": "sha256-iV3iu5gd0Sfwgh0c4T+t99dg+fp3N2SLFfLB/hPMWvU=" + }, + "v187": { + "version": "1.8.7", + "hash": "sha256-A7cPAoKZVhtwNLiWbX3XfvFu0TnENECSX+h4JWGXR0g=" + }, + "v186": { + "version": "1.8.6", + "hash": "sha256-DLonAGF7mfwzhkoMFrH6f9+XgdntNQn112cXjl/XuXU=" + }, + "v185": { + "version": "1.8.5", + "hash": "sha256-O0oqlMtjfv9b3rvK9G9NlcTyUgb0WYCTOc2toOtXesM=" + }, + "v184": { + "version": "1.8.4", + "hash": "sha256-9jgUOgZyYo/eDK10XpsU3rhd/7F1cJyswfT+JLk/Iic=" + }, + "v183": { + "version": "1.8.3", + "hash": "sha256-ZuyQvgNnR2AvK0j5gxI2GpGAyXxoppCl83b6D2fQr3w=" + }, + "v182": { + "version": "1.8.2", + "hash": "sha256-yAZMrnVYFEsT7w64cJNBI4DvoWxO4wrRLstUiGpSTAc=" + }, + "v181": { + "version": "1.8.1", + "hash": "sha256-eih1+LGuAwFzLoeMDMoslmT/Ce9xQI8IXFDjMmVqeLM=" + }, + "v180": { + "version": "1.8.0", + "hash": "sha256-I+SWl7h8xBc7A7R1fI30MU4xSQWPoYvcT4IJjxA9iRs=" + }, + "v1710": { + "version": "1.7.10", + "hash": "sha256-ifBaQj3WaiXls4MICX4jhuZA0c+DUWDRmlx1NQBx2Uw=" + }, + "v179": { + "version": "1.7.9", + "hash": "sha256-v+m7cDwRJsNkfaKBD9IwOcLwnUaWn3FhLCBl3D+pNzs=" + }, + "v178": { + "version": "1.7.8", + "hash": "sha256-lIJ26kfmugJE82oXtR3N1Sz9HmZLChrDvIITT7bOwZk=" + }, + "v177": { + "version": "1.7.7", + "hash": "sha256-ubheugeT6j5uZriW6wMfoF4aRRcnfMmrEIFrNZJUzZo=" + }, + "v176": { + "version": "1.7.6", + "hash": "sha256-Ymqv7oSvnSziU9LBQ9wcCQLdoEV4DMJB85lw/GC+Bbw=" + }, + "v175": { + "version": "1.7.5", + "hash": "sha256-0f6kEovu8rswpHCva6+rzMUDztNQU0+53Y9aU/+66AA=" + }, + "v174": { + "version": "1.7.4", + "hash": "sha256-O2eGLi9HEeJcTOPMS0jVKlijr9zR2Malf5OhwO8D5cY=" + }, + "v173": { + "version": "1.7.3", + "hash": "sha256-3axhEQd9ChYSJHWHviOMUpTdDuTXbce6eDzFX7AzcHE=" + }, + "v172": { + "version": "1.7.2", + "hash": "sha256-PTXfkG1uqzVFBMBddJqbAhlEyyn/X2XI75w91fe2aJ8=" + }, + "v171": { + "version": "1.7.1", + "hash": "sha256-RQ2c/L8WEcZNvjvQS2J7gzee+J8RQG2UyLujBeNtepU=" + }, + "v170": { + "version": "1.7.0", + "hash": "sha256-sOZ+p0R0k5kTxNnZ70717DeO++K+vjY4ne4xnHm/+pI=" + }, + "v166": { + "version": "1.6.6", + "hash": "sha256-+UYbRhm7eLJzqI1GiRV1DUGOiaPqO2QbqwVjqa9LBNA=" + }, + "v165": { + "version": "1.6.5", + "hash": "sha256-9J68WELUVa5wGd7zPrWgFKDweiqDU9w6pQp2/R2vqSQ=" + }, + "v164": { + "version": "1.6.4", + "hash": "sha256-ybwsf+Ll9OoTsMdPnSS8uxrYibs5KX2Agq6/I/QzYCY=" + }, + "v163": { + "version": "1.6.3", + "hash": "sha256-QbSRe5OuNMag4hJzeNek1m2AWiqGoJkR1Pm9hx23Al8=" + }, + "v162": { + "version": "1.6.2", + "hash": "sha256-3ghEkqazjNsntn6vdJzrp2v3Ap9jqcDDwbBciMmIXEw=" + }, + "v161": { + "version": "1.6.1", + "hash": "sha256-ocPv6mn4/+dp9IizAM4ZDu6www3iSlPxwbbkIC/cIHA=" + }, + "v160": { + "version": "1.6.0", + "hash": "sha256-Zi1QhgCtlMwzTmZbcBYTf+7fzKUiaZjGXd1Wvfyilwg=" + }, + "v156": { + "version": "1.5.6", + "hash": "sha256-MBgmteUhyGcFb9Ywqtbwpg4XbRigF9prwksWld86vnk=" + }, + "v155": { + "version": "1.5.5", + "hash": "sha256-2JWCA+eGvKR5zXyQOQaSXop+AzzLlZv1Mxe1fPEaBlU=" + }, + "v154": { + "version": "1.5.4", + "hash": "sha256-1fiNn0GkaVPcJQzbhXUSmzfuIghAG3+jOMiX9mfH+zM=" + }, + "v153": { + "version": "1.5.3", + "hash": "sha256-vPUzTn2jUsRd5q7F0ghM6aHTACn/SkpdoT8YSIdHWdE=" + }, + "v152": { + "version": "1.5.2", + "hash": "sha256-5BpDOfUClPPJJfL3Gq8kJ+sWLSmU2pFmbfwyYhr+lj8=" + }, + "v151": { + "version": "1.5.1", + "hash": "sha256-rZ6xWAjnaZmMC9jBgayIFCORn08QVYaRPcy8Dfv65Sc=" + }, + "v150": { + "version": "1.5.0", + "hash": "sha256-S2L8UWAElAoFcQJUAaBYHUkZnxp237XOb9Y/UNuBc/o=" + }, + "v146": { + "version": "1.4.6", + "hash": "sha256-Pksw2ms1e1ZTM9AiITO2SgQUvpm6cnMwgRZcjqm8a4U=" + }, + "v145": { + "version": "1.4.5", + "hash": "sha256-SW+QfFMk3nU2fsYcY7/u0TCe8LxkhF3CCzWXcxq9nkA=" + }, + "v144": { + "version": "1.4.4", + "hash": "sha256-MhK4gIDPj6AGFk04/Bdvr6XClZHIOE8oSriA2w2/MG8=" + }, + "v143": { + "version": "1.4.3", + "hash": "sha256-iMgZvZ8B19SBiJjhM6USBE54w0MHqmBrapTuznwLIws=" + }, + "v142": { + "version": "1.4.2", + "hash": "sha256-unQUhG9/O6IrIs842hug6dXCJjixxArAh85RZJgRUsM=" + }, + "v141": { + "version": "1.4.1", + "hash": "sha256-/jsyvfDJLWs7t7Pks8Gaaomanetl8bNvCliC0wjJH6M=" + }, + "v140": { + "version": "1.4.0", + "hash": "sha256-1/hV92aUSltuf/7i1v/fgoq3CazURTsOZK6oCM4nYOw=" + }, + "v124": { + "version": "1.2.4", + "hash": "sha256-fWFVxNCkD7o9ug8hqVnHhIxzS6ZzTejifuomrlPAyIA=" + }, + "v123": { + "version": "1.2.3", + "hash": "sha256-6OKRFjlRFIIHWAeSWILQBlYRPDHgqJAV1ITcFsbYD7Q=" + }, + "v122": { + "version": "1.2.2", + "hash": "sha256-espQrfRId1XGHAWQ1286k1Lie9s908DcDP+Py0Eq5iQ=" + }, + "v121": { + "version": "1.2.1", + "hash": "sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I=" + } +} \ No newline at end of file diff --git a/nix/gcrypt_pkg_versions.nix b/nix/gcrypt_pkg_versions.nix deleted file mode 100644 index d27bfae..0000000 --- a/nix/gcrypt_pkg_versions.nix +++ /dev/null @@ -1,352 +0,0 @@ -{ buildECTesterStandalone }: -{ - v1110 = buildECTesterStandalone { - gcrypt = { - version = "1.11.0"; - hash = "sha256-CRIMmGfOfyCB1qqhd1OGuYwvLyRhNXYarkfYH1hoW5w="; - }; - }; - v1103 = buildECTesterStandalone { - gcrypt = { - version = "1.10.3"; - hash = "sha256-iwhwiXrFrGfe1Wjc+t9Flpz6imvrD9YK8qnq3Coycqo="; - }; - }; - v1102 = buildECTesterStandalone { - gcrypt = { - version = "1.10.2"; - hash = "sha256-O5wCoAS2jCVq3ZlwHeALODrMzPNxd+DWxYKJZkzODAM="; - }; - }; - v1101 = buildECTesterStandalone { - gcrypt = { - version = "1.10.1"; - hash = "sha256-7xSuVGsAhM2EJZ9hpV4Ho4w7U6/A9Ua//O8vAbr/6d4="; - }; - }; - v1100 = buildECTesterStandalone { - gcrypt = { - version = "1.10.0"; - hash = "sha256-agD1wFyqTErMEgxGtjhX2g1P9h3EtLA5M/qNRgE/roE="; - }; - }; - v194 = buildECTesterStandalone { - gcrypt = { - version = "1.9.4"; - hash = "sha256-6oScg6ckVOPtQmdpfoygM5Cu6XKrQh599p3+QrZcqvc="; - }; - }; - v193 = buildECTesterStandalone { - gcrypt = { - version = "1.9.3"; - hash = "sha256-l+vk+U4vfjW3UhlM4VoPPGYyTg/2ryZlm7+1/y7DKP0="; - }; - }; - v192 = buildECTesterStandalone { - gcrypt = { - version = "1.9.2"; - hash = "sha256-ssENCRUTsnHkcXcnRgex/7o9lbGIu/qHl/lIrskFPFo="; - }; - }; - v191 = buildECTesterStandalone { - gcrypt = { - version = "1.9.1"; - hash = "sha256-xaZ6i5sr03D7QV7R7jHHFy5Wgwdkk89KNnig+98CZdk="; - }; - }; - # NOTE Do not use copied from the source https://gnupg.org/ftp/gcrypt/libgcrypt/ - v190_do_not_use = buildECTesterStandalone { - gcrypt = { - version = "1.9.0"; - hash = "sha256-TZzKpfmdtZ68tk1z9iglsFzoprf4bRkXhVnvhN4Tgcs="; - }; - }; - v1811 = buildECTesterStandalone { - gcrypt = { - version = "1.8.11"; - hash = "sha256-yYJJ+1ux9gF/X5v0hDJ6lAtZB1vKfEb6aeu1QJgkmGA="; - }; - }; - v1810 = buildECTesterStandalone { - gcrypt = { - version = "1.8.10"; - hash = "sha256-aJaRVQH5UeI9AtywRTRpwswiqk13oAH/c6JkfC0p590="; - }; - }; - v189 = buildECTesterStandalone { - gcrypt = { - version = "1.8.9"; - hash = "sha256-K9pHkKpfCJXTQHz3v2vXcn/ZkvJaRaY9kv7xB2f6N2k="; - }; - }; - v188 = buildECTesterStandalone { - gcrypt = { - version = "1.8.8"; - hash = "sha256-iV3iu5gd0Sfwgh0c4T+t99dg+fp3N2SLFfLB/hPMWvU="; - }; - }; - v187 = buildECTesterStandalone { - gcrypt = { - version = "1.8.7"; - hash = "sha256-A7cPAoKZVhtwNLiWbX3XfvFu0TnENECSX+h4JWGXR0g="; - }; - }; - v186 = buildECTesterStandalone { - gcrypt = { - version = "1.8.6"; - hash = "sha256-DLonAGF7mfwzhkoMFrH6f9+XgdntNQn112cXjl/XuXU="; - }; - }; - v185 = buildECTesterStandalone { - gcrypt = { - version = "1.8.5"; - hash = "sha256-O0oqlMtjfv9b3rvK9G9NlcTyUgb0WYCTOc2toOtXesM="; - }; - }; - v184 = buildECTesterStandalone { - gcrypt = { - version = "1.8.4"; - hash = "sha256-9jgUOgZyYo/eDK10XpsU3rhd/7F1cJyswfT+JLk/Iic="; - }; - }; - v183 = buildECTesterStandalone { - gcrypt = { - version = "1.8.3"; - hash = "sha256-ZuyQvgNnR2AvK0j5gxI2GpGAyXxoppCl83b6D2fQr3w="; - }; - }; - v182 = buildECTesterStandalone { - gcrypt = { - version = "1.8.2"; - hash = "sha256-yAZMrnVYFEsT7w64cJNBI4DvoWxO4wrRLstUiGpSTAc="; - }; - }; - v181 = buildECTesterStandalone { - gcrypt = { - version = "1.8.1"; - hash = "sha256-eih1+LGuAwFzLoeMDMoslmT/Ce9xQI8IXFDjMmVqeLM="; - }; - }; - v180 = buildECTesterStandalone { - gcrypt = { - version = "1.8.0"; - hash = "sha256-I+SWl7h8xBc7A7R1fI30MU4xSQWPoYvcT4IJjxA9iRs="; - }; - }; - v1710 = buildECTesterStandalone { - gcrypt = { - version = "1.7.10"; - hash = "sha256-ifBaQj3WaiXls4MICX4jhuZA0c+DUWDRmlx1NQBx2Uw="; - }; - }; - v179 = buildECTesterStandalone { - gcrypt = { - version = "1.7.9"; - hash = "sha256-v+m7cDwRJsNkfaKBD9IwOcLwnUaWn3FhLCBl3D+pNzs="; - }; - }; - v178 = buildECTesterStandalone { - gcrypt = { - version = "1.7.8"; - hash = "sha256-lIJ26kfmugJE82oXtR3N1Sz9HmZLChrDvIITT7bOwZk="; - }; - }; - v177 = buildECTesterStandalone { - gcrypt = { - version = "1.7.7"; - hash = "sha256-ubheugeT6j5uZriW6wMfoF4aRRcnfMmrEIFrNZJUzZo="; - }; - }; - v176 = buildECTesterStandalone { - gcrypt = { - version = "1.7.6"; - hash = "sha256-Ymqv7oSvnSziU9LBQ9wcCQLdoEV4DMJB85lw/GC+Bbw="; - }; - }; - v175 = buildECTesterStandalone { - gcrypt = { - version = "1.7.5"; - hash = "sha256-0f6kEovu8rswpHCva6+rzMUDztNQU0+53Y9aU/+66AA="; - }; - }; - v174 = buildECTesterStandalone { - gcrypt = { - version = "1.7.4"; - hash = "sha256-O2eGLi9HEeJcTOPMS0jVKlijr9zR2Malf5OhwO8D5cY="; - }; - }; - v173 = buildECTesterStandalone { - gcrypt = { - version = "1.7.3"; - hash = "sha256-3axhEQd9ChYSJHWHviOMUpTdDuTXbce6eDzFX7AzcHE="; - }; - }; - v172 = buildECTesterStandalone { - gcrypt = { - version = "1.7.2"; - hash = "sha256-PTXfkG1uqzVFBMBddJqbAhlEyyn/X2XI75w91fe2aJ8="; - }; - }; - v171 = buildECTesterStandalone { - gcrypt = { - version = "1.7.1"; - hash = "sha256-RQ2c/L8WEcZNvjvQS2J7gzee+J8RQG2UyLujBeNtepU="; - }; - }; - v170 = buildECTesterStandalone { - gcrypt = { - version = "1.7.0"; - hash = "sha256-sOZ+p0R0k5kTxNnZ70717DeO++K+vjY4ne4xnHm/+pI="; - }; - }; - v166 = buildECTesterStandalone { - gcrypt = { - version = "1.6.6"; - hash = "sha256-+UYbRhm7eLJzqI1GiRV1DUGOiaPqO2QbqwVjqa9LBNA="; - }; - }; - v165 = buildECTesterStandalone { - gcrypt = { - version = "1.6.5"; - hash = "sha256-9J68WELUVa5wGd7zPrWgFKDweiqDU9w6pQp2/R2vqSQ="; - }; - }; - v164 = buildECTesterStandalone { - gcrypt = { - version = "1.6.4"; - hash = "sha256-ybwsf+Ll9OoTsMdPnSS8uxrYibs5KX2Agq6/I/QzYCY="; - }; - }; - v163 = buildECTesterStandalone { - gcrypt = { - version = "1.6.3"; - hash = "sha256-QbSRe5OuNMag4hJzeNek1m2AWiqGoJkR1Pm9hx23Al8="; - }; - }; - v162 = buildECTesterStandalone { - gcrypt = { - version = "1.6.2"; - hash = "sha256-3ghEkqazjNsntn6vdJzrp2v3Ap9jqcDDwbBciMmIXEw="; - }; - }; - v161 = buildECTesterStandalone { - gcrypt = { - version = "1.6.1"; - hash = "sha256-ocPv6mn4/+dp9IizAM4ZDu6www3iSlPxwbbkIC/cIHA="; - }; - }; - v160 = buildECTesterStandalone { - gcrypt = { - version = "1.6.0"; - hash = "sha256-Zi1QhgCtlMwzTmZbcBYTf+7fzKUiaZjGXd1Wvfyilwg="; - }; - }; - v156 = buildECTesterStandalone { - gcrypt = { - version = "1.5.6"; - hash = "sha256-MBgmteUhyGcFb9Ywqtbwpg4XbRigF9prwksWld86vnk="; - }; - }; - v155 = buildECTesterStandalone { - gcrypt = { - version = "1.5.5"; - hash = "sha256-2JWCA+eGvKR5zXyQOQaSXop+AzzLlZv1Mxe1fPEaBlU="; - }; - }; - v154 = buildECTesterStandalone { - gcrypt = { - version = "1.5.4"; - hash = "sha256-1fiNn0GkaVPcJQzbhXUSmzfuIghAG3+jOMiX9mfH+zM="; - }; - }; - v153 = buildECTesterStandalone { - gcrypt = { - version = "1.5.3"; - hash = "sha256-vPUzTn2jUsRd5q7F0ghM6aHTACn/SkpdoT8YSIdHWdE="; - }; - }; - v152 = buildECTesterStandalone { - gcrypt = { - version = "1.5.2"; - hash = "sha256-5BpDOfUClPPJJfL3Gq8kJ+sWLSmU2pFmbfwyYhr+lj8="; - }; - }; - v151 = buildECTesterStandalone { - gcrypt = { - version = "1.5.1"; - hash = "sha256-rZ6xWAjnaZmMC9jBgayIFCORn08QVYaRPcy8Dfv65Sc="; - }; - }; - v150 = buildECTesterStandalone { - gcrypt = { - version = "1.5.0"; - hash = "sha256-S2L8UWAElAoFcQJUAaBYHUkZnxp237XOb9Y/UNuBc/o="; - }; - }; - v146 = buildECTesterStandalone { - gcrypt = { - version = "1.4.6"; - hash = "sha256-Pksw2ms1e1ZTM9AiITO2SgQUvpm6cnMwgRZcjqm8a4U="; - }; - }; - v145 = buildECTesterStandalone { - gcrypt = { - version = "1.4.5"; - hash = "sha256-SW+QfFMk3nU2fsYcY7/u0TCe8LxkhF3CCzWXcxq9nkA="; - }; - }; - v144 = buildECTesterStandalone { - gcrypt = { - version = "1.4.4"; - hash = "sha256-MhK4gIDPj6AGFk04/Bdvr6XClZHIOE8oSriA2w2/MG8="; - }; - }; - v143 = buildECTesterStandalone { - gcrypt = { - version = "1.4.3"; - hash = "sha256-iMgZvZ8B19SBiJjhM6USBE54w0MHqmBrapTuznwLIws="; - }; - }; - v142 = buildECTesterStandalone { - gcrypt = { - version = "1.4.2"; - hash = "sha256-unQUhG9/O6IrIs842hug6dXCJjixxArAh85RZJgRUsM="; - }; - }; - v141 = buildECTesterStandalone { - gcrypt = { - version = "1.4.1"; - hash = "sha256-/jsyvfDJLWs7t7Pks8Gaaomanetl8bNvCliC0wjJH6M="; - }; - }; - v140 = buildECTesterStandalone { - gcrypt = { - version = "1.4.0"; - hash = "sha256-1/hV92aUSltuf/7i1v/fgoq3CazURTsOZK6oCM4nYOw="; - }; - }; - v124 = buildECTesterStandalone { - gcrypt = { - version = "1.2.4"; - hash = "sha256-fWFVxNCkD7o9ug8hqVnHhIxzS6ZzTejifuomrlPAyIA="; - }; - }; - v123 = buildECTesterStandalone { - gcrypt = { - version = "1.2.3"; - hash = "sha256-6OKRFjlRFIIHWAeSWILQBlYRPDHgqJAV1ITcFsbYD7Q="; - }; - }; - v122 = buildECTesterStandalone { - gcrypt = { - version = "1.2.2"; - hash = "sha256-espQrfRId1XGHAWQ1286k1Lie9s908DcDP+Py0Eq5iQ="; - }; - }; - v121 = buildECTesterStandalone { - gcrypt = { - version = "1.2.1"; - hash = "sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I="; - }; - }; -} diff --git a/nix/ippcp_pkg_versions.json b/nix/ippcp_pkg_versions.json new file mode 100644 index 0000000..d234dbb --- /dev/null +++ b/nix/ippcp_pkg_versions.json @@ -0,0 +1,98 @@ +{ + "v2021_12_1": { + "version": "2021.12.1", + "hash": "sha256-voxjx9Np/8jy9XS6EvUK4aW18/DGQGaPpTKm9RzuCU8=" + }, + "v2021_12_0": { + "version": "2021.12.0", + "hash": "sha256-FeCfiXwOUM3cL4Ah3IjLa/2SKo9WHTZFUfg/w8WTNcc=" + }, + "v2021_11_1": { + "version": "2021.11.1", + "hash": "sha256-OgNrrPE8jFVD/hcv7A43Bno96r4Z/lb7/SE6TEL7RDI=" + }, + "v2021_11_0": { + "version": "2021.11.0", + "hash": "sha256-MVhiKEJxYa1HaicPbkzrAlZxFqIEP7eDLusC/T52gXI=" + }, + "v2021_10_0": { + "version": "2021.10.0", + "hash": "sha256-DfXsJ+4XqyjCD+79LUD53Cx8D46o1a4fAZa2UxGI1Xg=" + }, + "v2021_9_0": { + "version": "2021.9.0", + "hash": "sha256-+ITnxyrkDQp4xRa+PVzXdYsSkI5sMNwQGfGU+lFJ6co=" + }, + "v2021_8": { + "version": "2021.8", + "hash": "sha256-Iz1Pql+cf2DdPe7KoNpxQ7H76SFwWkUbtL4bJxr7D4w=" + }, + "v2021_7_1": { + "version": "2021.7.1", + "hash": "sha256-iyg4ja7tsbpng7XOZwISri+x8knwEeyh/aP9ldhQY60=" + }, + "v2021_7": { + "version": "2021.7", + "hash": "sha256-3W0LlJgmrp2Rk7xQ+0GQfkF2UpH4htx9R7IL86smtnY=" + }, + "v2021_6": { + "version": "2021.6", + "hash": "sha256-lr6oiJTaTQhTrxhdY5dTfOrl/ZBwOYbuyuNU3tJbEe0=" + }, + "v2021_5": { + "version": "2021.5", + "hash": "sha256-xc44XvGz9KnbLKKMmSJQ2Eq8IhEFVb0tYIWVW4oJRuo=" + }, + "v2021_4": { + "version": "2021.4", + "hash": "sha256-SyRY3BoHY7zQIFA6j0U0W0oD5PZhp3vsvFQVBw4/AXY=" + }, + "v2021_3": { + "version": "2021.3", + "hash": "sha256-QEJXvQ//zhQqibFxXwPMdS1MHewgyb24LRmkycVSGrM=" + }, + "v2021_2": { + "version": "2021.2", + "hash": "sha256-8I3y//LK5TcyC71fdX1biF588rdK2AplO6eh9GUHx9U=" + }, + "v2020u3": { + "version": "2020u3", + "hash": "sha256-i/iPOSTKR02pHzxBRn3odZJ+6SzGtS+pCG1BWo1qdAs=" + }, + "v2020u2": { + "version": "2020u2", + "hash": "sha256-cn76ju41RdEJxH9SmF75Z38V3e9vnLXGdyjh4hISpr8=" + }, + "v2020u1": { + "version": "2020u1", + "hash": "sha256-4h5Zrx4hvsvZkXpHu0ZXJftoLFms34PstTRN0gHCXrM=" + }, + "v2020": { + "version": "2020", + "hash": "sha256-k4CuLLtNX+wrEGRgoIP9e0wp42U1VRF96nhDE8qNkMk=" + }, + "v2019u4": { + "version": "2019u4", + "hash": "sha256-Xi3I0frlR/OjX4IRJyBuFcSkrCaxL9ABRZ1w8FUAseg=" + }, + "v2019u3": { + "version": "2019u3", + "hash": "sha256-8sdPlRNfdjMkc061e6EFpJMMA1QKK5/SpKlMV2E5TH4=" + }, + "v2019u2": { + "version": "2019u2", + "hash": "sha256-WoiO1pXA6UTRdKCcn9ckMk4/6IvbQAK4k7d8P3rGbqc=" + }, + "v2019u1": { + "version": "2019u1", + "hash": "sha256-2KcZz+7NrhbvRVLXtdME73uMBrhw+4q0ajiXeWwZdJs=" + }, + "v2019": { + "version": "2019", + "hash": "sha256-iTupt9pRN+6ze3Hf/dmtve9u15iVL0g2kujUpyGgums=" + }, + "v2019b": { + "version": "2019b", + "hash": "sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8=" + } +} \ No newline at end of file diff --git a/nix/ippcp_pkg_versions.nix b/nix/ippcp_pkg_versions.nix deleted file mode 100644 index a3140cf..0000000 --- a/nix/ippcp_pkg_versions.nix +++ /dev/null @@ -1,147 +0,0 @@ -{ buildECTesterStandalone }: -{ - v2021_12_1 = buildECTesterStandalone { - ippcp = { - version = "2021.12.1"; - hash = "sha256-voxjx9Np/8jy9XS6EvUK4aW18/DGQGaPpTKm9RzuCU8="; - }; - }; - v2021_12_0 = buildECTesterStandalone { - ippcp = { - version = "2021.12.0"; - hash = "sha256-FeCfiXwOUM3cL4Ah3IjLa/2SKo9WHTZFUfg/w8WTNcc="; - }; - }; - v2021_11_1 = buildECTesterStandalone { - ippcp = { - version = "2021.11.1"; - hash = "sha256-OgNrrPE8jFVD/hcv7A43Bno96r4Z/lb7/SE6TEL7RDI="; - }; - }; - v2021_11_0 = buildECTesterStandalone { - ippcp = { - version = "2021.11.0"; - hash = "sha256-MVhiKEJxYa1HaicPbkzrAlZxFqIEP7eDLusC/T52gXI="; - }; - }; - v2021_10_0 = buildECTesterStandalone { - ippcp = { - version = "2021.10.0"; - hash = "sha256-DfXsJ+4XqyjCD+79LUD53Cx8D46o1a4fAZa2UxGI1Xg="; - }; - }; - v2021_9_0 = buildECTesterStandalone { - ippcp = { - version = "2021.9.0"; - hash = "sha256-+ITnxyrkDQp4xRa+PVzXdYsSkI5sMNwQGfGU+lFJ6co="; - }; - }; - v2021_8 = buildECTesterStandalone { - ippcp = { - version = "2021.8"; - hash = "sha256-Iz1Pql+cf2DdPe7KoNpxQ7H76SFwWkUbtL4bJxr7D4w="; - }; - }; - v2021_7_1 = buildECTesterStandalone { - ippcp = { - version = "2021.7.1"; - hash = "sha256-iyg4ja7tsbpng7XOZwISri+x8knwEeyh/aP9ldhQY60="; - }; - }; - v2021_7 = buildECTesterStandalone { - ippcp = { - version = "2021.7"; - hash = "sha256-3W0LlJgmrp2Rk7xQ+0GQfkF2UpH4htx9R7IL86smtnY="; - }; - }; - v2021_6 = buildECTesterStandalone { - ippcp = { - version = "2021.6"; - hash = "sha256-lr6oiJTaTQhTrxhdY5dTfOrl/ZBwOYbuyuNU3tJbEe0="; - }; - }; - v2021_5 = buildECTesterStandalone { - ippcp = { - version = "2021.5"; - hash = "sha256-xc44XvGz9KnbLKKMmSJQ2Eq8IhEFVb0tYIWVW4oJRuo="; - }; - }; - v2021_4 = buildECTesterStandalone { - ippcp = { - version = "2021.4"; - hash = "sha256-SyRY3BoHY7zQIFA6j0U0W0oD5PZhp3vsvFQVBw4/AXY="; - }; - }; - v2021_3 = buildECTesterStandalone { - ippcp = { - version = "2021.3"; - hash = "sha256-QEJXvQ//zhQqibFxXwPMdS1MHewgyb24LRmkycVSGrM="; - }; - }; - v2021_2 = buildECTesterStandalone { - ippcp = { - version = "2021.2"; - hash = "sha256-8I3y//LK5TcyC71fdX1biF588rdK2AplO6eh9GUHx9U="; - }; - }; - v2020u3 = buildECTesterStandalone { - ippcp = { - version = "2020u3"; - hash = "sha256-i/iPOSTKR02pHzxBRn3odZJ+6SzGtS+pCG1BWo1qdAs="; - }; - }; - v2020u2 = buildECTesterStandalone { - ippcp = { - version = "2020u2"; - hash = "sha256-cn76ju41RdEJxH9SmF75Z38V3e9vnLXGdyjh4hISpr8="; - }; - }; - v2020u1 = buildECTesterStandalone { - ippcp = { - version = "2020u1"; - hash = "sha256-4h5Zrx4hvsvZkXpHu0ZXJftoLFms34PstTRN0gHCXrM="; - }; - }; - v2020 = buildECTesterStandalone { - ippcp = { - version = "2020"; - hash = "sha256-k4CuLLtNX+wrEGRgoIP9e0wp42U1VRF96nhDE8qNkMk="; - }; - }; - v2019u4 = buildECTesterStandalone { - ippcp = { - version = "2019u4"; - hash = "sha256-Xi3I0frlR/OjX4IRJyBuFcSkrCaxL9ABRZ1w8FUAseg="; - }; - }; - v2019u3 = buildECTesterStandalone { - ippcp = { - version = "2019u3"; - hash = "sha256-8sdPlRNfdjMkc061e6EFpJMMA1QKK5/SpKlMV2E5TH4="; - }; - }; - v2019u2 = buildECTesterStandalone { - ippcp = { - version = "2019u2"; - hash = "sha256-WoiO1pXA6UTRdKCcn9ckMk4/6IvbQAK4k7d8P3rGbqc="; - }; - }; - v2019u1 = buildECTesterStandalone { - ippcp = { - version = "2019u1"; - hash = "sha256-2KcZz+7NrhbvRVLXtdME73uMBrhw+4q0ajiXeWwZdJs="; - }; - }; - v2019 = buildECTesterStandalone { - ippcp = { - version = "2019"; - hash = "sha256-iTupt9pRN+6ze3Hf/dmtve9u15iVL0g2kujUpyGgums="; - }; - }; - v2019b = buildECTesterStandalone { - ippcp = { - version = "2019b"; - hash = "sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8="; - }; - }; -} diff --git a/nix/libressl_pkg_versions.json b/nix/libressl_pkg_versions.json new file mode 100644 index 0000000..50425d5 --- /dev/null +++ b/nix/libressl_pkg_versions.json @@ -0,0 +1,478 @@ +{ + "v200": { + "version": "2.0.0", + "hash": "sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s=" + }, + "v201": { + "version": "2.0.1", + "hash": "sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro=" + }, + "v202": { + "version": "2.0.2", + "hash": "sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys=" + }, + "v203": { + "version": "2.0.3", + "hash": "sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ=" + }, + "v204": { + "version": "2.0.4", + "hash": "sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw=" + }, + "v205": { + "version": "2.0.5", + "hash": "sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo=" + }, + "v206": { + "version": "2.0.6", + "hash": "sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y=" + }, + "v210": { + "version": "2.1.0", + "hash": "sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w=" + }, + "v211": { + "version": "2.1.1", + "hash": "sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc=" + }, + "v2110": { + "version": "2.1.10", + "hash": "sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE=" + }, + "v212": { + "version": "2.1.2", + "hash": "sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I=" + }, + "v213": { + "version": "2.1.3", + "hash": "sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w=" + }, + "v214": { + "version": "2.1.4", + "hash": "sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4=" + }, + "v215": { + "version": "2.1.5", + "hash": "sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s=" + }, + "v216": { + "version": "2.1.6", + "hash": "sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g=" + }, + "v217": { + "version": "2.1.7", + "hash": "sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248=" + }, + "v218": { + "version": "2.1.8", + "hash": "sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM=" + }, + "v219": { + "version": "2.1.9", + "hash": "sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654=" + }, + "v220": { + "version": "2.2.0", + "hash": "sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA=" + }, + "v221": { + "version": "2.2.1", + "hash": "sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0=" + }, + "v222": { + "version": "2.2.2", + "hash": "sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ=" + }, + "v223": { + "version": "2.2.3", + "hash": "sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II=" + }, + "v224": { + "version": "2.2.4", + "hash": "sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4=" + }, + "v225": { + "version": "2.2.5", + "hash": "sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs=" + }, + "v226": { + "version": "2.2.6", + "hash": "sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8=" + }, + "v227": { + "version": "2.2.7", + "hash": "sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80=" + }, + "v228": { + "version": "2.2.8", + "hash": "sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws=" + }, + "v229": { + "version": "2.2.9", + "hash": "sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ=" + }, + "v230": { + "version": "2.3.0", + "hash": "sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA=" + }, + "v231": { + "version": "2.3.1", + "hash": "sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4=" + }, + "v2310": { + "version": "2.3.10", + "hash": "sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM=" + }, + "v232": { + "version": "2.3.2", + "hash": "sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo=" + }, + "v233": { + "version": "2.3.3", + "hash": "sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk=" + }, + "v234": { + "version": "2.3.4", + "hash": "sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk=" + }, + "v235": { + "version": "2.3.5", + "hash": "sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs=" + }, + "v236": { + "version": "2.3.6", + "hash": "sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o=" + }, + "v237": { + "version": "2.3.7", + "hash": "sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA=" + }, + "v238": { + "version": "2.3.8", + "hash": "sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I=" + }, + "v239": { + "version": "2.3.9", + "hash": "sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw=" + }, + "v240": { + "version": "2.4.0", + "hash": "sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4=" + }, + "v241": { + "version": "2.4.1", + "hash": "sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc=" + }, + "v242": { + "version": "2.4.2", + "hash": "sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM=" + }, + "v243": { + "version": "2.4.3", + "hash": "sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4=" + }, + "v244": { + "version": "2.4.4", + "hash": "sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E=" + }, + "v245": { + "version": "2.4.5", + "hash": "sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c=" + }, + "v250": { + "version": "2.5.0", + "hash": "sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4=" + }, + "v251": { + "version": "2.5.1", + "hash": "sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80=" + }, + "v252": { + "version": "2.5.2", + "hash": "sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII=" + }, + "v253": { + "version": "2.5.3", + "hash": "sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA=" + }, + "v254": { + "version": "2.5.4", + "hash": "sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo=" + }, + "v255": { + "version": "2.5.5", + "hash": "sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q=" + }, + "v260": { + "version": "2.6.0", + "hash": "sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM=" + }, + "v261": { + "version": "2.6.1", + "hash": "sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4=" + }, + "v262": { + "version": "2.6.2", + "hash": "sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg=" + }, + "v263": { + "version": "2.6.3", + "hash": "sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg=" + }, + "v264": { + "version": "2.6.4", + "hash": "sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8=" + }, + "v265": { + "version": "2.6.5", + "hash": "sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So=" + }, + "v270": { + "version": "2.7.0", + "hash": "sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4=" + }, + "v271": { + "version": "2.7.1", + "hash": "sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA=" + }, + "v272": { + "version": "2.7.2", + "hash": "sha256-kXqHecNCF3/zdRor+VXQJi0diRaktAiTDEXO8yZwCZU=" + }, + "v273": { + "version": "2.7.3", + "hash": "sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U=" + }, + "v274": { + "version": "2.7.4", + "hash": "sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY=" + }, + "v275": { + "version": "2.7.5", + "hash": "sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA=" + }, + "v280": { + "version": "2.8.0", + "hash": "sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM=" + }, + "v281": { + "version": "2.8.1", + "hash": "sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I=" + }, + "v282": { + "version": "2.8.2", + "hash": "sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U=" + }, + "v283": { + "version": "2.8.3", + "hash": "sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc=" + }, + "v290": { + "version": "2.9.0", + "hash": "sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ=" + }, + "v291": { + "version": "2.9.1", + "hash": "sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg=" + }, + "v292": { + "version": "2.9.2", + "hash": "sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ=" + }, + "v300": { + "version": "3.0.0", + "hash": "sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY=" + }, + "v301": { + "version": "3.0.1", + "hash": "sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s=" + }, + "v302": { + "version": "3.0.2", + "hash": "sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4=" + }, + "v310": { + "version": "3.1.0", + "hash": "sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY=" + }, + "v311": { + "version": "3.1.1", + "hash": "sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA=" + }, + "v312": { + "version": "3.1.2", + "hash": "sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI=" + }, + "v313": { + "version": "3.1.3", + "hash": "sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A=" + }, + "v314": { + "version": "3.1.4", + "hash": "sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y=" + }, + "v315": { + "version": "3.1.5", + "hash": "sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ=" + }, + "v320": { + "version": "3.2.0", + "hash": "sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU=" + }, + "v321": { + "version": "3.2.1", + "hash": "sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU=" + }, + "v322": { + "version": "3.2.2", + "hash": "sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E=" + }, + "v323": { + "version": "3.2.3", + "hash": "sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM=" + }, + "v324": { + "version": "3.2.4", + "hash": "sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo=" + }, + "v325": { + "version": "3.2.5", + "hash": "sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4=" + }, + "v326": { + "version": "3.2.6", + "hash": "sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls=" + }, + "v327": { + "version": "3.2.7", + "hash": "sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q=" + }, + "v330": { + "version": "3.3.0", + "hash": "sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY=" + }, + "v331": { + "version": "3.3.1", + "hash": "sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s=" + }, + "v332": { + "version": "3.3.2", + "hash": "sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ=" + }, + "v333": { + "version": "3.3.3", + "hash": "sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY=" + }, + "v334": { + "version": "3.3.4", + "hash": "sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE=" + }, + "v335": { + "version": "3.3.5", + "hash": "sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU=" + }, + "v336": { + "version": "3.3.6", + "hash": "sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o=" + }, + "v340": { + "version": "3.4.0", + "hash": "sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI=" + }, + "v341": { + "version": "3.4.1", + "hash": "sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw=" + }, + "v342": { + "version": "3.4.2", + "hash": "sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84=" + }, + "v343": { + "version": "3.4.3", + "hash": "sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0=" + }, + "v350": { + "version": "3.5.0", + "hash": "sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c=" + }, + "v351": { + "version": "3.5.1", + "hash": "sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg=" + }, + "v352": { + "version": "3.5.2", + "hash": "sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8=" + }, + "v353": { + "version": "3.5.3", + "hash": "sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg=" + }, + "v354": { + "version": "3.5.4", + "hash": "sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w=" + }, + "v360": { + "version": "3.6.0", + "hash": "sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ=" + }, + "v361": { + "version": "3.6.1", + "hash": "sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q=" + }, + "v362": { + "version": "3.6.2", + "hash": "sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM=" + }, + "v363": { + "version": "3.6.3", + "hash": "sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc=" + }, + "v370": { + "version": "3.7.0", + "hash": "sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY=" + }, + "v371": { + "version": "3.7.1", + "hash": "sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0=" + }, + "v372": { + "version": "3.7.2", + "hash": "sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc=" + }, + "v373": { + "version": "3.7.3", + "hash": "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM=" + }, + "v380": { + "version": "3.8.0", + "hash": "sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw=" + }, + "v381": { + "version": "3.8.1", + "hash": "sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I=" + }, + "v382": { + "version": "3.8.2", + "hash": "sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ=" + }, + "v383": { + "version": "3.8.3", + "hash": "sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI=" + }, + "v384": { + "version": "3.8.4", + "hash": "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0=" + }, + "v390": { + "version": "3.9.0", + "hash": "sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA=" + }, + "v391": { + "version": "3.9.1", + "hash": "sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE=" + }, + "v392": { + "version": "3.9.2", + "hash": "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c=" + } +} \ No newline at end of file diff --git a/nix/libressl_pkg_versions.nix b/nix/libressl_pkg_versions.nix deleted file mode 100644 index d723778..0000000 --- a/nix/libressl_pkg_versions.nix +++ /dev/null @@ -1,717 +0,0 @@ -{ buildECTesterStandalone }: -{ - v200 = buildECTesterStandalone { - libressl = { - version = "2.0.0"; - hash = "sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s="; - }; - }; - v201 = buildECTesterStandalone { - libressl = { - version = "2.0.1"; - hash = "sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro="; - }; - }; - v202 = buildECTesterStandalone { - libressl = { - version = "2.0.2"; - hash = "sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys="; - }; - }; - v203 = buildECTesterStandalone { - libressl = { - version = "2.0.3"; - hash = "sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ="; - }; - }; - v204 = buildECTesterStandalone { - libressl = { - version = "2.0.4"; - hash = "sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw="; - }; - }; - v205 = buildECTesterStandalone { - libressl = { - version = "2.0.5"; - hash = "sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo="; - }; - }; - v206 = buildECTesterStandalone { - libressl = { - version = "2.0.6"; - hash = "sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y="; - }; - }; - v210 = buildECTesterStandalone { - libressl = { - version = "2.1.0"; - hash = "sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w="; - }; - }; - v211 = buildECTesterStandalone { - libressl = { - version = "2.1.1"; - hash = "sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc="; - }; - }; - v2110 = buildECTesterStandalone { - libressl = { - version = "2.1.10"; - hash = "sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE="; - }; - }; - v212 = buildECTesterStandalone { - libressl = { - version = "2.1.2"; - hash = "sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I="; - }; - }; - v213 = buildECTesterStandalone { - libressl = { - version = "2.1.3"; - hash = "sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w="; - }; - }; - v214 = buildECTesterStandalone { - libressl = { - version = "2.1.4"; - hash = "sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4="; - }; - }; - v215 = buildECTesterStandalone { - libressl = { - version = "2.1.5"; - hash = "sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s="; - }; - }; - v216 = buildECTesterStandalone { - libressl = { - version = "2.1.6"; - hash = "sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g="; - }; - }; - v217 = buildECTesterStandalone { - libressl = { - version = "2.1.7"; - hash = "sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248="; - }; - }; - v218 = buildECTesterStandalone { - libressl = { - version = "2.1.8"; - hash = "sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM="; - }; - }; - v219 = buildECTesterStandalone { - libressl = { - version = "2.1.9"; - hash = "sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654="; - }; - }; - v220 = buildECTesterStandalone { - libressl = { - version = "2.2.0"; - hash = "sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA="; - }; - }; - v221 = buildECTesterStandalone { - libressl = { - version = "2.2.1"; - hash = "sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0="; - }; - }; - v222 = buildECTesterStandalone { - libressl = { - version = "2.2.2"; - hash = "sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ="; - }; - }; - v223 = buildECTesterStandalone { - libressl = { - version = "2.2.3"; - hash = "sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II="; - }; - }; - v224 = buildECTesterStandalone { - libressl = { - version = "2.2.4"; - hash = "sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4="; - }; - }; - v225 = buildECTesterStandalone { - libressl = { - version = "2.2.5"; - hash = "sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs="; - }; - }; - v226 = buildECTesterStandalone { - libressl = { - version = "2.2.6"; - hash = "sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8="; - }; - }; - v227 = buildECTesterStandalone { - libressl = { - version = "2.2.7"; - hash = "sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80="; - }; - }; - v228 = buildECTesterStandalone { - libressl = { - version = "2.2.8"; - hash = "sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws="; - }; - }; - v229 = buildECTesterStandalone { - libressl = { - version = "2.2.9"; - hash = "sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ="; - }; - }; - v230 = buildECTesterStandalone { - libressl = { - version = "2.3.0"; - hash = "sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA="; - }; - }; - v231 = buildECTesterStandalone { - libressl = { - version = "2.3.1"; - hash = "sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4="; - }; - }; - v2310 = buildECTesterStandalone { - libressl = { - version = "2.3.10"; - hash = "sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM="; - }; - }; - v232 = buildECTesterStandalone { - libressl = { - version = "2.3.2"; - hash = "sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo="; - }; - }; - v233 = buildECTesterStandalone { - libressl = { - version = "2.3.3"; - hash = "sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk="; - }; - }; - v234 = buildECTesterStandalone { - libressl = { - version = "2.3.4"; - hash = "sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk="; - }; - }; - v235 = buildECTesterStandalone { - libressl = { - version = "2.3.5"; - hash = "sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs="; - }; - }; - v236 = buildECTesterStandalone { - libressl = { - version = "2.3.6"; - hash = "sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o="; - }; - }; - v237 = buildECTesterStandalone { - libressl = { - version = "2.3.7"; - hash = "sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA="; - }; - }; - v238 = buildECTesterStandalone { - libressl = { - version = "2.3.8"; - hash = "sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I="; - }; - }; - v239 = buildECTesterStandalone { - libressl = { - version = "2.3.9"; - hash = "sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw="; - }; - }; - v240 = buildECTesterStandalone { - libressl = { - version = "2.4.0"; - hash = "sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4="; - }; - }; - v241 = buildECTesterStandalone { - libressl = { - version = "2.4.1"; - hash = "sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc="; - }; - }; - v242 = buildECTesterStandalone { - libressl = { - version = "2.4.2"; - hash = "sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM="; - }; - }; - v243 = buildECTesterStandalone { - libressl = { - version = "2.4.3"; - hash = "sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4="; - }; - }; - v244 = buildECTesterStandalone { - libressl = { - version = "2.4.4"; - hash = "sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E="; - }; - }; - v245 = buildECTesterStandalone { - libressl = { - version = "2.4.5"; - hash = "sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c="; - }; - }; - v250 = buildECTesterStandalone { - libressl = { - version = "2.5.0"; - hash = "sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4="; - }; - }; - v251 = buildECTesterStandalone { - libressl = { - version = "2.5.1"; - hash = "sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80="; - }; - }; - v252 = buildECTesterStandalone { - libressl = { - version = "2.5.2"; - hash = "sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII="; - }; - }; - v253 = buildECTesterStandalone { - libressl = { - version = "2.5.3"; - hash = "sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA="; - }; - }; - v254 = buildECTesterStandalone { - libressl = { - version = "2.5.4"; - hash = "sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo="; - }; - }; - v255 = buildECTesterStandalone { - libressl = { - version = "2.5.5"; - hash = "sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q="; - }; - }; - v260 = buildECTesterStandalone { - libressl = { - version = "2.6.0"; - hash = "sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM="; - }; - }; - v261 = buildECTesterStandalone { - libressl = { - version = "2.6.1"; - hash = "sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4="; - }; - }; - v262 = buildECTesterStandalone { - libressl = { - version = "2.6.2"; - hash = "sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg="; - }; - }; - v263 = buildECTesterStandalone { - libressl = { - version = "2.6.3"; - hash = "sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg="; - }; - }; - v264 = buildECTesterStandalone { - libressl = { - version = "2.6.4"; - hash = "sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8="; - }; - }; - v265 = buildECTesterStandalone { - libressl = { - version = "2.6.5"; - hash = "sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So="; - }; - }; - v270 = buildECTesterStandalone { - libressl = { - version = "2.7.0"; - hash = "sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4="; - }; - }; - v271 = buildECTesterStandalone { - libressl = { - version = "2.7.1"; - hash = "sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA="; - }; - }; - v272 = buildECTesterStandalone { - libressl = { - version = "2.7.2"; - hash = "sha256-kXqHecNCF3/zdRor+VXQJi0diRaktAiTDEXO8yZwCZU="; - }; - }; - v273 = buildECTesterStandalone { - libressl = { - version = "2.7.3"; - hash = "sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U="; - }; - }; - v274 = buildECTesterStandalone { - libressl = { - version = "2.7.4"; - hash = "sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY="; - }; - }; - v275 = buildECTesterStandalone { - libressl = { - version = "2.7.5"; - hash = "sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA="; - }; - }; - v280 = buildECTesterStandalone { - libressl = { - version = "2.8.0"; - hash = "sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM="; - }; - }; - v281 = buildECTesterStandalone { - libressl = { - version = "2.8.1"; - hash = "sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I="; - }; - }; - v282 = buildECTesterStandalone { - libressl = { - version = "2.8.2"; - hash = "sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U="; - }; - }; - v283 = buildECTesterStandalone { - libressl = { - version = "2.8.3"; - hash = "sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc="; - }; - }; - v290 = buildECTesterStandalone { - libressl = { - version = "2.9.0"; - hash = "sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ="; - }; - }; - v291 = buildECTesterStandalone { - libressl = { - version = "2.9.1"; - hash = "sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg="; - }; - }; - v292 = buildECTesterStandalone { - libressl = { - version = "2.9.2"; - hash = "sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ="; - }; - }; - v300 = buildECTesterStandalone { - libressl = { - version = "3.0.0"; - hash = "sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY="; - }; - }; - v301 = buildECTesterStandalone { - libressl = { - version = "3.0.1"; - hash = "sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s="; - }; - }; - v302 = buildECTesterStandalone { - libressl = { - version = "3.0.2"; - hash = "sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4="; - }; - }; - v310 = buildECTesterStandalone { - libressl = { - version = "3.1.0"; - hash = "sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY="; - }; - }; - v311 = buildECTesterStandalone { - libressl = { - version = "3.1.1"; - hash = "sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA="; - }; - }; - v312 = buildECTesterStandalone { - libressl = { - version = "3.1.2"; - hash = "sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI="; - }; - }; - v313 = buildECTesterStandalone { - libressl = { - version = "3.1.3"; - hash = "sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A="; - }; - }; - v314 = buildECTesterStandalone { - libressl = { - version = "3.1.4"; - hash = "sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y="; - }; - }; - v315 = buildECTesterStandalone { - libressl = { - version = "3.1.5"; - hash = "sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ="; - }; - }; - v320 = buildECTesterStandalone { - libressl = { - version = "3.2.0"; - hash = "sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU="; - }; - }; - v321 = buildECTesterStandalone { - libressl = { - version = "3.2.1"; - hash = "sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU="; - }; - }; - v322 = buildECTesterStandalone { - libressl = { - version = "3.2.2"; - hash = "sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E="; - }; - }; - v323 = buildECTesterStandalone { - libressl = { - version = "3.2.3"; - hash = "sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM="; - }; - }; - v324 = buildECTesterStandalone { - libressl = { - version = "3.2.4"; - hash = "sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo="; - }; - }; - v325 = buildECTesterStandalone { - libressl = { - version = "3.2.5"; - hash = "sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4="; - }; - }; - v326 = buildECTesterStandalone { - libressl = { - version = "3.2.6"; - hash = "sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls="; - }; - }; - v327 = buildECTesterStandalone { - libressl = { - version = "3.2.7"; - hash = "sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q="; - }; - }; - v330 = buildECTesterStandalone { - libressl = { - version = "3.3.0"; - hash = "sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY="; - }; - }; - v331 = buildECTesterStandalone { - libressl = { - version = "3.3.1"; - hash = "sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s="; - }; - }; - v332 = buildECTesterStandalone { - libressl = { - version = "3.3.2"; - hash = "sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ="; - }; - }; - v333 = buildECTesterStandalone { - libressl = { - version = "3.3.3"; - hash = "sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY="; - }; - }; - v334 = buildECTesterStandalone { - libressl = { - version = "3.3.4"; - hash = "sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE="; - }; - }; - v335 = buildECTesterStandalone { - libressl = { - version = "3.3.5"; - hash = "sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU="; - }; - }; - v336 = buildECTesterStandalone { - libressl = { - version = "3.3.6"; - hash = "sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o="; - }; - }; - v340 = buildECTesterStandalone { - libressl = { - version = "3.4.0"; - hash = "sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI="; - }; - }; - v341 = buildECTesterStandalone { - libressl = { - version = "3.4.1"; - hash = "sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw="; - }; - }; - v342 = buildECTesterStandalone { - libressl = { - version = "3.4.2"; - hash = "sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84="; - }; - }; - v343 = buildECTesterStandalone { - libressl = { - version = "3.4.3"; - hash = "sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0="; - }; - }; - v350 = buildECTesterStandalone { - libressl = { - version = "3.5.0"; - hash = "sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c="; - }; - }; - v351 = buildECTesterStandalone { - libressl = { - version = "3.5.1"; - hash = "sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg="; - }; - }; - v352 = buildECTesterStandalone { - libressl = { - version = "3.5.2"; - hash = "sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8="; - }; - }; - v353 = buildECTesterStandalone { - libressl = { - version = "3.5.3"; - hash = "sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg="; - }; - }; - v354 = buildECTesterStandalone { - libressl = { - version = "3.5.4"; - hash = "sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w="; - }; - }; - v360 = buildECTesterStandalone { - libressl = { - version = "3.6.0"; - hash = "sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ="; - }; - }; - v361 = buildECTesterStandalone { - libressl = { - version = "3.6.1"; - hash = "sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q="; - }; - }; - v362 = buildECTesterStandalone { - libressl = { - version = "3.6.2"; - hash = "sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM="; - }; - }; - v363 = buildECTesterStandalone { - libressl = { - version = "3.6.3"; - hash = "sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc="; - }; - }; - v370 = buildECTesterStandalone { - libressl = { - version = "3.7.0"; - hash = "sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY="; - }; - }; - v371 = buildECTesterStandalone { - libressl = { - version = "3.7.1"; - hash = "sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0="; - }; - }; - v372 = buildECTesterStandalone { - libressl = { - version = "3.7.2"; - hash = "sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc="; - }; - }; - v373 = buildECTesterStandalone { - libressl = { - version = "3.7.3"; - hash = "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM="; - }; - }; - v380 = buildECTesterStandalone { - libressl = { - version = "3.8.0"; - hash = "sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw="; - }; - }; - v381 = buildECTesterStandalone { - libressl = { - version = "3.8.1"; - hash = "sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I="; - }; - }; - v382 = buildECTesterStandalone { - libressl = { - version = "3.8.2"; - hash = "sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ="; - }; - }; - v383 = buildECTesterStandalone { - libressl = { - version = "3.8.3"; - hash = "sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI="; - }; - }; - v384 = buildECTesterStandalone { - libressl = { - version = "3.8.4"; - hash = "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0="; - }; - }; - v390 = buildECTesterStandalone { - libressl = { - version = "3.9.0"; - hash = "sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA="; - }; - }; - v391 = buildECTesterStandalone { - libressl = { - version = "3.9.1"; - hash = "sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE="; - }; - }; - v392 = buildECTesterStandalone { - libressl = { - version = "3.9.2"; - hash = "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c="; - }; - }; -} diff --git a/nix/mbedtls_pkg_versions.json b/nix/mbedtls_pkg_versions.json new file mode 100644 index 0000000..37bf6c0 --- /dev/null +++ b/nix/mbedtls_pkg_versions.json @@ -0,0 +1,122 @@ +{ + "v360": { + "version": "v3.6.0", + "hash": "sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg=" + }, + "v2288": { + "version": "v2.28.8", + "hash": "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o=" + }, + "v352": { + "version": "v3.5.2", + "hash": "sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM=" + }, + "v2287": { + "version": "v2.28.7", + "hash": "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw=" + }, + "v351": { + "version": "v3.5.1", + "hash": "sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw=" + }, + "v2286": { + "version": "v2.28.6", + "hash": "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8=" + }, + "mbedtls-350": { + "version": "mbedtls-3.5.0", + "hash": "sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU=" + }, + "mbedtls-2285": { + "version": "mbedtls-2.28.5", + "hash": "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o=" + }, + "v341": { + "version": "v3.4.1", + "hash": "sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts=" + }, + "v2284": { + "version": "v2.28.4", + "hash": "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE=" + }, + "v340": { + "version": "v3.4.0", + "hash": "sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg=" + }, + "v2283": { + "version": "v2.28.3", + "hash": "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw=" + }, + "v330": { + "version": "v3.3.0", + "hash": "sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE=" + }, + "v2282": { + "version": "v2.28.2", + "hash": "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ=" + }, + "v321": { + "version": "v3.2.1", + "hash": "sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc=" + }, + "v320": { + "version": "v3.2.0", + "hash": "sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ=" + }, + "v2281": { + "version": "v2.28.1", + "hash": "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw=" + }, + "v310": { + "version": "v3.1.0", + "hash": "sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs=" + }, + "v2280": { + "version": "v2.28.0", + "hash": "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g=" + }, + "v21612": { + "version": "v2.16.12", + "hash": "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q=" + }, + "v300": { + "version": "v3.0.0", + "hash": "sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s=" + }, + "v2270": { + "version": "v2.27.0", + "hash": "sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M=" + }, + "v21611": { + "version": "v2.16.11", + "hash": "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg=" + }, + "v2260": { + "version": "v2.26.0", + "hash": "sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk=" + }, + "v21610": { + "version": "v2.16.10", + "hash": "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4=" + }, + "v2719": { + "version": "v2.7.19", + "hash": "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY=" + }, + "v2250": { + "version": "v2.25.0", + "hash": "sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ=" + }, + "v2169": { + "version": "v2.16.9", + "hash": "sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c=" + }, + "v2718": { + "version": "v2.7.18", + "hash": "sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg=" + }, + "v2240": { + "version": "v2.24.0", + "hash": "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM=" + } +} \ No newline at end of file diff --git a/nix/mbedtls_pkg_versions.nix b/nix/mbedtls_pkg_versions.nix deleted file mode 100644 index 6877800..0000000 --- a/nix/mbedtls_pkg_versions.nix +++ /dev/null @@ -1,183 +0,0 @@ -{ buildECTesterStandalone }: -{ - v360 = buildECTesterStandalone { - mbedtls = { - version = "v3.6.0"; - hash = "sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg="; - }; - }; - v2288 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.8"; - hash = "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o="; - }; - }; - v352 = buildECTesterStandalone { - mbedtls = { - version = "v3.5.2"; - hash = "sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM="; - }; - }; - v2287 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.7"; - hash = "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw="; - }; - }; - v351 = buildECTesterStandalone { - mbedtls = { - version = "v3.5.1"; - hash = "sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw="; - }; - }; - v2286 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.6"; - hash = "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8="; - }; - }; - mbedtls-350 = buildECTesterStandalone { - mbedtls = { - version = "mbedtls-3.5.0"; - hash = "sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU="; - }; - }; - mbedtls-2285 = buildECTesterStandalone { - mbedtls = { - version = "mbedtls-2.28.5"; - hash = "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o="; - }; - }; - v341 = buildECTesterStandalone { - mbedtls = { - version = "v3.4.1"; - hash = "sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts="; - }; - }; - v2284 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.4"; - hash = "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE="; - }; - }; - v340 = buildECTesterStandalone { - mbedtls = { - version = "v3.4.0"; - hash = "sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg="; - }; - }; - v2283 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.3"; - hash = "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw="; - }; - }; - v330 = buildECTesterStandalone { - mbedtls = { - version = "v3.3.0"; - hash = "sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE="; - }; - }; - v2282 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.2"; - hash = "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ="; - }; - }; - v321 = buildECTesterStandalone { - mbedtls = { - version = "v3.2.1"; - hash = "sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc="; - }; - }; - v320 = buildECTesterStandalone { - mbedtls = { - version = "v3.2.0"; - hash = "sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ="; - }; - }; - v2281 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.1"; - hash = "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw="; - }; - }; - v310 = buildECTesterStandalone { - mbedtls = { - version = "v3.1.0"; - hash = "sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs="; - }; - }; - v2280 = buildECTesterStandalone { - mbedtls = { - version = "v2.28.0"; - hash = "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g="; - }; - }; - v21612 = buildECTesterStandalone { - mbedtls = { - version = "v2.16.12"; - hash = "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q="; - }; - }; - v300 = buildECTesterStandalone { - mbedtls = { - version = "v3.0.0"; - hash = "sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s="; - }; - }; - v2270 = buildECTesterStandalone { - mbedtls = { - version = "v2.27.0"; - hash = "sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M="; - }; - }; - v21611 = buildECTesterStandalone { - mbedtls = { - version = "v2.16.11"; - hash = "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg="; - }; - }; - v2260 = buildECTesterStandalone { - mbedtls = { - version = "v2.26.0"; - hash = "sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk="; - }; - }; - v21610 = buildECTesterStandalone { - mbedtls = { - version = "v2.16.10"; - hash = "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4="; - }; - }; - v2719 = buildECTesterStandalone { - mbedtls = { - version = "v2.7.19"; - hash = "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY="; - }; - }; - v2250 = buildECTesterStandalone { - mbedtls = { - version = "v2.25.0"; - hash = "sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ="; - }; - }; - v2169 = buildECTesterStandalone { - mbedtls = { - version = "v2.16.9"; - hash = "sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c="; - }; - }; - v2718 = buildECTesterStandalone { - mbedtls = { - version = "v2.7.18"; - hash = "sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg="; - }; - }; - v2240 = buildECTesterStandalone { - mbedtls = { - version = "v2.24.0"; - hash = "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM="; - }; - }; -} diff --git a/nix/nettle_pkg_versions.json b/nix/nettle_pkg_versions.json new file mode 100644 index 0000000..dd9eccc --- /dev/null +++ b/nix/nettle_pkg_versions.json @@ -0,0 +1,92 @@ +{ + "v3_8_1": { + "version": "3.8.1", + "tag": "nettle_3.8.1_release_20220727", + "hash": "sha256-Nk8+K3fNfc3oP9fEUhnINOVLDHXkKLb4lKI9Et1By/4=" + }, + "v3_8": { + "version": "3.8", + "tag": "nettle_3.8_release_20220602", + "hash": "sha256-dXbGhIHBmPZEsIwWDRpIULqUSeMIBpRVtSEzGfI06OY=" + }, + "v3_7_3": { + "version": "3.7.3", + "tag": "nettle_3.7.3_release_20210606", + "hash": "sha256-Zh9esD8EijuSTDqK0lFdQGjkD2fndOiiaCdlgAfjvPA=" + }, + "v3_7_2": { + "version": "3.7.2", + "tag": "nettle_3.7.2_release_20210321", + "hash": "sha256-jSpgTvHN5M1ft35CJTHqJa0GRnn/Ct+VbnizNS4O8WI=" + }, + "v3_7_1": { + "version": "3.7.1", + "tag": "nettle_3.7.1_release_20210217", + "hash": "sha256-FWYhQnx7AKdf+bNLdwuV00+A73pVw0B96UsWy/Q2xC4=" + }, + "v3_7": { + "version": "3.7", + "tag": "nettle_3.7_release_20210104", + "hash": "sha256-8AH2TrREvxPdkbzsy8IKy8YMQxHW4rIIeEUuuanOx1o=" + }, + "v3_6": { + "version": "3.6", + "tag": "nettle_3.6_release_20200429", + "hash": "sha256-0kwNDyq/+8j0803PEUsPEx7Dd0iV81VZIv4vQPPV4/E=" + }, + "v3_5_1": { + "version": "3.5.1", + "tag": "nettle_3.5.1_release_20190627", + "hash": "sha256-dcyhmYdhsC4W8ttW2lKZKu9iK/VaO0XsU4vC7trclBk=" + }, + "v3_5": { + "version": "3.5", + "tag": "nettle_3.5_release_20190626", + "hash": "sha256-Qy2Y3NNBy9BjqWMCVSQSI2jB8u6cchu2jXcdXjRnS08=" + }, + "v3_4_1": { + "version": "3.4.1", + "tag": "nettle_3.4.1_release_20181204", + "hash": "sha256-+UHPFTXNXRgZvlzK5bq+8B9tthH5tad3uunHYEuKkq0=" + }, + "v3_4": { + "version": "3.4", + "tag": "nettle_3.4_release_20171119", + "hash": "sha256-rnpC3wJlULhdrKg4m2pgumMTsFZ/N0OS5UkYWIpBHpQ=" + }, + "v3_3": { + "version": "3.3", + "tag": "nettle_3.3_release_20161001", + "hash": "sha256-RpQmJ9XQyhFyD+wY2B/Dj374N+pBl8H2MOcc4NRwsR4=" + }, + "v3_2": { + "version": "3.2", + "tag": "nettle_3.2_release_20160128", + "hash": "sha256-6kKD3vI2QT7ataTPnPMq31QMjfG5tnZBz8IwL8qEnZc=" + }, + "v3_1_1": { + "version": "3.1.1", + "tag": "nettle_3.1.1_release_20150424", + "hash": "sha256-X9TSXWTY3cuF0NiXVyr3OwW00WPGzElDilv7uP8pPUw=" + }, + "v3_1": { + "version": "3.1", + "tag": "nettle_3.1_release_20150407", + "hash": "sha256-9oWdTsiOcIBVkK+YYrS4xDotH8eZHfCnpxGx58qfydM=" + }, + "v3_0": { + "version": "3.0", + "tag": "nettle_3.0_release_20140607", + "hash": "sha256-llHAvSMm63N9DtnrQDREcSQHwBolsP6BNDLvMb682RM=" + }, + "v2_7_1": { + "version": "2.7.1", + "tag": "nettle_2.7.1_release_20130528", + "hash": "sha256-vHHr1DQ1U312d5nkFPzojlIbcnjUjIYGUSFuH8ZVW0A=" + }, + "v2_7": { + "version": "2.7", + "tag": "nettle_2.7_release_20130424", + "hash": "sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY=" + } +} \ No newline at end of file diff --git a/nix/nettle_pkg_versions.nix b/nix/nettle_pkg_versions.nix deleted file mode 100644 index 8350f88..0000000 --- a/nix/nettle_pkg_versions.nix +++ /dev/null @@ -1,129 +0,0 @@ -{ buildECTesterStandalone }: -{ - v3_8_1 = buildECTesterStandalone { - nettle = { - version = "3.8.1"; - tag = "nettle_3.8.1_release_20220727"; - hash = "sha256-Nk8+K3fNfc3oP9fEUhnINOVLDHXkKLb4lKI9Et1By/4="; - }; - }; - v3_8 = buildECTesterStandalone { - nettle = { - version = "3.8"; - tag = "nettle_3.8_release_20220602"; - hash = "sha256-dXbGhIHBmPZEsIwWDRpIULqUSeMIBpRVtSEzGfI06OY="; - }; - }; - v3_7_3 = buildECTesterStandalone { - nettle = { - version = "3.7.3"; - tag = "nettle_3.7.3_release_20210606"; - hash = "sha256-Zh9esD8EijuSTDqK0lFdQGjkD2fndOiiaCdlgAfjvPA="; - }; - }; - v3_7_2 = buildECTesterStandalone { - nettle = { - version = "3.7.2"; - tag = "nettle_3.7.2_release_20210321"; - hash = "sha256-jSpgTvHN5M1ft35CJTHqJa0GRnn/Ct+VbnizNS4O8WI="; - }; - }; - v3_7_1 = buildECTesterStandalone { - nettle = { - version = "3.7.1"; - tag = "nettle_3.7.1_release_20210217"; - hash = "sha256-FWYhQnx7AKdf+bNLdwuV00+A73pVw0B96UsWy/Q2xC4="; - }; - }; - v3_7 = buildECTesterStandalone { - nettle = { - version = "3.7"; - tag = "nettle_3.7_release_20210104"; - hash = "sha256-8AH2TrREvxPdkbzsy8IKy8YMQxHW4rIIeEUuuanOx1o="; - }; - }; - v3_6 = buildECTesterStandalone { - nettle = { - version = "3.6"; - tag = "nettle_3.6_release_20200429"; - hash = "sha256-0kwNDyq/+8j0803PEUsPEx7Dd0iV81VZIv4vQPPV4/E="; - }; - }; - v3_5_1 = buildECTesterStandalone { - nettle = { - version = "3.5.1"; - tag = "nettle_3.5.1_release_20190627"; - hash = "sha256-dcyhmYdhsC4W8ttW2lKZKu9iK/VaO0XsU4vC7trclBk="; - }; - }; - v3_5 = buildECTesterStandalone { - nettle = { - version = "3.5"; - tag = "nettle_3.5_release_20190626"; - hash = "sha256-Qy2Y3NNBy9BjqWMCVSQSI2jB8u6cchu2jXcdXjRnS08="; - }; - }; - v3_4_1 = buildECTesterStandalone { - nettle = { - version = "3.4.1"; - tag = "nettle_3.4.1_release_20181204"; - hash = "sha256-+UHPFTXNXRgZvlzK5bq+8B9tthH5tad3uunHYEuKkq0="; - }; - }; - v3_4 = buildECTesterStandalone { - nettle = { - version = "3.4"; - tag = "nettle_3.4_release_20171119"; - hash = "sha256-rnpC3wJlULhdrKg4m2pgumMTsFZ/N0OS5UkYWIpBHpQ="; - }; - }; - v3_3 = buildECTesterStandalone { - nettle = { - version = "3.3"; - tag = "nettle_3.3_release_20161001"; - hash = "sha256-RpQmJ9XQyhFyD+wY2B/Dj374N+pBl8H2MOcc4NRwsR4="; - }; - }; - v3_2 = buildECTesterStandalone { - nettle = { - version = "3.2"; - tag = "nettle_3.2_release_20160128"; - hash = "sha256-6kKD3vI2QT7ataTPnPMq31QMjfG5tnZBz8IwL8qEnZc="; - }; - }; - v3_1_1 = buildECTesterStandalone { - nettle = { - version = "3.1.1"; - tag = "nettle_3.1.1_release_20150424"; - hash = "sha256-X9TSXWTY3cuF0NiXVyr3OwW00WPGzElDilv7uP8pPUw="; - }; - }; - v3_1 = buildECTesterStandalone { - nettle = { - version = "3.1"; - tag = "nettle_3.1_release_20150407"; - hash = "sha256-9oWdTsiOcIBVkK+YYrS4xDotH8eZHfCnpxGx58qfydM="; - }; - }; - v3_0 = buildECTesterStandalone { - nettle = { - version = "3.0"; - tag = "nettle_3.0_release_20140607"; - hash = "sha256-llHAvSMm63N9DtnrQDREcSQHwBolsP6BNDLvMb682RM="; - }; - }; - v2_7_1 = buildECTesterStandalone { - nettle = { - version = "2.7.1"; - tag = "nettle_2.7.1_release_20130528"; - hash = "sha256-vHHr1DQ1U312d5nkFPzojlIbcnjUjIYGUSFuH8ZVW0A="; - }; - }; - v2_7 = buildECTesterStandalone { - nettle = { - version = "2.7"; - tag = "nettle_2.7_release_20130424"; - hash = "sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY="; - }; - }; -} diff --git a/nix/openssl_pkg_versions.json b/nix/openssl_pkg_versions.json new file mode 100644 index 0000000..e493002 --- /dev/null +++ b/nix/openssl_pkg_versions.json @@ -0,0 +1 @@ +{"v331": {"version": "3.3.1", "hash": "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="}, "v322": {"version": "3.2.2", "hash": "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc="}, "v316": {"version": "3.1.6", "hash": "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc="}, "v3014": {"version": "3.0.14", "hash": "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o="}, "v330": {"version": "3.3.0", "hash": "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI="}, "v321": {"version": "3.2.1", "hash": "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk="}, "v315": {"version": "3.1.5", "hash": "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="}, "v3013": {"version": "3.0.13", "hash": "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="}, "v320": {"version": "3.2.0", "hash": "sha256-FMgm8Hx+QzcG+1xp+p4l2rlWhIRLTJYqLPG/GD60aQ4="}, "v314": {"version": "3.1.4", "hash": "sha256-hAr1Nmq5tSK95SWCa+PvD7Cvgcap69hMqmAP6hcx7uM="}, "v3012": {"version": "3.0.12", "hash": "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E="}, "v313": {"version": "3.1.3", "hash": "sha256-8DFqLr2J5/I1KXZEVFhon4AwIJN4jEZmkvsqGIsurPY="}, "v3011": {"version": "3.0.11", "hash": "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U="}, "v312": {"version": "3.1.2", "hash": "sha256-oM5puLl+pqNblodSNapFO5Zro8uory3iNlfYtnZ9ZTk="}, "v3010": {"version": "3.0.10", "hash": "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM="}, "v311": {"version": "3.1.1", "hash": "sha256-s6phM0IzuFK2PdsEjfGBF3wsZZ651DdgCBGPnAjQdnQ="}, "v309": {"version": "3.0.9", "hash": "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA="}, "v310": {"version": "3.1.0", "hash": "sha256-qqklrZgodFxMrZ2e/rJz3sqCDyzc8sOsfXwSErfEl7Q="}, "v308": {"version": "3.0.8", "hash": "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="}, "v307": {"version": "3.0.7", "hash": "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4="}} \ No newline at end of file diff --git a/nix/openssl_pkg_versions.nix b/nix/openssl_pkg_versions.nix deleted file mode 100644 index 11add73..0000000 --- a/nix/openssl_pkg_versions.nix +++ /dev/null @@ -1,123 +0,0 @@ -{ buildECTesterStandalone }: -{ - v331 = buildECTesterStandalone { - openssl = { - version = "3.3.1"; - hash = "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="; - }; - }; - v322 = buildECTesterStandalone { - openssl = { - version = "3.2.2"; - hash = "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc="; - }; - }; - v316 = buildECTesterStandalone { - openssl = { - version = "3.1.6"; - hash = "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc="; - }; - }; - v3014 = buildECTesterStandalone { - openssl = { - version = "3.0.14"; - hash = "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o="; - }; - }; - v330 = buildECTesterStandalone { - openssl = { - version = "3.3.0"; - hash = "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI="; - }; - }; - v321 = buildECTesterStandalone { - openssl = { - version = "3.2.1"; - hash = "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk="; - }; - }; - v315 = buildECTesterStandalone { - openssl = { - version = "3.1.5"; - hash = "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="; - }; - }; - v3013 = buildECTesterStandalone { - openssl = { - version = "3.0.13"; - hash = "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="; - }; - }; - v320 = buildECTesterStandalone { - openssl = { - version = "3.2.0"; - hash = "sha256-FMgm8Hx+QzcG+1xp+p4l2rlWhIRLTJYqLPG/GD60aQ4="; - }; - }; - v314 = buildECTesterStandalone { - openssl = { - version = "3.1.4"; - hash = "sha256-hAr1Nmq5tSK95SWCa+PvD7Cvgcap69hMqmAP6hcx7uM="; - }; - }; - v3012 = buildECTesterStandalone { - openssl = { - version = "3.0.12"; - hash = "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E="; - }; - }; - v313 = buildECTesterStandalone { - openssl = { - version = "3.1.3"; - hash = "sha256-8DFqLr2J5/I1KXZEVFhon4AwIJN4jEZmkvsqGIsurPY="; - }; - }; - v3011 = buildECTesterStandalone { - openssl = { - version = "3.0.11"; - hash = "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U="; - }; - }; - v312 = buildECTesterStandalone { - openssl = { - version = "3.1.2"; - hash = "sha256-oM5puLl+pqNblodSNapFO5Zro8uory3iNlfYtnZ9ZTk="; - }; - }; - v3010 = buildECTesterStandalone { - openssl = { - version = "3.0.10"; - hash = "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM="; - }; - }; - v311 = buildECTesterStandalone { - openssl = { - version = "3.1.1"; - hash = "sha256-s6phM0IzuFK2PdsEjfGBF3wsZZ651DdgCBGPnAjQdnQ="; - }; - }; - v309 = buildECTesterStandalone { - openssl = { - version = "3.0.9"; - hash = "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA="; - }; - }; - v310 = buildECTesterStandalone { - openssl = { - version = "3.1.0"; - hash = "sha256-qqklrZgodFxMrZ2e/rJz3sqCDyzc8sOsfXwSErfEl7Q="; - }; - }; - v308 = buildECTesterStandalone { - openssl = { - version = "3.0.8"; - hash = "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="; - }; - }; - v307 = buildECTesterStandalone { - openssl = { - version = "3.0.7"; - hash = "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4="; - }; - }; -} diff --git a/nix/tomcrypt_pkg_versions.nix b/nix/tomcrypt_pkg_versions.nix deleted file mode 100644 index c3ccc19..0000000 --- a/nix/tomcrypt_pkg_versions.nix +++ /dev/null @@ -1,48 +0,0 @@ -{ buildECTesterStandalone }: -{ - v1182 = buildECTesterStandalone { - tomcrypt = { - version = "1.18.2"; - hash = "sha256-MEU+u54aXKGSAMPYsh+L9axowzIHiew1uWq8wDsEBmw="; - }; - tommath = { - version = "1.3.0"; - hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; - }; - }; - v1181 = buildECTesterStandalone { - tomcrypt = { - version = "1.18.1"; - hash = "sha256-P00koc4+mAHQ/L5iCuPoiOeI/msZscO5KHZrqmbotRo="; - }; - tommath = { - version = "1.3.0"; - hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; - }; - }; - v1180 = buildECTesterStandalone { - tomcrypt = { - version = "1.18.0"; - hash = "sha256-Y7U+updJI/f3zD6k84DTZDQZh6vhfqR0W8HyizlUZcU="; - }; - tommath = { - version = "1.3.0"; - hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; - }; - }; - # v101 = buildECTesterStandalone { - # tomcrypt = { version = "1.01"; hash = "sha256-lVAPxgkAcBivzZmWfqu0sEh8yGo7Ji2hIYwx4/g0GzM=";}; - # tommath = { version = "1.3.0"; hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; }; - # }; - v117 = buildECTesterStandalone { - tomcrypt = { - version = "1.17"; - hash = "sha256-NWWAs6p27UC64nDL0MwMvzU5aWNe8LZu7DC06d/8isA="; - }; - # NOTE: which is the correct version of libtommath for a particular version of libtomcryp? - tommath = { - version = "1.3.0"; - hash = "sha256-KWJy2TQ1mRMI63NgdgDANLVYgHoH6CnnURQuZcz6nQg="; - }; - }; -} -- cgit v1.3.1 From cad198bccc95267ca3d4fb6767d795d9c7e477ff Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 16:57:45 +0200 Subject: Allow fetching all libraries --- fetchReleases.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/fetchReleases.py b/fetchReleases.py index 137d992..ec1b099 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -413,6 +413,16 @@ def main(): fetch_nettle() case "libressl": fetch_libressl() + case "all": + fetch_botan() + fetch_cryptopp() + fetch_openssl() + fetch_boringssl() + fetch_gcrypt() + fetch_mbedtls() + fetch_ippcp() + fetch_nettle() + fetch_libressl() case _: print("Unknown library") -- cgit v1.3.1 From 1c78a5cdc2e11bcbba2dfd841fbb1967ecb1f617 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 16:57:53 +0200 Subject: Patch only LibreSSL 3.8.2 --- flake.nix | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/flake.nix b/flake.nix index 6a8150e..941220e 100644 --- a/flake.nix +++ b/flake.nix @@ -285,13 +285,17 @@ url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; inherit hash; }; - patches = [ - (pkgs.fetchpatch { - url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; - includes = [ "tests/tlstest.sh" ]; - hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; - }) - ]; + patches = + if version == "3.8.2" then + [ + (pkgs.fetchpatch { + url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; + includes = [ "tests/tlstest.sh" ]; + hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; + }) + ] + else + [ ]; # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. # This is not needed for building the individual shims through Nix, as libresslShim build env does not -- cgit v1.3.1 From e3373e5bff5140c5d44adac71070094d93b08c2b Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 16:58:11 +0200 Subject: Allow building the shims directly --- flake.nix | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/flake.nix b/flake.nix index 941220e..e7f9eae 100644 --- a/flake.nix +++ b/flake.nix @@ -592,6 +592,48 @@ function = buildECTesterStandalone; }; + shim = { + tomcrypt = loadVersionsForShim { + libName = "tomcrypt"; + function = tomcryptShimBuilder; + }; + botan = loadVersionsForShim { + libName = "botan"; + function = botanShimBuilder; + }; + cryptopp = loadVersionsForShim { + libName = "cryptopp"; + function = cryptoppShimBuilder; + }; + openssl = loadVersionsForShim { + libName = "openssl"; + function = opensslShimBuilder; + }; + boringssl = loadVersionsForShim { + libName = "boringssl"; + function = boringsslShimBuilder; + }; + gcrypt = loadVersionsForShim { + libName = "gcrypt"; + function = gcryptShimBuilder; + }; + mbedtls = loadVersionsForShim { + libName = "mbedtls"; + function = mbedtlsShimBuilder; + }; + ippcp = loadVersionsForShim { + libName = "ippcp"; + function = ippcpShimBuilder; + }; + nettle = loadVersionsForShim { + libName = "nettle"; + function = nettleShimBuilder; + }; + libressl = loadVersionsForShim { + libName = "libressl"; + function = libresslShimBuilder; + }; + }; fetchReleases = with pkgs.python3Packages; -- cgit v1.3.1 From fee9a6d4994cfffe1754878f8703abccef5d8d9f Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 17:09:08 +0200 Subject: Autoformat all JSON files --- nix/boringssl_pkg_versions.json | 2 +- nix/botan_pkg_versions.json | 198 +++++++++++++++++++++++++++++++++++++++- nix/cryptopp_pkg_versions.json | 67 +++++++++++++- nix/gcrypt_pkg_versions.json | 2 +- nix/ippcp_pkg_versions.json | 2 +- nix/libressl_pkg_versions.json | 2 +- nix/mbedtls_pkg_versions.json | 2 +- nix/nettle_pkg_versions.json | 2 +- nix/openssl_pkg_versions.json | 83 ++++++++++++++++- 9 files changed, 351 insertions(+), 9 deletions(-) diff --git a/nix/boringssl_pkg_versions.json b/nix/boringssl_pkg_versions.json index 77c4e62..4eca672 100644 --- a/nix/boringssl_pkg_versions.json +++ b/nix/boringssl_pkg_versions.json @@ -399,4 +399,4 @@ "rev": "783ae722ed307a3b3782cd253fd4ffb387f38767", "hash": "sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo=" } -} \ No newline at end of file +} diff --git a/nix/botan_pkg_versions.json b/nix/botan_pkg_versions.json index 0f3753d..c9e3612 100644 --- a/nix/botan_pkg_versions.json +++ b/nix/botan_pkg_versions.json @@ -1 +1,197 @@ -{"v200": {"version": "2.0.0", "source_extension": "tgz", "hash": "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo="}, "v201": {"version": "2.0.1", "source_extension": "tgz", "hash": "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs="}, "v210": {"version": "2.1.0", "source_extension": "tgz", "hash": "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ="}, "v2100": {"version": "2.10.0", "source_extension": "tgz", "hash": "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE="}, "v2110": {"version": "2.11.0", "source_extension": "tar.xz", "hash": "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4="}, "v2120": {"version": "2.12.0", "source_extension": "tar.xz", "hash": "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM="}, "v2121": {"version": "2.12.1", "source_extension": "tar.xz", "hash": "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk="}, "v2130": {"version": "2.13.0", "source_extension": "tar.xz", "hash": "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA="}, "v2140": {"version": "2.14.0", "source_extension": "tar.xz", "hash": "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU="}, "v2150": {"version": "2.15.0", "source_extension": "tar.xz", "hash": "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk="}, "v2160": {"version": "2.16.0", "source_extension": "tar.xz", "hash": "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig="}, "v2170": {"version": "2.17.0", "source_extension": "tar.xz", "hash": "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M="}, "v2171": {"version": "2.17.1", "source_extension": "tar.xz", "hash": "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME="}, "v2172": {"version": "2.17.2", "source_extension": "tar.xz", "hash": "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw="}, "v2173": {"version": "2.17.3", "source_extension": "tar.xz", "hash": "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g="}, "v2180": {"version": "2.18.0", "source_extension": "tar.xz", "hash": "sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc="}, "v2181": {"version": "2.18.1", "source_extension": "tar.xz", "hash": "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik="}, "v2182": {"version": "2.18.2", "source_extension": "tar.xz", "hash": "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4="}, "v2190": {"version": "2.19.0", "source_extension": "tar.xz", "hash": "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs="}, "v2191": {"version": "2.19.1", "source_extension": "tar.xz", "hash": "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA="}, "v2192": {"version": "2.19.2", "source_extension": "tar.xz", "hash": "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU="}, "v2193": {"version": "2.19.3", "source_extension": "tar.xz", "hash": "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU="}, "v2194": {"version": "2.19.4", "source_extension": "tar.xz", "hash": "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY="}, "v2195": {"version": "2.19.5", "source_extension": "tar.xz", "hash": "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ="}, "v220": {"version": "2.2.0", "source_extension": "tgz", "hash": "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ="}, "v230": {"version": "2.3.0", "source_extension": "tgz", "hash": "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw="}, "v240": {"version": "2.4.0", "source_extension": "tgz", "hash": "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU="}, "v250": {"version": "2.5.0", "source_extension": "tgz", "hash": "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs="}, "v260": {"version": "2.6.0", "source_extension": "tgz", "hash": "sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU="}, "v270": {"version": "2.7.0", "source_extension": "tgz", "hash": "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA="}, "v280": {"version": "2.8.0", "source_extension": "tgz", "hash": "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA="}, "v290": {"version": "2.9.0", "source_extension": "tgz", "hash": "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk="}, "v300": {"version": "3.0.0", "source_extension": "tar.xz", "hash": "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc="}, "v310": {"version": "3.1.0", "source_extension": "tar.xz", "hash": "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4="}, "v311": {"version": "3.1.1", "source_extension": "tar.xz", "hash": "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms="}, "v320": {"version": "3.2.0", "source_extension": "tar.xz", "hash": "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM="}, "v330": {"version": "3.3.0", "source_extension": "tar.xz", "hash": "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk="}, "v340": {"version": "3.4.0", "source_extension": "tar.xz", "hash": "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc="}, "v350": {"version": "3.5.0", "source_extension": "tar.xz", "hash": "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8="}} \ No newline at end of file +{ + "v200": { + "version": "2.0.0", + "source_extension": "tgz", + "hash": "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo=" + }, + "v201": { + "version": "2.0.1", + "source_extension": "tgz", + "hash": "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs=" + }, + "v210": { + "version": "2.1.0", + "source_extension": "tgz", + "hash": "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ=" + }, + "v2100": { + "version": "2.10.0", + "source_extension": "tgz", + "hash": "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE=" + }, + "v2110": { + "version": "2.11.0", + "source_extension": "tar.xz", + "hash": "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4=" + }, + "v2120": { + "version": "2.12.0", + "source_extension": "tar.xz", + "hash": "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM=" + }, + "v2121": { + "version": "2.12.1", + "source_extension": "tar.xz", + "hash": "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk=" + }, + "v2130": { + "version": "2.13.0", + "source_extension": "tar.xz", + "hash": "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA=" + }, + "v2140": { + "version": "2.14.0", + "source_extension": "tar.xz", + "hash": "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU=" + }, + "v2150": { + "version": "2.15.0", + "source_extension": "tar.xz", + "hash": "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk=" + }, + "v2160": { + "version": "2.16.0", + "source_extension": "tar.xz", + "hash": "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig=" + }, + "v2170": { + "version": "2.17.0", + "source_extension": "tar.xz", + "hash": "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M=" + }, + "v2171": { + "version": "2.17.1", + "source_extension": "tar.xz", + "hash": "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME=" + }, + "v2172": { + "version": "2.17.2", + "source_extension": "tar.xz", + "hash": "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw=" + }, + "v2173": { + "version": "2.17.3", + "source_extension": "tar.xz", + "hash": "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g=" + }, + "v2180": { + "version": "2.18.0", + "source_extension": "tar.xz", + "hash": "sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc=" + }, + "v2181": { + "version": "2.18.1", + "source_extension": "tar.xz", + "hash": "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik=" + }, + "v2182": { + "version": "2.18.2", + "source_extension": "tar.xz", + "hash": "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4=" + }, + "v2190": { + "version": "2.19.0", + "source_extension": "tar.xz", + "hash": "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs=" + }, + "v2191": { + "version": "2.19.1", + "source_extension": "tar.xz", + "hash": "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA=" + }, + "v2192": { + "version": "2.19.2", + "source_extension": "tar.xz", + "hash": "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU=" + }, + "v2193": { + "version": "2.19.3", + "source_extension": "tar.xz", + "hash": "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU=" + }, + "v2194": { + "version": "2.19.4", + "source_extension": "tar.xz", + "hash": "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY=" + }, + "v2195": { + "version": "2.19.5", + "source_extension": "tar.xz", + "hash": "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ=" + }, + "v220": { + "version": "2.2.0", + "source_extension": "tgz", + "hash": "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ=" + }, + "v230": { + "version": "2.3.0", + "source_extension": "tgz", + "hash": "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw=" + }, + "v240": { + "version": "2.4.0", + "source_extension": "tgz", + "hash": "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU=" + }, + "v250": { + "version": "2.5.0", + "source_extension": "tgz", + "hash": "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs=" + }, + "v260": { + "version": "2.6.0", + "source_extension": "tgz", + "hash": "sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU=" + }, + "v270": { + "version": "2.7.0", + "source_extension": "tgz", + "hash": "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA=" + }, + "v280": { + "version": "2.8.0", + "source_extension": "tgz", + "hash": "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA=" + }, + "v290": { + "version": "2.9.0", + "source_extension": "tgz", + "hash": "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk=" + }, + "v300": { + "version": "3.0.0", + "source_extension": "tar.xz", + "hash": "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc=" + }, + "v310": { + "version": "3.1.0", + "source_extension": "tar.xz", + "hash": "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4=" + }, + "v311": { + "version": "3.1.1", + "source_extension": "tar.xz", + "hash": "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms=" + }, + "v320": { + "version": "3.2.0", + "source_extension": "tar.xz", + "hash": "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM=" + }, + "v330": { + "version": "3.3.0", + "source_extension": "tar.xz", + "hash": "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk=" + }, + "v340": { + "version": "3.4.0", + "source_extension": "tar.xz", + "hash": "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc=" + }, + "v350": { + "version": "3.5.0", + "source_extension": "tar.xz", + "hash": "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8=" + } +} diff --git a/nix/cryptopp_pkg_versions.json b/nix/cryptopp_pkg_versions.json index 194d12c..7920f27 100644 --- a/nix/cryptopp_pkg_versions.json +++ b/nix/cryptopp_pkg_versions.json @@ -1 +1,66 @@ -{"v890": {"version": "8_9_0", "hash": "sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ="}, "v880": {"version": "8_8_0", "hash": "sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU="}, "v870": {"version": "8_7_0", "hash": "sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE="}, "v860": {"version": "8_6_0", "hash": "sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4="}, "v850": {"version": "8_5_0", "hash": "sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y="}, "v840": {"version": "8_4_0", "hash": "sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8="}, "v830": {"version": "8_3_0", "hash": "sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng="}, "v820": {"version": "8_2_0", "hash": "sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc="}, "v810": {"version": "8_1_0", "hash": "sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI="}, "v800": {"version": "8_0_0", "hash": "sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w="}, "v700": {"version": "7_0_0", "hash": "sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4="}, "v610": {"version": "6_1_0", "hash": "sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo="}, "v600": {"version": "6_0_0", "hash": "sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E="}, "v565": {"version": "5_6_5", "hash": "sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o="}, "v564": {"version": "5_6_4", "hash": "sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4="}, "v563": {"version": "5_6_3", "hash": "sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0="}} \ No newline at end of file +{ + "v890": { + "version": "8_9_0", + "hash": "sha256-HV+afSFkiXdy840JbHBTR8lLL0GMwsN3QdwaoQmicpQ=" + }, + "v880": { + "version": "8_8_0", + "hash": "sha256-hg7g56bIYaXxB28nAmSQ7EP9NEwd1Psf/2GUtbC27oU=" + }, + "v870": { + "version": "8_7_0", + "hash": "sha256-KtZXW7+J9a4uKHnK8sqj5WVaIjG3d6tzBBDxa7Wv4AE=" + }, + "v860": { + "version": "8_6_0", + "hash": "sha256-a3TYaK34WvKEXN7LKAfGwQ3ZL6a3k/zMZyyVfnkQqO4=" + }, + "v850": { + "version": "8_5_0", + "hash": "sha256-A7eoJNwIOSCrO7vXyA6JER4E18k8vRRKdDsk/BXNx0Y=" + }, + "v840": { + "version": "8_4_0", + "hash": "sha256-gxd3LtvtgwgE1bUQc9pXLT8/WFrQPm3ghIHAGqBHlr8=" + }, + "v830": { + "version": "8_3_0", + "hash": "sha256-PHQol8Q7R0b63wiAf43nq+l+FcGItBzw65JZYSMf1ng=" + }, + "v820": { + "version": "8_2_0", + "hash": "sha256-sg7MrjzuAfWRK0RNZ6xR6cUD6z6F/u/SmtCTYOXP+Qc=" + }, + "v810": { + "version": "8_1_0", + "hash": "sha256-6SRr0Kv+iJrtEixJjb7Rbj/YdVa7vhW7u476FZLTymI=" + }, + "v800": { + "version": "8_0_0", + "hash": "sha256-mq8xhse5xXbP0VcnNbnNz6xxLxJDIj8Gm3Pn/DEOt4w=" + }, + "v700": { + "version": "7_0_0", + "hash": "sha256-6m7ZnIBbOqthlX7I4uj/UvUgh1BEopNE02BC4pyMuU4=" + }, + "v610": { + "version": "6_1_0", + "hash": "sha256-ZbercC0i/XhMhCYv54GwyIJuTygezD89/8HGeSKgkTo=" + }, + "v600": { + "version": "6_0_0", + "hash": "sha256-3IZpDOzlljFmYRfkw/Kxe8BiBxYkqM4zIF03FyNqC/E=" + }, + "v565": { + "version": "5_6_5", + "hash": "sha256-h+7LK8nzk1NlkVB4Loc9VQpN79SUFvBYESSpTZyXZ/o=" + }, + "v564": { + "version": "5_6_4", + "hash": "sha256-IgSRJAF+4lEFSXeboxktfG0iW+a72ZFp6Vibk5/qgz4=" + }, + "v563": { + "version": "5_6_3", + "hash": "sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0=" + } +} diff --git a/nix/gcrypt_pkg_versions.json b/nix/gcrypt_pkg_versions.json index c17dbe6..711cfd2 100644 --- a/nix/gcrypt_pkg_versions.json +++ b/nix/gcrypt_pkg_versions.json @@ -231,4 +231,4 @@ "version": "1.2.1", "hash": "sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I=" } -} \ No newline at end of file +} diff --git a/nix/ippcp_pkg_versions.json b/nix/ippcp_pkg_versions.json index d234dbb..ff1424a 100644 --- a/nix/ippcp_pkg_versions.json +++ b/nix/ippcp_pkg_versions.json @@ -95,4 +95,4 @@ "version": "2019b", "hash": "sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8=" } -} \ No newline at end of file +} diff --git a/nix/libressl_pkg_versions.json b/nix/libressl_pkg_versions.json index 50425d5..efe80ca 100644 --- a/nix/libressl_pkg_versions.json +++ b/nix/libressl_pkg_versions.json @@ -475,4 +475,4 @@ "version": "3.9.2", "hash": "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c=" } -} \ No newline at end of file +} diff --git a/nix/mbedtls_pkg_versions.json b/nix/mbedtls_pkg_versions.json index 37bf6c0..9e27c76 100644 --- a/nix/mbedtls_pkg_versions.json +++ b/nix/mbedtls_pkg_versions.json @@ -119,4 +119,4 @@ "version": "v2.24.0", "hash": "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM=" } -} \ No newline at end of file +} diff --git a/nix/nettle_pkg_versions.json b/nix/nettle_pkg_versions.json index dd9eccc..de955da 100644 --- a/nix/nettle_pkg_versions.json +++ b/nix/nettle_pkg_versions.json @@ -89,4 +89,4 @@ "tag": "nettle_2.7_release_20130424", "hash": "sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY=" } -} \ No newline at end of file +} diff --git a/nix/openssl_pkg_versions.json b/nix/openssl_pkg_versions.json index e493002..e04efd5 100644 --- a/nix/openssl_pkg_versions.json +++ b/nix/openssl_pkg_versions.json @@ -1 +1,82 @@ -{"v331": {"version": "3.3.1", "hash": "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34="}, "v322": {"version": "3.2.2", "hash": "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc="}, "v316": {"version": "3.1.6", "hash": "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc="}, "v3014": {"version": "3.0.14", "hash": "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o="}, "v330": {"version": "3.3.0", "hash": "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI="}, "v321": {"version": "3.2.1", "hash": "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk="}, "v315": {"version": "3.1.5", "hash": "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI="}, "v3013": {"version": "3.0.13", "hash": "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM="}, "v320": {"version": "3.2.0", "hash": "sha256-FMgm8Hx+QzcG+1xp+p4l2rlWhIRLTJYqLPG/GD60aQ4="}, "v314": {"version": "3.1.4", "hash": "sha256-hAr1Nmq5tSK95SWCa+PvD7Cvgcap69hMqmAP6hcx7uM="}, "v3012": {"version": "3.0.12", "hash": "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E="}, "v313": {"version": "3.1.3", "hash": "sha256-8DFqLr2J5/I1KXZEVFhon4AwIJN4jEZmkvsqGIsurPY="}, "v3011": {"version": "3.0.11", "hash": "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U="}, "v312": {"version": "3.1.2", "hash": "sha256-oM5puLl+pqNblodSNapFO5Zro8uory3iNlfYtnZ9ZTk="}, "v3010": {"version": "3.0.10", "hash": "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM="}, "v311": {"version": "3.1.1", "hash": "sha256-s6phM0IzuFK2PdsEjfGBF3wsZZ651DdgCBGPnAjQdnQ="}, "v309": {"version": "3.0.9", "hash": "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA="}, "v310": {"version": "3.1.0", "hash": "sha256-qqklrZgodFxMrZ2e/rJz3sqCDyzc8sOsfXwSErfEl7Q="}, "v308": {"version": "3.0.8", "hash": "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4="}, "v307": {"version": "3.0.7", "hash": "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4="}} \ No newline at end of file +{ + "v331": { + "version": "3.3.1", + "hash": "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34=" + }, + "v322": { + "version": "3.2.2", + "hash": "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc=" + }, + "v316": { + "version": "3.1.6", + "hash": "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc=" + }, + "v3014": { + "version": "3.0.14", + "hash": "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o=" + }, + "v330": { + "version": "3.3.0", + "hash": "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI=" + }, + "v321": { + "version": "3.2.1", + "hash": "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk=" + }, + "v315": { + "version": "3.1.5", + "hash": "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI=" + }, + "v3013": { + "version": "3.0.13", + "hash": "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM=" + }, + "v320": { + "version": "3.2.0", + "hash": "sha256-FMgm8Hx+QzcG+1xp+p4l2rlWhIRLTJYqLPG/GD60aQ4=" + }, + "v314": { + "version": "3.1.4", + "hash": "sha256-hAr1Nmq5tSK95SWCa+PvD7Cvgcap69hMqmAP6hcx7uM=" + }, + "v3012": { + "version": "3.0.12", + "hash": "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E=" + }, + "v313": { + "version": "3.1.3", + "hash": "sha256-8DFqLr2J5/I1KXZEVFhon4AwIJN4jEZmkvsqGIsurPY=" + }, + "v3011": { + "version": "3.0.11", + "hash": "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U=" + }, + "v312": { + "version": "3.1.2", + "hash": "sha256-oM5puLl+pqNblodSNapFO5Zro8uory3iNlfYtnZ9ZTk=" + }, + "v3010": { + "version": "3.0.10", + "hash": "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM=" + }, + "v311": { + "version": "3.1.1", + "hash": "sha256-s6phM0IzuFK2PdsEjfGBF3wsZZ651DdgCBGPnAjQdnQ=" + }, + "v309": { + "version": "3.0.9", + "hash": "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA=" + }, + "v310": { + "version": "3.1.0", + "hash": "sha256-qqklrZgodFxMrZ2e/rJz3sqCDyzc8sOsfXwSErfEl7Q=" + }, + "v308": { + "version": "3.0.8", + "hash": "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4=" + }, + "v307": { + "version": "3.0.7", + "hash": "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4=" + } +} -- cgit v1.3.1 From fb5961f70d34b325f7c2cb8735e68aa7c77ba8f6 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 17:47:22 +0200 Subject: Only Botan 2 is currently tested --- nix/botan_pkg_versions.json | 35 ----------------------------- testing_building_all_shims.py | 51 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 35 deletions(-) create mode 100644 testing_building_all_shims.py diff --git a/nix/botan_pkg_versions.json b/nix/botan_pkg_versions.json index c9e3612..81bc0aa 100644 --- a/nix/botan_pkg_versions.json +++ b/nix/botan_pkg_versions.json @@ -158,40 +158,5 @@ "version": "2.9.0", "source_extension": "tgz", "hash": "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk=" - }, - "v300": { - "version": "3.0.0", - "source_extension": "tar.xz", - "hash": "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc=" - }, - "v310": { - "version": "3.1.0", - "source_extension": "tar.xz", - "hash": "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4=" - }, - "v311": { - "version": "3.1.1", - "source_extension": "tar.xz", - "hash": "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms=" - }, - "v320": { - "version": "3.2.0", - "source_extension": "tar.xz", - "hash": "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM=" - }, - "v330": { - "version": "3.3.0", - "source_extension": "tar.xz", - "hash": "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk=" - }, - "v340": { - "version": "3.4.0", - "source_extension": "tar.xz", - "hash": "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc=" - }, - "v350": { - "version": "3.5.0", - "source_extension": "tar.xz", - "hash": "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8=" } } diff --git a/testing_building_all_shims.py b/testing_building_all_shims.py new file mode 100644 index 0000000..675d8a9 --- /dev/null +++ b/testing_building_all_shims.py @@ -0,0 +1,51 @@ +#!/usr/bin/env python + +import argparse +import json + +import subprocess as sp + +def get_all_versions(library): + with open(f"./nix/{library}_pkgs_versions.json", "r") as handle: + versions = json.load(handle) + + return versions + +def can_build(library, version): + try: + sp.check_output(["nix", "build", f"'.#shim.{library}.{version}'"]) + except sp.CalledProcessError as e: + return False + return True + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("-l", "--library") + library = args.library + + libraries = [ + "botan", + "cryptopp", + "openssl", + "boringssl", + "gcrypt", + "mbedtls", + "ippcp", + "nettle", + "libressl", + ] + + match library: + case None: + for lib in libraries: + print(lib) + for version in get_all_versions(lib): + print(f"{version}: {can_build(lib, version)}") + case _: + print(lib) + for version in get_all_versions(lib): + print(f"{version}: {can_build(lib, version)}") + + +if __name__ == '__main__': + main() -- cgit v1.3.1 From a1902a04fbf7eefd2ee07f43333f398c2066d045 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 8 Aug 2024 17:48:26 +0200 Subject: Add script for testing building all shims --- flake.nix | 18 +++++++++++++++ test_building_all_shims.py | 53 +++++++++++++++++++++++++++++++++++++++++++ testing_building_all_shims.py | 51 ----------------------------------------- 3 files changed, 71 insertions(+), 51 deletions(-) create mode 100644 test_building_all_shims.py delete mode 100644 testing_building_all_shims.py diff --git a/flake.nix b/flake.nix index e7f9eae..08fa7cc 100644 --- a/flake.nix +++ b/flake.nix @@ -653,7 +653,25 @@ installPhase = '' install -Dm755 $src $out/bin/$pname ''; + }; + buildShims = + with pkgs.python3Packages; + buildPythonApplication { + pname = "buildShims"; + version = "0.1.0"; + format = "other"; + + propagatedBuildInputs = [ + ipython + pudb + ]; + + src = ./testing_building_all_shims.py; + dontUnpack = true; + installPhase = '' + install -Dm755 $src $out/bin/$pname + ''; }; }; diff --git a/test_building_all_shims.py b/test_building_all_shims.py new file mode 100644 index 0000000..677961f --- /dev/null +++ b/test_building_all_shims.py @@ -0,0 +1,53 @@ +#!/usr/bin/env python + +import argparse +import json + +import subprocess as sp + +def get_all_versions(library): + with open(f"./nix/{library}_pkg_versions.json", "r") as handle: + versions = json.load(handle) + + return versions + +def can_build(library, version): + cmd = ["nix", "build", f".#shim.{library}.{version}"] + try: + sp.check_output(cmd, stderr=sp.DEVNULL) + except sp.CalledProcessError as e: + return False + return True + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("-l", "--library") + args = parser.parse_args() + library = args.library + + libraries = [ + "botan", + "cryptopp", + "openssl", + "boringssl", + "gcrypt", + "mbedtls", + "ippcp", + "nettle", + "libressl", + ] + + match library: + case None: + for lib in libraries: + print(f"Library: {lib}") + for version in get_all_versions(lib): + print(f"{version}: {can_build(lib, version)}") + case _: + print(f"Library: {lib}") + for version in get_all_versions(library): + print(f"{version}: {can_build(library, version)}") + + +if __name__ == '__main__': + main() diff --git a/testing_building_all_shims.py b/testing_building_all_shims.py deleted file mode 100644 index 675d8a9..0000000 --- a/testing_building_all_shims.py +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/env python - -import argparse -import json - -import subprocess as sp - -def get_all_versions(library): - with open(f"./nix/{library}_pkgs_versions.json", "r") as handle: - versions = json.load(handle) - - return versions - -def can_build(library, version): - try: - sp.check_output(["nix", "build", f"'.#shim.{library}.{version}'"]) - except sp.CalledProcessError as e: - return False - return True - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument("-l", "--library") - library = args.library - - libraries = [ - "botan", - "cryptopp", - "openssl", - "boringssl", - "gcrypt", - "mbedtls", - "ippcp", - "nettle", - "libressl", - ] - - match library: - case None: - for lib in libraries: - print(lib) - for version in get_all_versions(lib): - print(f"{version}: {can_build(lib, version)}") - case _: - print(lib) - for version in get_all_versions(lib): - print(f"{version}: {can_build(lib, version)}") - - -if __name__ == '__main__': - main() -- cgit v1.3.1 From 4e7c10677ba557e9105ef5a8613ea01b9c568c82 Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 9 Aug 2024 09:56:44 +0200 Subject: Call the correct script name --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 08fa7cc..1d58b93 100644 --- a/flake.nix +++ b/flake.nix @@ -667,7 +667,7 @@ pudb ]; - src = ./testing_building_all_shims.py; + src = ./test_building_all_shims.py; dontUnpack = true; installPhase = '' install -Dm755 $src $out/bin/$pname -- cgit v1.3.1 From 91b425798be6cbc918a9b892d7e76eababc08d6b Mon Sep 17 00:00:00 2001 From: quapka Date: Fri, 9 Aug 2024 16:22:00 +0200 Subject: Show how long it takes to (re)build a shim --- test_building_all_shims.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/test_building_all_shims.py b/test_building_all_shims.py index 677961f..5f59f8f 100644 --- a/test_building_all_shims.py +++ b/test_building_all_shims.py @@ -2,6 +2,7 @@ import argparse import json +import time import subprocess as sp @@ -13,11 +14,12 @@ def get_all_versions(library): def can_build(library, version): cmd = ["nix", "build", f".#shim.{library}.{version}"] + start = time.time() try: sp.check_output(cmd, stderr=sp.DEVNULL) except sp.CalledProcessError as e: - return False - return True + return False, time.time() - start + return True, time.time() - start def main(): parser = argparse.ArgumentParser() -- cgit v1.3.1 From 7f21a126fa55ad69e6768458abdb36e1a6f361e5 Mon Sep 17 00:00:00 2001 From: J08nY Date: Fri, 9 Aug 2024 20:35:49 +0200 Subject: Log error in test shim build. --- test_building_all_shims.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/test_building_all_shims.py b/test_building_all_shims.py index 5f59f8f..259a6a1 100644 --- a/test_building_all_shims.py +++ b/test_building_all_shims.py @@ -16,8 +16,9 @@ def can_build(library, version): cmd = ["nix", "build", f".#shim.{library}.{version}"] start = time.time() try: - sp.check_output(cmd, stderr=sp.DEVNULL) + sp.check_output(cmd, stderr=sp.STDOUT) except sp.CalledProcessError as e: + print(e.output.decode()) return False, time.time() - start return True, time.time() - start @@ -46,7 +47,7 @@ def main(): for version in get_all_versions(lib): print(f"{version}: {can_build(lib, version)}") case _: - print(f"Library: {lib}") + print(f"Library: {library}") for version in get_all_versions(library): print(f"{version}: {can_build(library, version)}") -- cgit v1.3.1 From 646607bb3cd1a2c80748ff081493defdff125b4d Mon Sep 17 00:00:00 2001 From: Jan Kvapil Date: Sat, 10 Aug 2024 17:59:15 +0200 Subject: Build prng and preload as part of common libs --- nix/commonlibs.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nix/commonlibs.nix b/nix/commonlibs.nix index dde4cca..22ce2f4 100644 --- a/nix/commonlibs.nix +++ b/nix/commonlibs.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { dontUseCmakeConfigure = true; - libs = "lib_cppsignals.so lib_csignals.so lib_timing.so"; + libs = "lib_cppsignals.so lib_csignals.so lib_timing.so lib_preload.so lib_prng.so"; buildPhase = '' make ${libs} -- cgit v1.3.1 From 4b396817faa5ee2d284245afc3836e8b5d794e2e Mon Sep 17 00:00:00 2001 From: Jan Kvapil Date: Sun, 11 Aug 2024 18:01:18 +0200 Subject: Build library shims only when selected --- flake.nix | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/flake.nix b/flake.nix index 1d58b93..9fb814a 100644 --- a/flake.nix +++ b/flake.nix @@ -502,20 +502,27 @@ jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; - preConfigure = '' - cp ${tomcryptShim.out}/lib/tomcrypt_provider.so ${jniLibsPath} - cp ${botanShim.out}/lib/botan_provider.so ${jniLibsPath} - cp ${cryptoppShim.out}/lib/cryptopp_provider.so ${jniLibsPath} - cp ${opensslShim.out}/lib/openssl_provider.so ${jniLibsPath} - cp ${boringsslShim.out}/lib/boringssl_provider.so ${jniLibsPath} - cp ${gcryptShim.out}/lib/gcrypt_provider.so ${jniLibsPath} - cp ${mbedtlsShim.out}/lib/mbedtls_provider.so ${jniLibsPath} - cp ${ippcpShim.out}/lib/ippcp_provider.so ${jniLibsPath} - cp ${nettleShim.out}/lib/nettle_provider.so ${jniLibsPath} - cp ${libresslShim.out}/lib/libressl_provider.so ${jniLibsPath} + # shims = [ "tomcrypt" "botan" "cryptopp" "openssl" "boringssl" "gcrypt" "mbedtls" "ippcp" "nettle" "libressl" ]; + # copyLib = libName: + # ( if ${libName}.version != null then "cp ${libName}Shim.out/lib/libressl_provider.so ${jniLibsPath}" else "" ) + + # FIXME add conditionally libs using map? + preConfigure = pkgs.lib.concatLines [ + ( if tomcrypt.version != null then "cp ${tomcryptShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if botan.version != null then "cp ${botanShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if cryptopp.version != null then "cp ${cryptoppShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if openssl.version != null then "cp ${opensslShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if boringssl.rev != null then "cp ${boringsslShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if gcrypt.version != null then "cp ${gcryptShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if mbedtls.version != null then "cp ${mbedtlsShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if ippcp.version != null then "cp ${ippcpShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if nettle.version != null then "cp ${nettleShim.out}/lib/* ${jniLibsPath}" else "" ) + ( if libressl.version != null then "cp ${libresslShim.out}/lib/* ${jniLibsPath}" else "" ) + '' cp ${wolfcryptjni}/lib/* ${jniLibsPath} cp ${commonLibs}/lib/* ${jniLibsPath} - ''; + '' + ]; nativeBuildInputs = [ makeWrapper ]; -- cgit v1.3.1 From efe198a8cc55c1e0a63463e9a2c7e6fa55ab455a Mon Sep 17 00:00:00 2001 From: Jan Kvapil Date: Sun, 11 Aug 2024 18:18:13 +0200 Subject: Show the correct version when building for all shims except TomCrypt (for now) --- flake.nix | 345 ++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 189 insertions(+), 156 deletions(-) diff --git a/flake.nix b/flake.nix index 9fb814a..dc5aa9b 100644 --- a/flake.nix +++ b/flake.nix @@ -30,9 +30,13 @@ # Altered upstream packages boringsslBuilder = - { rev, hash }: + { + rev ? null, + hash ? null, + }: pkgs.boringssl.overrideAttrs ( final: prev: rec { + version = if rev != null then rev else prev.version; src = if rev == null then prev.src @@ -52,94 +56,105 @@ version ? null, hash ? null, }: - (pkgs.openssl.override { static = true; }).overrideAttrs ( - final: prev: rec { - pname = "openssl"; - src = - if version != null then - pkgs.fetchurl { - url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - hash = hash; - } - else - prev.src; - # FIXME Removing patches might cause unwanted things; this should be version based! - patches = [ ]; - } - ); + if version == null then + (pkgs.openssl.override { static = true; }) + else + (pkgs.openssl.override { static = true; }).overrideAttrs ( + final: prev: rec { + inherit version; + src = pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + inherit hash; + }; + # FIXME Removing patches might cause unwanted things; this should be version based! + patches = [ ]; + } + ); botan2Builder = { - version, - source_extension, - hash, + version ? null, + source_extension ? null, + hash ? null, }: - pkgs.botan2.overrideAttrs ( - final: prev: { - src = - if (version == null) then - prev.src - else - pkgs.fetchurl { - urls = [ "http://botan.randombit.net/releases/Botan-${version}.${source_extension}" ]; - inherit hash; - }; - } - ); + if version == null then + pkgs.botan2 + else + pkgs.botan2.overrideAttrs ( + final: prev: { + inherit version; + src = pkgs.fetchurl { + urls = [ "http://botan.randombit.net/releases/Botan-${version}.${source_extension}" ]; + inherit hash; + }; + } + ); + # FIXME we need to build also the correct version of libgpg-error - which is what? libgcryptBuilder = - { version, hash }: - pkgs.libgcrypt.overrideAttrs ( - final: prev: { - configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; - src = - if version == null then - prev.src - else - pkgs.fetchurl { - url = "mirror://gnupg/libgcrypt/${prev.pname}-${version}.tar.bz2"; - inherit hash; - }; - } - ); + { + version ? null, + hash ? null, + }: + if version == null then + pkgs.libgcrypt.overrideAttrs ( + final: prev: { configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; } + ) + else + pkgs.libgcrypt.overrideAttrs ( + final: prev: { + inherit version; + configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; + src = pkgs.fetchurl { + url = "mirror://gnupg/libgcrypt/${prev.pname}-${version}.tar.bz2"; + inherit hash; + }; + } + ); libgpg-error = pkgs.libgpg-error.overrideAttrs ( final: prev: { configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; } ); mbedtlsBuilder = - { version, hash }: - pkgs.mbedtls.overrideAttrs ( - final: prev: { - src = - if version == null then - prev.src - else - pkgs.fetchFromGitHub { - owner = "Mbed-TLS"; - repo = "mbedtls"; - rev = "mbedtls-${version}"; - inherit hash; - # mbedtls >= 3.6.0 uses git submodules - fetchSubmodules = true; - }; - } - ); + { + version ? null, + hash ? null, + }: + if version == null then + pkgs.mbedtls + else + pkgs.mbedtls.overrideAttrs ( + final: prev: { + inherit version; + src = pkgs.fetchFromGitHub { + owner = "Mbed-TLS"; + repo = "mbedtls"; + rev = "mbedtls-${version}"; + inherit hash; + # mbedtls >= 3.6.0 uses git submodules + fetchSubmodules = true; + }; + } + ); ipp-cryptoBuilder = - { version, hash }: - customPkgs.ipp-crypto.overrideAttrs ( - final: prev: { - src = - if version == null then - prev.src - else - pkgs.fetchFromGitHub { - owner = "intel"; - repo = "ipp-crypto"; - rev = "ippcp_${version}"; - inherit hash; - }; - } - ); + { + version ? null, + hash ? null, + }: + if version == null then + customPkgs.ipp-crypto + else + customPkgs.ipp-crypto.overrideAttrs ( + final: prev: { + inherit version; + src = pkgs.fetchFromGitHub { + owner = "intel"; + repo = "ipp-crypto"; + rev = "ippcp_${version}"; + inherit hash; + }; + } + ); libtomcryptBuilder = { @@ -239,52 +254,51 @@ ); nettleBuilder = { - version, - tag, - hash, + version ? null, + tag ? null, + hash ? null, }: - pkgs.nettle.overrideAttrs ( - final: prev: { - configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; - src = - if version == null then - prev.src - else - pkgs.fetchurl { - url = "mirror://gnu/nettle/nettle-${version}.tar.gz"; - inherit hash; - }; - } - ); + if version == null then + pkgs.nettle.overrideAttrs ( + final: prev: { configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; } + ) + else + pkgs.nettle.overrideAttrs ( + final: prev: { + inherit version; + configureFlags = (prev.configureFlags or [ ]) ++ [ "--enable-static" ]; + src = pkgs.fetchurl { + url = "mirror://gnu/nettle/nettle-${version}.tar.gz"; + inherit hash; + }; + } + ); cryptoppBuilder = - { version, hash }: - (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs ( - final: prev: { - src = - if version == null then - prev.src - else - pkgs.fetchFromGitHub { - owner = "weidai11"; - repo = "cryptopp"; - rev = "CRYPTOPP_${version}"; - inherit hash; - }; - } - ); + { + version ? null, + hash ? null, + }: + if version == null then + (pkgs.cryptopp.override { enableStatic = true; }) + else + (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs ( + final: prev: { + version = pkgs.strings.replaceStrings [ "_" ] [ "." ] version; + src = pkgs.fetchFromGitHub { + owner = "weidai11"; + repo = "cryptopp"; + rev = "CRYPTOPP_${version}"; + inherit hash; + }; + } + ); libresslBuilder = - { version, hash }: - (pkgs.libressl.override { buildShared = false; }).overrideAttrs ( - final: prev: rec { - - src = - if version == null then - prev.src - else - pkgs.fetchurl { - url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; - inherit hash; - }; + { + version ? null, + hash ? null, + }: + if version == null then + (pkgs.libressl.override { buildShared = false; }).overrideAttrs ({ patches = if version == "3.8.2" then [ @@ -296,23 +310,42 @@ ] else [ ]; + }) + else + (pkgs.libressl.override { buildShared = false; }).overrideAttrs ( + final: prev: rec { + src = pkgs.fetchurl { + url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; + inherit hash; + }; + patches = + if version == "3.8.2" then + [ + (pkgs.fetchpatch { + url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; + includes = [ "tests/tlstest.sh" ]; + hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; + }) + ] + else + [ ]; - # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. - # This is not needed for building the individual shims through Nix, as libresslShim build env does not - # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple - # lib shims are built alongside each other. - postFixup = pkgs.lib.concatLines [ - (prev.postFixup or "") - '' - cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc - sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc - ln -s $out/lib/libcrypto.so $out/lib/libresslcrypto.so - ln -s $out/lib/libcrypto.a $out/lib/libresslcrypto.a - '' - ]; + # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. + # This is not needed for building the individual shims through Nix, as libresslShim build env does not + # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple + # lib shims are built alongside each other. + postFixup = pkgs.lib.concatLines [ + (prev.postFixup or "") + '' + cp $dev/lib/pkgconfig/libcrypto.pc $dev/lib/pkgconfig/libresslcrypto.pc + sed --in-place --expression 's/-lcrypto/-lresslcrypto/' $dev/lib/pkgconfig/libresslcrypto.pc + ln -s $out/lib/libcrypto.so $out/lib/libresslcrypto.so + ln -s $out/lib/libcrypto.a $out/lib/libresslcrypto.a + '' + ]; - } - ); + } + ); gmp = pkgs.gmp.override { withStatic = true; }; # Custom added packages @@ -502,27 +535,27 @@ jniLibsPath = "standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/"; - # shims = [ "tomcrypt" "botan" "cryptopp" "openssl" "boringssl" "gcrypt" "mbedtls" "ippcp" "nettle" "libressl" ]; - # copyLib = libName: - # ( if ${libName}.version != null then "cp ${libName}Shim.out/lib/libressl_provider.so ${jniLibsPath}" else "" ) - - # FIXME add conditionally libs using map? - preConfigure = pkgs.lib.concatLines [ - ( if tomcrypt.version != null then "cp ${tomcryptShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if botan.version != null then "cp ${botanShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if cryptopp.version != null then "cp ${cryptoppShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if openssl.version != null then "cp ${opensslShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if boringssl.rev != null then "cp ${boringsslShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if gcrypt.version != null then "cp ${gcryptShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if mbedtls.version != null then "cp ${mbedtlsShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if ippcp.version != null then "cp ${ippcpShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if nettle.version != null then "cp ${nettleShim.out}/lib/* ${jniLibsPath}" else "" ) - ( if libressl.version != null then "cp ${libresslShim.out}/lib/* ${jniLibsPath}" else "" ) - '' - cp ${wolfcryptjni}/lib/* ${jniLibsPath} - cp ${commonLibs}/lib/* ${jniLibsPath} - '' - ]; + # shims = [ "tomcrypt" "botan" "cryptopp" "openssl" "boringssl" "gcrypt" "mbedtls" "ippcp" "nettle" "libressl" ]; + # copyLib = libName: + # ( if ${libName}.version != null then "cp ${libName}Shim.out/lib/libressl_provider.so ${jniLibsPath}" else "" ) + + # FIXME add conditionally libs using map? + preConfigure = pkgs.lib.concatLines [ + (if tomcrypt.version != null then "cp ${tomcryptShim.out}/lib/* ${jniLibsPath}" else "") + (if botan.version != null then "cp ${botanShim.out}/lib/* ${jniLibsPath}" else "") + (if cryptopp.version != null then "cp ${cryptoppShim.out}/lib/* ${jniLibsPath}" else "") + (if openssl.version != null then "cp ${opensslShim.out}/lib/* ${jniLibsPath}" else "") + (if boringssl.rev != null then "cp ${boringsslShim.out}/lib/* ${jniLibsPath}" else "") + (if gcrypt.version != null then "cp ${gcryptShim.out}/lib/* ${jniLibsPath}" else "") + (if mbedtls.version != null then "cp ${mbedtlsShim.out}/lib/* ${jniLibsPath}" else "") + (if ippcp.version != null then "cp ${ippcpShim.out}/lib/* ${jniLibsPath}" else "") + (if nettle.version != null then "cp ${nettleShim.out}/lib/* ${jniLibsPath}" else "") + (if libressl.version != null then "cp ${libresslShim.out}/lib/* ${jniLibsPath}" else "") + '' + cp ${wolfcryptjni}/lib/* ${jniLibsPath} + cp ${commonLibs}/lib/* ${jniLibsPath} + '' + ]; nativeBuildInputs = [ makeWrapper ]; -- cgit v1.3.1 From e7eba2da0535e60b948b80eb69574d604800af48 Mon Sep 17 00:00:00 2001 From: Jan Kvapil Date: Mon, 12 Aug 2024 10:16:43 +0200 Subject: Allow building target libs separately --- flake.nix | 44 ++++++++++++++++++++++++++++++++++++++++++++ test_building_all_shims.py | 19 +++++++++++++++---- 2 files changed, 59 insertions(+), 4 deletions(-) diff --git a/flake.nix b/flake.nix index dc5aa9b..e9594cf 100644 --- a/flake.nix +++ b/flake.nix @@ -252,6 +252,7 @@ ]; } ); + # NOTE: should gmp library be also dependent? nettleBuilder = { version ? null, @@ -675,6 +676,49 @@ }; }; + lib = { + tomcrypt = loadVersionsForShim { + libName = "tomcrypt"; + function = libtomcryptBuilder; + }; + botan = loadVersionsForShim { + libName = "botan"; + function = botan2Builder; + }; + cryptopp = loadVersionsForShim { + libName = "cryptopp"; + function = cryptoppBuilder; + }; + openssl = loadVersionsForShim { + libName = "openssl"; + function = opensslBuilder; + }; + boringssl = loadVersionsForShim { + libName = "boringssl"; + function = boringsslBuilder; + }; + gcrypt = loadVersionsForShim { + libName = "gcrypt"; + function = libgcryptBuilder; + }; + mbedtls = loadVersionsForShim { + libName = "mbedtls"; + function = mbedtlsBuilder; + }; + ippcp = loadVersionsForShim { + libName = "ippcp"; + function = ipp-cryptoBuilder; + }; + nettle = loadVersionsForShim { + libName = "nettle"; + function = nettleBuilder; + }; + libressl = loadVersionsForShim { + libName = "libressl"; + function = libresslBuilder; + }; + }; + fetchReleases = with pkgs.python3Packages; buildPythonApplication { diff --git a/test_building_all_shims.py b/test_building_all_shims.py index 259a6a1..bf2c509 100644 --- a/test_building_all_shims.py +++ b/test_building_all_shims.py @@ -12,8 +12,8 @@ def get_all_versions(library): return versions -def can_build(library, version): - cmd = ["nix", "build", f".#shim.{library}.{version}"] +def can_build(library, version, variant): + cmd = ["nix", "build", f".#{variant}.{library}.{version}"] start = time.time() try: sp.check_output(cmd, stderr=sp.STDOUT) @@ -22,11 +22,22 @@ def can_build(library, version): return False, time.time() - start return True, time.time() - start +def valid_build_type(value): + value = value.strip() + valid_types = ["shim", "lib"] + if value not in valid_types: + raise argparse.ArgumentTypeError(f"'{value}' not from expected {', '.join(valid_types)})") + return value + + def main(): parser = argparse.ArgumentParser() parser.add_argument("-l", "--library") + parser.add_argument("-d", "--variant", default="shim", type=valid_build_type) args = parser.parse_args() library = args.library + variant = args.variant + libraries = [ "botan", @@ -45,11 +56,11 @@ def main(): for lib in libraries: print(f"Library: {lib}") for version in get_all_versions(lib): - print(f"{version}: {can_build(lib, version)}") + print(f"{version}: {can_build(lib, version, variant)}") case _: print(f"Library: {library}") for version in get_all_versions(library): - print(f"{version}: {can_build(library, version)}") + print(f"{version}: {can_build(library, version, variant)}") if __name__ == '__main__': -- cgit v1.3.1 From b83164b1402e96d5b20d36b5941b79f5636dba71 Mon Sep 17 00:00:00 2001 From: Jan Kvapil Date: Mon, 12 Aug 2024 10:22:14 +0200 Subject: Build shims and libs with a single script --- flake.nix | 6 ++--- test_building_all.py | 67 ++++++++++++++++++++++++++++++++++++++++++++++ test_building_all_shims.py | 67 ---------------------------------------------- 3 files changed, 70 insertions(+), 70 deletions(-) create mode 100644 test_building_all.py delete mode 100644 test_building_all_shims.py diff --git a/flake.nix b/flake.nix index e9594cf..5d3608b 100644 --- a/flake.nix +++ b/flake.nix @@ -739,10 +739,10 @@ ''; }; - buildShims = + buildAll = with pkgs.python3Packages; buildPythonApplication { - pname = "buildShims"; + pname = "buildAll"; version = "0.1.0"; format = "other"; @@ -751,7 +751,7 @@ pudb ]; - src = ./test_building_all_shims.py; + src = ./test_building_all.py; dontUnpack = true; installPhase = '' install -Dm755 $src $out/bin/$pname diff --git a/test_building_all.py b/test_building_all.py new file mode 100644 index 0000000..bf2c509 --- /dev/null +++ b/test_building_all.py @@ -0,0 +1,67 @@ +#!/usr/bin/env python + +import argparse +import json +import time + +import subprocess as sp + +def get_all_versions(library): + with open(f"./nix/{library}_pkg_versions.json", "r") as handle: + versions = json.load(handle) + + return versions + +def can_build(library, version, variant): + cmd = ["nix", "build", f".#{variant}.{library}.{version}"] + start = time.time() + try: + sp.check_output(cmd, stderr=sp.STDOUT) + except sp.CalledProcessError as e: + print(e.output.decode()) + return False, time.time() - start + return True, time.time() - start + +def valid_build_type(value): + value = value.strip() + valid_types = ["shim", "lib"] + if value not in valid_types: + raise argparse.ArgumentTypeError(f"'{value}' not from expected {', '.join(valid_types)})") + return value + + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("-l", "--library") + parser.add_argument("-d", "--variant", default="shim", type=valid_build_type) + args = parser.parse_args() + library = args.library + variant = args.variant + + + libraries = [ + "botan", + "cryptopp", + "openssl", + "boringssl", + "gcrypt", + "mbedtls", + "ippcp", + "nettle", + "libressl", + ] + + match library: + case None: + for lib in libraries: + print(f"Library: {lib}") + for version in get_all_versions(lib): + print(f"{version}: {can_build(lib, version, variant)}") + case _: + print(f"Library: {library}") + for version in get_all_versions(library): + print(f"{version}: {can_build(library, version, variant)}") + + +if __name__ == '__main__': + main() diff --git a/test_building_all_shims.py b/test_building_all_shims.py deleted file mode 100644 index bf2c509..0000000 --- a/test_building_all_shims.py +++ /dev/null @@ -1,67 +0,0 @@ -#!/usr/bin/env python - -import argparse -import json -import time - -import subprocess as sp - -def get_all_versions(library): - with open(f"./nix/{library}_pkg_versions.json", "r") as handle: - versions = json.load(handle) - - return versions - -def can_build(library, version, variant): - cmd = ["nix", "build", f".#{variant}.{library}.{version}"] - start = time.time() - try: - sp.check_output(cmd, stderr=sp.STDOUT) - except sp.CalledProcessError as e: - print(e.output.decode()) - return False, time.time() - start - return True, time.time() - start - -def valid_build_type(value): - value = value.strip() - valid_types = ["shim", "lib"] - if value not in valid_types: - raise argparse.ArgumentTypeError(f"'{value}' not from expected {', '.join(valid_types)})") - return value - - -def main(): - parser = argparse.ArgumentParser() - parser.add_argument("-l", "--library") - parser.add_argument("-d", "--variant", default="shim", type=valid_build_type) - args = parser.parse_args() - library = args.library - variant = args.variant - - - libraries = [ - "botan", - "cryptopp", - "openssl", - "boringssl", - "gcrypt", - "mbedtls", - "ippcp", - "nettle", - "libressl", - ] - - match library: - case None: - for lib in libraries: - print(f"Library: {lib}") - for version in get_all_versions(lib): - print(f"{version}: {can_build(lib, version, variant)}") - case _: - print(f"Library: {library}") - for version in get_all_versions(library): - print(f"{version}: {can_build(library, version, variant)}") - - -if __name__ == '__main__': - main() -- cgit v1.3.1 From 23e27b1e8ab5769ac1578c2670b132a26b58fd7e Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 12 Aug 2024 14:50:48 +0200 Subject: Save results of building all libs and shim to simplify debugging --- .gitignore | 1 + test_building_all.py | 51 ++++++++++++++++++++++++++++++++++++++++++--------- 2 files changed, 43 insertions(+), 9 deletions(-) diff --git a/.gitignore b/.gitignore index aa7fbd3..f8aa5f8 100644 --- a/.gitignore +++ b/.gitignore @@ -46,3 +46,4 @@ # Ignore Gradle build output directory build +build_all diff --git a/test_building_all.py b/test_building_all.py index bf2c509..6303ef9 100644 --- a/test_building_all.py +++ b/test_building_all.py @@ -4,6 +4,8 @@ import argparse import json import time +from pathlib import Path + import subprocess as sp def get_all_versions(library): @@ -12,15 +14,24 @@ def get_all_versions(library): return versions -def can_build(library, version, variant): +def attempt_build(library, version, variant): cmd = ["nix", "build", f".#{variant}.{library}.{version}"] start = time.time() + + result = {} try: sp.check_output(cmd, stderr=sp.STDOUT) + success = True + stderr = "" except sp.CalledProcessError as e: - print(e.output.decode()) - return False, time.time() - start - return True, time.time() - start + stderr = e.output.decode() + success = False + + result['build_time'] = time.time() - start + result['success'] = success + result['stderr'] = stderr.split('\n') if stderr else [] + + return result def valid_build_type(value): value = value.strip() @@ -29,16 +40,30 @@ def valid_build_type(value): raise argparse.ArgumentTypeError(f"'{value}' not from expected {', '.join(valid_types)})") return value +def save_build_result(library, variant, version, result): + resdir = Path(f"build_all/{variant}") + resdir.mkdir(parents=True, exist_ok=True) + try: + # Update previous results + with open(resdir / f"{library}.json", "r") as handle: + prev_results = json.load(handle) + # NOTE this is not ideal as the JSON decoding problem can be other than just an empty file + except (FileNotFoundError, json.JSONDecodeError): + prev_results = {} + + prev_results[version] = result + with open(resdir / f"{library}.json", "w") as handle: + json.dump(prev_results, handle, indent=4) + def main(): parser = argparse.ArgumentParser() parser.add_argument("-l", "--library") - parser.add_argument("-d", "--variant", default="shim", type=valid_build_type) + parser.add_argument("-v", "--variant", default="shim", type=valid_build_type) args = parser.parse_args() library = args.library variant = args.variant - libraries = [ "botan", "cryptopp", @@ -53,14 +78,22 @@ def main(): match library: case None: + print("Building all libraries") + # Build all libraries by default for lib in libraries: print(f"Library: {lib}") for version in get_all_versions(lib): - print(f"{version}: {can_build(lib, version, variant)}") - case _: + result = attempt_build(lib, version, variant) + save_build_result(lib, variant, version, result) + print(f"{version}: {result['success']}") + case lib if lib in libraries: print(f"Library: {library}") for version in get_all_versions(library): - print(f"{version}: {can_build(library, version, variant)}") + result = attempt_build(lib, version, variant) + save_build_result(lib, variant, version, result) + print(f"{version}: {result['success']}") + case _: + print(f"Unrecognized library '{library}'. Try one of: {', '.join(libraries)}.") if __name__ == '__main__': -- cgit v1.3.1 From 0c40cf3be9f67f4077c0ac0d991bac0f22bf2b90 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 15:27:36 +0200 Subject: Fix Botan 2.0.0 and 2.0.1 build. --- flake.nix | 9 +++++++++ nix/botan-2.0.0-2.0.1.patch | 12 ++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 nix/botan-2.0.0-2.0.1.patch diff --git a/flake.nix b/flake.nix index 5d3608b..2ca2e29 100644 --- a/flake.nix +++ b/flake.nix @@ -86,6 +86,15 @@ urls = [ "http://botan.randombit.net/releases/Botan-${version}.${source_extension}" ]; inherit hash; }; + patches = + if pkgs.lib.hasPrefix "2.0" version then + (prev.patches or [ ]) + ++ [ + # Fix missing include https://github.com/randombit/botan/issues/903 + ./nix/botan-2.0.0-2.0.1.patch + ] + else + [ ]; } ); diff --git a/nix/botan-2.0.0-2.0.1.patch b/nix/botan-2.0.0-2.0.1.patch new file mode 100644 index 0000000..3a19870 --- /dev/null +++ b/nix/botan-2.0.0-2.0.1.patch @@ -0,0 +1,12 @@ +diff --git a/src/lib/filters/threaded_fork.cpp b/src/lib/filters/threaded_fork.cpp +index 170264353e..d379eacda2 100644 +--- a/src/lib/filters/threaded_fork.cpp ++++ b/src/lib/filters/threaded_fork.cpp +@@ -12,6 +12,7 @@ + + #include + #include ++#include + + namespace Botan { + -- cgit v1.3.1 From 317c8f52c03525c7224b075ecf43104935f7819b Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 12 Aug 2024 15:27:23 +0200 Subject: Fix typo --- test_building_all.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test_building_all.py b/test_building_all.py index 6303ef9..782f8b2 100644 --- a/test_building_all.py +++ b/test_building_all.py @@ -37,7 +37,7 @@ def valid_build_type(value): value = value.strip() valid_types = ["shim", "lib"] if value not in valid_types: - raise argparse.ArgumentTypeError(f"'{value}' not from expected {', '.join(valid_types)})") + raise argparse.ArgumentTypeError(f"'{value}' not from expected {', '.join(valid_types)}.") return value def save_build_result(library, variant, version, result): -- cgit v1.3.1 From 8e9466cad1983323ec0b7eb1224c3f9cbb0cebe4 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 12 Aug 2024 15:28:23 +0200 Subject: Fix creating cryptopp dotted version --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 2ca2e29..00501a3 100644 --- a/flake.nix +++ b/flake.nix @@ -293,7 +293,7 @@ else (pkgs.cryptopp.override { enableStatic = true; }).overrideAttrs ( final: prev: { - version = pkgs.strings.replaceStrings [ "_" ] [ "." ] version; + version = pkgs.lib.strings.replaceStrings [ "_" ] [ "." ] version; src = pkgs.fetchFromGitHub { owner = "weidai11"; repo = "cryptopp"; -- cgit v1.3.1 From 042413d5b3aa26f369acf82458bd75c97664c824 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 17:10:32 +0200 Subject: Fix Botan builds. --- flake.nix | 18 ++++++++++-------- nix/botan-fe25519-stdexcept.patch | 13 +++++++++++++ nix/botan-types-stdexcept.patch | 12 ++++++++++++ 3 files changed, 35 insertions(+), 8 deletions(-) create mode 100644 nix/botan-fe25519-stdexcept.patch create mode 100644 nix/botan-types-stdexcept.patch diff --git a/flake.nix b/flake.nix index 00501a3..a243613 100644 --- a/flake.nix +++ b/flake.nix @@ -87,14 +87,16 @@ inherit hash; }; patches = - if pkgs.lib.hasPrefix "2.0" version then - (prev.patches or [ ]) - ++ [ - # Fix missing include https://github.com/randombit/botan/issues/903 - ./nix/botan-2.0.0-2.0.1.patch - ] - else - [ ]; + { "2.0.0" = ./nix/botan-2.0.0-2.0.1.patch; + "2.0.1" = ./nix/botan-2.0.0-2.0.1.patch; + "2.2.0" = [./nix/botan-fe25519-stdexcept.patch ]; + "2.3.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; + "2.4.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; + "2.5.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; + "2.6.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; + "2.7.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; + "2.8.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch];}."${version}" or (prev.patches or [ ]); + patchFlags = ["-p1" "-r-"]; } ); diff --git a/nix/botan-fe25519-stdexcept.patch b/nix/botan-fe25519-stdexcept.patch new file mode 100644 index 0000000..f85ff4d --- /dev/null +++ b/nix/botan-fe25519-stdexcept.patch @@ -0,0 +1,13 @@ +diff --git a/src/lib/pubkey/ed25519/ed25519_fe.h b/src/lib/pubkey/ed25519/ed25519_fe.h +--- a/src/lib/pubkey/ed25519/ed25519_fe.h ++++ b/src/lib/pubkey/ed25519/ed25519_fe.h +@@ -11,8 +11,9 @@ + #ifndef BOTAN_ED25519_FE_H__ + #define BOTAN_ED25519_FE_H__ + + #include ++#include + + namespace Botan { + + /** diff --git a/nix/botan-types-stdexcept.patch b/nix/botan-types-stdexcept.patch new file mode 100644 index 0000000..d5a0984 --- /dev/null +++ b/nix/botan-types-stdexcept.patch @@ -0,0 +1,12 @@ +diff --git a/src/lib/utils/types.h b/src/lib/utils/types.h +--- a/src/lib/utils/types.h ++++ b/src/lib/utils/types.h +@@ -15,6 +15,8 @@ + #include // IWYU pragma: export + #include // IWYU pragma: export + #include // IWYU pragma: export ++#include ++#include + + namespace Botan { + -- cgit v1.3.1 From 7971f11044722f2731581ff9f94f3f9f71061728 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 17:56:06 +0200 Subject: Add Nix build in CI. --- .github/workflows/nix.yml | 52 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 .github/workflows/nix.yml diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml new file mode 100644 index 0000000..7514057 --- /dev/null +++ b/.github/workflows/nix.yml @@ -0,0 +1,52 @@ +name: Nix + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + standalone: + runs-on: ubuntu-latest + permissions: + contents: read + + strategy: + matrix: + library: [ "botan", "cryptopp", "openssl", "boringssl", "gcrypt", "mbedtls", "ippcp", "nettle", "libressl" ] + name: Build standalone ${{ matrix.library }} + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + fetch-tags: true + fetch-depth: -1 + + - name: Setup libraries + run: | + sudo apt update + sudo apt install + + - uses: DeterminateSystems/nix-installer-action@v13 + with: + diagnostic-endpoint: "" + + - uses: DeterminateSystems/magic-nix-cache-action@v7 + with: + diagnostic-endpoint: "" + + - name: Build library + run: | + nix build ".#lib.${{ matrix.library }}.default" + + - name: Build shim + run: | + nix build ".#shim.${{ matrix.library }}.default" + + - name: Build standalone + run: | + nix build ".?submodules=1#${{ matrix.library }}.default" + + - name: List library + run: nix run ".?submodules=1#${{ matrix.library }}.default" -- list-libs -- cgit v1.3.1 From 86528d63ad31c1845cd37855ec799682ea2598f9 Mon Sep 17 00:00:00 2001 From: quapka Date: Mon, 12 Aug 2024 18:28:41 +0200 Subject: Add default targets for all lib and shim builds --- flake.nix | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/flake.nix b/flake.nix index a243613..371fa92 100644 --- a/flake.nix +++ b/flake.nix @@ -591,18 +591,29 @@ ); loadVersions = { libName, function }: - pkgs.lib.mapAttrs (rev: specs: function { ${libName} = specs; }) ( - builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json) - ); + let + versions = builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json); + firstVersion = builtins.elemAt (pkgs.lib.attrsets.attrValues versions) 0; + in + pkgs.lib.mapAttrs (rev: specs: function { ${libName} = specs; }) versions + // { + default = function { ${libName} = firstVersion; }; + }; + loadVersionsForShim = { libName, function }: - pkgs.lib.mapAttrs (rev: specs: function specs) ( - builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json) - ); + let + versions = builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json); + firstVersion = builtins.elemAt (pkgs.lib.attrsets.attrValues versions) 0; + in + pkgs.lib.mapAttrs (rev: specs: function specs) versions + // (with pkgs.lib; { + default = function firstVersion; + }); in { packages = rec { - default = openssl.v331; + default = openssl.default; tomcrypt = loadVersions { libName = "tomcrypt"; function = buildECTesterStandalone; -- cgit v1.3.1 From bac37f1e676d0f01bcf03679fc58365db5bf2329 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 18:21:02 +0200 Subject: Cleanup passing of CFLAGS and LFLAGS to shims. --- nix/boringsslshim.nix | 2 +- nix/ippcpshim.nix | 4 ++-- .../main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/nix/boringsslshim.nix b/nix/boringsslshim.nix index a5e7fbd..715e721 100644 --- a/nix/boringsslshim.nix +++ b/nix/boringsslshim.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation { make boringssl ''; - BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; + BORINGSSL_CFLAGS = "-I${boringssl.dev.outPath}/include"; installPhase = '' mkdir --parents $out/lib diff --git a/nix/ippcpshim.nix b/nix/ippcpshim.nix index 2b1d676..349817b 100644 --- a/nix/ippcpshim.nix +++ b/nix/ippcpshim.nix @@ -10,8 +10,8 @@ stdenv.mkDerivation rec { jdk11_headless ]; - IPP_CRYPTO_HEADER = "${ipp-crypto.dev}/include"; - IPP_CRYPTO_LIB = "${ipp-crypto}/lib/"; + IPP_CRYPTO_CFLAGS = "-I${ipp-crypto.dev}/include"; + IPP_CRYPTO_LFLAGS = "-L${ipp-crypto}/lib/"; buildPhase = '' make ippcp diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index baa8635..7c02a1f 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -117,7 +117,7 @@ boringssl_provider.so: boringssl.o c_utils.o | clibs $(CC) $(CFLAGS) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -l:lib_boringssl.a -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so boringssl.o: boringssl.c - $(CC) -I$(BORINGSSL_CFLAGS) $(CFLAGS) -c $< + $(CC) $(BORINGSSL_CFLAGS) $(CFLAGS) -c $< # libgcrypt shim @@ -178,10 +178,10 @@ mbedtls.o: mbedtls.c ippcp: ippcp_provider.so ippcp_provider.so: ippcp.o c_utils.o | clibs - $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L$(IPP_CRYPTO_LIB) -Wl,-Bstatic -l:libippcp.a -L. -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ $(IPP_CRYPTO_LFLAGS) -Wl,-Bstatic -l:libippcp.a -L. -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so ippcp.o: ippcp.c - $(CC) -I$(IPP_CRYPTO_HEADER) $(CFLAGS) -c $< + $(CC) $(IPP_CRYPTO_CFLAGS) $(CFLAGS) -c $< # Nettle shim -- cgit v1.3.1 From 77f442d88421986d1b1c979ed1bb9b2f81edd02d Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 18:39:19 +0200 Subject: Do not fail fast in Nix in CI. --- .github/workflows/nix.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/nix.yml b/.github/workflows/nix.yml index 7514057..3c79b0f 100644 --- a/.github/workflows/nix.yml +++ b/.github/workflows/nix.yml @@ -15,6 +15,7 @@ jobs: strategy: matrix: library: [ "botan", "cryptopp", "openssl", "boringssl", "gcrypt", "mbedtls", "ippcp", "nettle", "libressl" ] + fail-fast: false name: Build standalone ${{ matrix.library }} steps: - uses: actions/checkout@v4 -- cgit v1.3.1 From 71bb43641a43b5426b2969f036bb89d40413f1fb Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 19:00:31 +0200 Subject: Fix Botan include directory. --- flake.nix | 47 +++++++++++++++++++++++++++++++++++++---------- nix/botan-2.0.0.patch | 26 ++++++++++++++++++++++++++ 2 files changed, 63 insertions(+), 10 deletions(-) create mode 100644 nix/botan-2.0.0.patch diff --git a/flake.nix b/flake.nix index 371fa92..90af413 100644 --- a/flake.nix +++ b/flake.nix @@ -87,16 +87,43 @@ inherit hash; }; patches = - { "2.0.0" = ./nix/botan-2.0.0-2.0.1.patch; - "2.0.1" = ./nix/botan-2.0.0-2.0.1.patch; - "2.2.0" = [./nix/botan-fe25519-stdexcept.patch ]; - "2.3.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; - "2.4.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; - "2.5.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; - "2.6.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; - "2.7.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch]; - "2.8.0" = [./nix/botan-fe25519-stdexcept.patch ./nix/botan-types-stdexcept.patch];}."${version}" or (prev.patches or [ ]); - patchFlags = ["-p1" "-r-"]; + { + "2.0.0" = [ + ./nix/botan-2.0.0-2.0.1.patch + ./nix/botan-2.0.0.patch + ]; + "2.0.1" = ./nix/botan-2.0.0-2.0.1.patch; + "2.2.0" = [ ./nix/botan-fe25519-stdexcept.patch ]; + "2.3.0" = [ + ./nix/botan-fe25519-stdexcept.patch + ./nix/botan-types-stdexcept.patch + ]; + "2.4.0" = [ + ./nix/botan-fe25519-stdexcept.patch + ./nix/botan-types-stdexcept.patch + ]; + "2.5.0" = [ + ./nix/botan-fe25519-stdexcept.patch + ./nix/botan-types-stdexcept.patch + ]; + "2.6.0" = [ + ./nix/botan-fe25519-stdexcept.patch + ./nix/botan-types-stdexcept.patch + ]; + "2.7.0" = [ + ./nix/botan-fe25519-stdexcept.patch + ./nix/botan-types-stdexcept.patch + ]; + "2.8.0" = [ + ./nix/botan-fe25519-stdexcept.patch + ./nix/botan-types-stdexcept.patch + ]; + } + ."${version}" or (prev.patches or [ ]); + patchFlags = [ + "-p1" + "-r-" + ]; } ); diff --git a/nix/botan-2.0.0.patch b/nix/botan-2.0.0.patch new file mode 100644 index 0000000..e98612a --- /dev/null +++ b/nix/botan-2.0.0.patch @@ -0,0 +1,26 @@ +diff --git a/src/build-data/buildh.in b/src/build-data/buildh.in +index e65aa3ed3a..de2b5c8b52 100644 +--- a/src/build-data/buildh.in ++++ b/src/build-data/buildh.in +@@ -27,7 +27,7 @@ + %{unsafe_fuzzer_mode_define} + + #define BOTAN_INSTALL_PREFIX R"(%{prefix})" +-#define BOTAN_INSTALL_HEADER_DIR "%{includedir}/botan-%{version_major}.%{version_minor}" ++#define BOTAN_INSTALL_HEADER_DIR "%{includedir}/botan-%{version_major}" + #define BOTAN_INSTALL_LIB_DIR "%{libdir}" + #define BOTAN_LIB_LINK "%{link_to}" + +diff --git a/src/scripts/install.py b/src/scripts/install.py +index 0045be844d..e03e5c22c3 100755 +--- a/src/scripts/install.py ++++ b/src/scripts/install.py +@@ -130,7 +130,7 @@ class PercentSignTemplate(string.Template): + 'botan-%d.%d.%d' % (ver_major, ver_minor, ver_patch)) + target_include_dir = os.path.join(options.destdir, + options.includedir, +- 'botan-%d.%d' % (ver_major, ver_minor), ++ 'botan-%d' % (ver_major), + 'botan') + + out_dir = process_template('%{out_dir}') \ No newline at end of file -- cgit v1.3.1 From 7284b3e972d9bd329d066debbff5fd2e502a2072 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 20:08:02 +0200 Subject: Fix order of versions in lib version files. --- fetchReleases.py | 103 ++---- flake.nix | 1 + nix/boringssl_pkg_versions.json | 598 ++++++++++++++++----------------- nix/botan_pkg_versions.json | 225 +++++++------ nix/cryptopp_pkg_versions.json | 2 +- nix/gcrypt_pkg_versions.json | 2 +- nix/ippcp_pkg_versions.json | 2 +- nix/libressl_pkg_versions.json | 712 ++++++++++++++++++++-------------------- nix/mbedtls_pkg_versions.json | 114 +++---- nix/nettle_pkg_versions.json | 2 +- nix/openssl_pkg_versions.json | 74 ++--- 11 files changed, 918 insertions(+), 917 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index ec1b099..5ced814 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -14,6 +14,7 @@ import subprocess as sp from base64 import b32encode, b32decode, b64encode, b16decode from bs4 import BeautifulSoup +from packaging.version import parse as parse_version, Version env = jinja2.Environment() @@ -36,6 +37,16 @@ def get_source_hash(url, unpack=False): digest_sri = sp.check_output(["nix", "hash", "to-sri", "--type", digest_type, digest_nixbase32.decode()], stderr=sp.DEVNULL).strip().decode() return digest_sri +def serialize_versions(pkg, renders, versions): + sorted_versions = {k: {kk: vv for kk, vv in v.items() if kk != "sort"} for k, v in sorted(versions.items(), key=lambda item: item[1]["sort"], reverse=True)} + + # all_versions = all_versions_template.render(pkg_versions=renders).strip() + # with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: + # handle.write(all_versions) + + with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: + json.dump(sorted_versions, handle, indent=4) + def fetch_botan(): pkg = "botan" # NOTE: this way omits the older releases at https://botan.randombit.net/releases/old @@ -68,15 +79,10 @@ def fetch_botan(): versions[flat_version] = { "version": version, "source_extension": ext, - "hash": digest + "hash": digest, + "sort": parse_version(version) } - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_cryptopp(): pkg = "cryptopp" @@ -103,15 +109,10 @@ def fetch_cryptopp(): renders.append(rendered) versions[flat_version] = { "version": underscored_version, - "hash": digest + "hash": digest, + "sort": parse_version(underscored_version.replace("_", ".")) } - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_openssl(): pkg = "openssl" @@ -137,19 +138,13 @@ def fetch_openssl(): print(f"{dotted_version}:{digest}") versions[flat_version] = { "version": dotted_version, - "hash": digest + "hash": digest, + "sort": parse_version(dotted_version) } - rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=dotted_version).strip() renders.append(rendered) - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_tomcrypt(): @@ -187,17 +182,10 @@ def fetch_gcrypt(): renders.append(rendered) versions[flat_version] = { "version": version, - "hash": digest + "hash": digest, + "sort": parse_version(version) } - - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open("./nix/gcrypt_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) - + serialize_versions(pkg, renders, versions) def fetch_boringssl(): pkg = "boringssl" @@ -228,14 +216,9 @@ def fetch_boringssl(): versions[f"r{abbrev_commit}"] = { "rev": rev, "hash": digest, + "sort": i } - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_mbedtls(): # Mbed-TLS/mbedtls @@ -253,6 +236,7 @@ def fetch_mbedtls(): for release in resp.json(): if not release['draft'] and not release['prerelease']: version = release['tag_name'] + sort_version = version.replace("mbedtls-", "v") flat_version = version.replace('.', '') download_url = f"https://github.com/{owner}/{repo}/archive/{version}.tar.gz" digest = get_source_hash(download_url, unpack=True) @@ -263,14 +247,9 @@ def fetch_mbedtls(): versions[flat_version] = { "version": version, "hash": digest, + "sort": parse_version(sort_version) } - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_ippcp(): # https://api.github.com/repos/intel/ipp-crypto/releases @@ -298,14 +277,9 @@ def fetch_ippcp(): versions[flat_version] = { "version": version, "hash": digest, + "sort": parse_version(version.replace("u", "+u")) } - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_nettle(): # https://api.github.com/repos/intel/ipp-crypto/releases @@ -340,14 +314,9 @@ def fetch_nettle(): "version": version, "tag": tag['name'], "hash": digest, + "sort": parse_version(version) } - - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) + serialize_versions(pkg, renders, versions) def fetch_libressl(): @@ -378,14 +347,10 @@ def fetch_libressl(): versions[flat_version] = { "version": version, "hash": digest, + "sort": parse_version(version) } + serialize_versions(pkg, renders, versions) - all_versions = all_versions_template.render(pkg_versions=renders).strip() - with open(f"./nix/{pkg}_pkg_versions.nix", "w") as handle: - handle.write(all_versions) - - with open(f"./nix/{pkg}_pkg_versions.json", "w") as handle: - json.dump(versions, handle, indent=4) def main(): parser = argparse.ArgumentParser() diff --git a/flake.nix b/flake.nix index 90af413..8ebe504 100644 --- a/flake.nix +++ b/flake.nix @@ -779,6 +779,7 @@ jinja2 requests beautifulsoup4 + packaging ]; src = ./fetchReleases.py; diff --git a/nix/boringssl_pkg_versions.json b/nix/boringssl_pkg_versions.json index 4eca672..adb6afa 100644 --- a/nix/boringssl_pkg_versions.json +++ b/nix/boringssl_pkg_versions.json @@ -1,402 +1,402 @@ { - "rb7f5443c": { - "rev": "b7f5443cfc1298d77dfb9e6f2eea68035de521a4", - "hash": "sha256-ojt43tOnQRRLXZL9amoIDk1J7xncpMmiHf4qtgMQ2Po=" + "r8e6aa7f3": { + "rev": "8e6aa7f39f4357a6ad15944884f72db8d25b9dff", + "hash": "sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M=" }, - "r1b40d99d": { - "rev": "1b40d99d6a90d0039e9021adde5ad4de743cf0ad", - "hash": "sha256-2z2h71y5MyM5ExL/b8EzVVK4e88z6Q9vbui3Ju/4kpg=" + "r35a91094": { + "rev": "35a910949d684aea8b86a8c42db76c4f43e31a96", + "hash": "sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw=" }, - "r5af122c3": { - "rev": "5af122c3dfc163b5d1859f1f450756e8e320a142", - "hash": "sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk=" + "r3efe2eb9": { + "rev": "3efe2eb9e3dfb49cb110c53e3430caeae4599f52", + "hash": "sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I=" }, - "r1e8c35af": { - "rev": "1e8c35af5363c21f0f349b4e570dcccfb9ec3f74", - "hash": "sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI=" + "re7d76da9": { + "rev": "e7d76da920a1bd79b6ebc77e75b407cdf0a58962", + "hash": "sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0=" }, - "r14a2f35b": { - "rev": "14a2f35b6e06756902eaa7e188a25895721055fc", - "hash": "sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw=" + "rd34f540e": { + "rev": "d34f540e57394de22a1599c3c5d852519d388d6c", + "hash": "sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0=" }, - "re23fe9b6": { - "rev": "e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6", - "hash": "sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ=" + "r4d50a595": { + "rev": "4d50a595b49a2e7b7017060a4d402c4ee9fe28a2", + "hash": "sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA=" }, - "r7a6e828d": { - "rev": "7a6e828dc53ba9a56bd49915f2a0780d63af97d2", - "hash": "sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk=" + "r8a0da669": { + "rev": "8a0da669a08b6c6b805fd7ec9d1e67694fda3711", + "hash": "sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc=" }, - "r9cffd74f": { - "rev": "9cffd74fdb65c69506a0ce1b19420a67ad0cb19e", - "hash": "sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4=" + "r1d24e04c": { + "rev": "1d24e04c7143171ae2010c842e3e1438510fd1c0", + "hash": "sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc=" }, - "r82f9853f": { - "rev": "82f9853fc7d7360ae44f1e1357a6422c5244bbd8", - "hash": "sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY=" + "r6b36ad2b": { + "rev": "6b36ad2bd6001f17a997b7a1e0ab254b001438ef", + "hash": "sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY=" }, - "r9b3ef1b3": { - "rev": "9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3", - "hash": "sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE=" + "r03d1b7c5": { + "rev": "03d1b7c544851d9f44df1e9ff21839742e08c819", + "hash": "sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA=" }, - "r096ded9f": { - "rev": "096ded9f097b73a15956b04cd168c7cfe7e28f52", - "hash": "sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo=" + "rb6bca9c6": { + "rev": "b6bca9c6dde177f641137d2991aa677997c54c67", + "hash": "sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI=" }, - "rd274b1ba": { - "rev": "d274b1bacdca36f3941bf78e43dc38acf676a1a8", - "hash": "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk=" + "rb8912d71": { + "rev": "b8912d713cb82a748bbe63f28f28b17632c70964", + "hash": "sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc=" }, - "rb34976ca": { - "rev": "b34976cae99f8d1b864dbab31e20fc00d06acb09", - "hash": "sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo=" + "r1a9edc3e": { + "rev": "1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba", + "hash": "sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI=" }, - "r77ef86d0": { - "rev": "77ef86d0431ec3ceea503b0c59888942fd35b035", - "hash": "sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M=" + "rfc953df2": { + "rev": "fc953df2352e1c1bcb34cb5f75a0e409014c1690", + "hash": "sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU=" }, - "r8934b1ef": { - "rev": "8934b1ef0857bc08626a2206a6f5f718942c14fc", - "hash": "sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0=" + "r07f27b1d": { + "rev": "07f27b1d445a27433f2c871935da2cefcfbdb458", + "hash": "sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A=" }, - "r7c2b62e9": { - "rev": "7c2b62e93487b772990fddc1905f22d4cfaee4a4", - "hash": "sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4=" + "r3a01cba9": { + "rev": "3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee", + "hash": "sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk=" }, - "r12f0f4be": { - "rev": "12f0f4bec2a6db53a53748dd6001d1aacaae26ba", - "hash": "sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw=" + "r0355048c": { + "rev": "0355048ce0302fdeb4744dae4b8a156a38496150", + "hash": "sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY=" }, - "rca2eba6a": { - "rev": "ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa", - "hash": "sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8=" + "r7662e58e": { + "rev": "7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2", + "hash": "sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4=" }, - "rf01108e4": { - "rev": "f01108e4761e1d4189cb134322c3cb01dc71ef87", - "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" + "rc7019036": { + "rev": "c70190368c7040c37c1d655f0690bcde2b109a0d", + "hash": "sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE=" }, - "r26468aea": { - "rev": "26468aea6483135b156fb03a5693c495dbad2e0f", - "hash": "sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE=" + "rd477c0d7": { + "rev": "d477c0d7c40ddca3a64ae26fc02d2dac175836d3", + "hash": "sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag=" }, - "r7811fdc9": { - "rev": "7811fdc94b7ec146937e83f98d411157974ffa32", - "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" + "r2fb5f9cb": { + "rev": "2fb5f9cb8feec2234952f6999af941ac48555710", + "hash": "sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8=" }, - "r45db24b3": { - "rev": "45db24b36a030ec54464ea7a26c362f3c82305ee", - "hash": "sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0=" + "rba62c812": { + "rev": "ba62c812f01fb379f49f94a08a2d1282ce46e678", + "hash": "sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU=" }, - "r45b24641": { - "rev": "45b2464158379f48cec6e35a1ef503ddea1511a6", - "hash": "sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY=" + "rc798e3a5": { + "rev": "c798e3a54912a1bfbf1c846630e2bb86e9b543a7", + "hash": "sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig=" }, - "r2fcdd11f": { - "rev": "2fcdd11f6d33b667968a5bc5147e2ba83a2082b8", - "hash": "sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA=" + "r58745d61": { + "rev": "58745d61afe244a37941d391f5dec3ab08f5cf2c", + "hash": "sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ=" }, - "r6c98ebeb": { - "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", - "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" + "r29c9e64c": { + "rev": "29c9e64ce548ff8278e9d98aa53f611f115c2bed", + "hash": "sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4=" }, - "rd1e6d3b4": { - "rev": "d1e6d3b4af50c9490cc6210e2763b3c45ba14b07", - "hash": "sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo=" + "rde6ba216": { + "rev": "de6ba216656b819d4d8de7602006561f82a8c669", + "hash": "sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4=" }, - "r84dc9bb6": { - "rev": "84dc9bb624b47bda0bf802ae9e04a6eecb40865c", - "hash": "sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo=" + "r68c29a24": { + "rev": "68c29a24ee6c9c70ecce56766ca70b115aad768f", + "hash": "sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo=" }, - "r67422ed4": { - "rev": "67422ed4434116daa8898773692165ddd51a6ac2", - "hash": "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc=" + "rbfcab2aa": { + "rev": "bfcab2aa518899ce71e7ffbc23bb22c4ef51858f", + "hash": "sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY=" }, - "rc6c0b650": { - "rev": "c6c0b650091e90e6206a361c14a73223f54d42c1", - "hash": "sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg=" + "rd7278ceb": { + "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", + "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" }, - "r66d274df": { - "rev": "66d274dfbab9e4f84599f06504987c418ca087d9", - "hash": "sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0=" + "r9f7f4d03": { + "rev": "9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d", + "hash": "sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw=" }, - "re1d209d4": { - "rev": "e1d209d4432846d28c31d84f269f4edcb9a63509", - "hash": "sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg=" + "r273a920f": { + "rev": "273a920f84e8b0b258737cea0f2f24627e8c5ed9", + "hash": "sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ=" }, - "r9cac8a6b": { - "rev": "9cac8a6b38c1cbd45c77aee108411d588da006fe", - "hash": "sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs=" + "r03982b4c": { + "rev": "03982b4cfadca0e650b384c9539b2fdb5f8aa012", + "hash": "sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg=" }, - "r11acdc6a": { - "rev": "11acdc6abf13cc8139c30ac9455840a347793110", - "hash": "sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y=" + "r13aa2733": { + "rev": "13aa27338663c62600249ece54c94f180d57bbb7", + "hash": "sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds=" }, - "r962432c6": { - "rev": "962432c687f67f8df1aa6e3dd364fbc88fea4ed8", - "hash": "sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ=" + "re95b0cad": { + "rev": "e95b0cad901abd49755d2a2a2f1f6c3e87d12b94", + "hash": "sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw=" }, - "ra220a602": { - "rev": "a220a6024f66c123019b5c080f6bd8bcaf75448c", - "hash": "sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0=" + "rafd52e91": { + "rev": "afd52e91dfed27ab7193be040f067900947b14ac", + "hash": "sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo=" }, - "ra6c42d68": { - "rev": "a6c42d6810ea5317fe8ed85704c097cd8f3513ca", - "hash": "sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ=" + "re09fcf83": { + "rev": "e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e", + "hash": "sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE=" }, - "r56fb43a2": { - "rev": "56fb43a204e57af68e00f4561c108a7004381aa3", - "hash": "sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY=" + "r5326e94d": { + "rev": "5326e94dd188beba0a5e536b1d2723aee65bd85d", + "hash": "sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0=" }, - "r29223ac3": { - "rev": "29223ac349c144a4d0babc281644c0410dd1e313", - "hash": "sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ=" + "r4a7815c9": { + "rev": "4a7815c94077eebb3546fc287d1fa0e1356a2cd0", + "hash": "sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8=" }, - "re2a801f6": { - "rev": "e2a801f688dbdfac8fde90b849b1bf75f80b466c", - "hash": "sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs=" + "red3f05a6": { + "rev": "ed3f05a6794adfd39937d0027afefad8f6afcae9", + "hash": "sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc=" }, - "r39dd1e3c": { - "rev": "39dd1e3c904341ac14da80224d72a77d95501ad4", - "hash": "sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4=" + "r9540c045": { + "rev": "9540c0452343e684f94515288880b6b35655f792", + "hash": "sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk=" }, - "r1385dbd5": { - "rev": "1385dbd51dc2eeba39076687a6c9e45c7dc8965c", - "hash": "sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk=" + "r261579f0": { + "rev": "261579f08b2f8aa7959670df1e928c1c305a632c", + "hash": "sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg=" }, - "r2bc9245e": { - "rev": "2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a", - "hash": "sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM=" + "r1eda2363": { + "rev": "1eda2363f9e79aaa5febe91d31b6756ae4f24f30", + "hash": "sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g=" }, - "ra055b938": { - "rev": "a055b93845a1b2a910919e21920e4bd1ce900841", - "hash": "sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI=" + "rc8100f0f": { + "rev": "c8100f0f0d05c5185d58113e12a867ae0771a6c9", + "hash": "sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q=" }, - "rdec5989b": { - "rev": "dec5989b793c56ad4dd32173bd2d8595ca78b398", - "hash": "sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI=" + "r25cf1bb9": { + "rev": "25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016", + "hash": "sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk=" }, - "rc1d9ac02": { - "rev": "c1d9ac02514a138129872a036e3f8a1074dcb8bd", - "hash": "sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8=" + "ra11277e1": { + "rev": "a11277e187e407d0ef403b8a60d9a32eaab7d301", + "hash": "sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo=" }, - "re1a860c3": { - "rev": "e1a860c3745c77cb83228dde1b73fa62eaf43930", - "hash": "sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs=" + "re491eeb6": { + "rev": "e491eeb610fcc69b98bc6d1ba08faf78655808f6", + "hash": "sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U=" }, "rfb1c75ca": { "rev": "fb1c75caf8ba5d45a0f2c52facd36e4ad9289549", "hash": "sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI=" }, - "re491eeb6": { - "rev": "e491eeb610fcc69b98bc6d1ba08faf78655808f6", - "hash": "sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U=" - }, - "ra11277e1": { - "rev": "a11277e187e407d0ef403b8a60d9a32eaab7d301", - "hash": "sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo=" + "re1a860c3": { + "rev": "e1a860c3745c77cb83228dde1b73fa62eaf43930", + "hash": "sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs=" }, - "r25cf1bb9": { - "rev": "25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016", - "hash": "sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk=" + "rc1d9ac02": { + "rev": "c1d9ac02514a138129872a036e3f8a1074dcb8bd", + "hash": "sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8=" }, - "rc8100f0f": { - "rev": "c8100f0f0d05c5185d58113e12a867ae0771a6c9", - "hash": "sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q=" + "rdec5989b": { + "rev": "dec5989b793c56ad4dd32173bd2d8595ca78b398", + "hash": "sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI=" }, - "r1eda2363": { - "rev": "1eda2363f9e79aaa5febe91d31b6756ae4f24f30", - "hash": "sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g=" + "ra055b938": { + "rev": "a055b93845a1b2a910919e21920e4bd1ce900841", + "hash": "sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI=" }, - "r261579f0": { - "rev": "261579f08b2f8aa7959670df1e928c1c305a632c", - "hash": "sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg=" + "r2bc9245e": { + "rev": "2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a", + "hash": "sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM=" }, - "r9540c045": { - "rev": "9540c0452343e684f94515288880b6b35655f792", - "hash": "sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk=" + "r1385dbd5": { + "rev": "1385dbd51dc2eeba39076687a6c9e45c7dc8965c", + "hash": "sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk=" }, - "red3f05a6": { - "rev": "ed3f05a6794adfd39937d0027afefad8f6afcae9", - "hash": "sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc=" + "r39dd1e3c": { + "rev": "39dd1e3c904341ac14da80224d72a77d95501ad4", + "hash": "sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4=" }, - "r4a7815c9": { - "rev": "4a7815c94077eebb3546fc287d1fa0e1356a2cd0", - "hash": "sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8=" + "re2a801f6": { + "rev": "e2a801f688dbdfac8fde90b849b1bf75f80b466c", + "hash": "sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs=" }, - "r5326e94d": { - "rev": "5326e94dd188beba0a5e536b1d2723aee65bd85d", - "hash": "sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0=" + "r29223ac3": { + "rev": "29223ac349c144a4d0babc281644c0410dd1e313", + "hash": "sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ=" }, - "re09fcf83": { - "rev": "e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e", - "hash": "sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE=" + "r56fb43a2": { + "rev": "56fb43a204e57af68e00f4561c108a7004381aa3", + "hash": "sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY=" }, - "rafd52e91": { - "rev": "afd52e91dfed27ab7193be040f067900947b14ac", - "hash": "sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo=" + "ra6c42d68": { + "rev": "a6c42d6810ea5317fe8ed85704c097cd8f3513ca", + "hash": "sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ=" }, - "re95b0cad": { - "rev": "e95b0cad901abd49755d2a2a2f1f6c3e87d12b94", - "hash": "sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw=" + "ra220a602": { + "rev": "a220a6024f66c123019b5c080f6bd8bcaf75448c", + "hash": "sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0=" }, - "r13aa2733": { - "rev": "13aa27338663c62600249ece54c94f180d57bbb7", - "hash": "sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds=" + "r962432c6": { + "rev": "962432c687f67f8df1aa6e3dd364fbc88fea4ed8", + "hash": "sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ=" }, - "r03982b4c": { - "rev": "03982b4cfadca0e650b384c9539b2fdb5f8aa012", - "hash": "sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg=" + "r11acdc6a": { + "rev": "11acdc6abf13cc8139c30ac9455840a347793110", + "hash": "sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y=" }, - "r273a920f": { - "rev": "273a920f84e8b0b258737cea0f2f24627e8c5ed9", - "hash": "sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ=" + "r9cac8a6b": { + "rev": "9cac8a6b38c1cbd45c77aee108411d588da006fe", + "hash": "sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs=" }, - "r9f7f4d03": { - "rev": "9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d", - "hash": "sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw=" + "re1d209d4": { + "rev": "e1d209d4432846d28c31d84f269f4edcb9a63509", + "hash": "sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg=" }, - "rd7278ceb": { - "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", - "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" + "r66d274df": { + "rev": "66d274dfbab9e4f84599f06504987c418ca087d9", + "hash": "sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0=" }, - "rbfcab2aa": { - "rev": "bfcab2aa518899ce71e7ffbc23bb22c4ef51858f", - "hash": "sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY=" + "rc6c0b650": { + "rev": "c6c0b650091e90e6206a361c14a73223f54d42c1", + "hash": "sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg=" }, - "r68c29a24": { - "rev": "68c29a24ee6c9c70ecce56766ca70b115aad768f", - "hash": "sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo=" + "r67422ed4": { + "rev": "67422ed4434116daa8898773692165ddd51a6ac2", + "hash": "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc=" }, - "rde6ba216": { - "rev": "de6ba216656b819d4d8de7602006561f82a8c669", - "hash": "sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4=" + "r84dc9bb6": { + "rev": "84dc9bb624b47bda0bf802ae9e04a6eecb40865c", + "hash": "sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo=" }, - "r29c9e64c": { - "rev": "29c9e64ce548ff8278e9d98aa53f611f115c2bed", - "hash": "sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4=" + "rd1e6d3b4": { + "rev": "d1e6d3b4af50c9490cc6210e2763b3c45ba14b07", + "hash": "sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo=" }, - "r58745d61": { - "rev": "58745d61afe244a37941d391f5dec3ab08f5cf2c", - "hash": "sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ=" + "r6c98ebeb": { + "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", + "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" }, - "rc798e3a5": { - "rev": "c798e3a54912a1bfbf1c846630e2bb86e9b543a7", - "hash": "sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig=" + "r2fcdd11f": { + "rev": "2fcdd11f6d33b667968a5bc5147e2ba83a2082b8", + "hash": "sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA=" }, - "rba62c812": { - "rev": "ba62c812f01fb379f49f94a08a2d1282ce46e678", - "hash": "sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU=" + "r45b24641": { + "rev": "45b2464158379f48cec6e35a1ef503ddea1511a6", + "hash": "sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY=" }, - "r2fb5f9cb": { - "rev": "2fb5f9cb8feec2234952f6999af941ac48555710", - "hash": "sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8=" + "r45db24b3": { + "rev": "45db24b36a030ec54464ea7a26c362f3c82305ee", + "hash": "sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0=" }, - "rd477c0d7": { - "rev": "d477c0d7c40ddca3a64ae26fc02d2dac175836d3", - "hash": "sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag=" + "r7811fdc9": { + "rev": "7811fdc94b7ec146937e83f98d411157974ffa32", + "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" }, - "rc7019036": { - "rev": "c70190368c7040c37c1d655f0690bcde2b109a0d", - "hash": "sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE=" + "r26468aea": { + "rev": "26468aea6483135b156fb03a5693c495dbad2e0f", + "hash": "sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE=" }, - "r7662e58e": { - "rev": "7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2", - "hash": "sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4=" + "rf01108e4": { + "rev": "f01108e4761e1d4189cb134322c3cb01dc71ef87", + "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" }, - "r0355048c": { - "rev": "0355048ce0302fdeb4744dae4b8a156a38496150", - "hash": "sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY=" + "rca2eba6a": { + "rev": "ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa", + "hash": "sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8=" }, - "r3a01cba9": { - "rev": "3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee", - "hash": "sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk=" + "r12f0f4be": { + "rev": "12f0f4bec2a6db53a53748dd6001d1aacaae26ba", + "hash": "sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw=" }, - "r07f27b1d": { - "rev": "07f27b1d445a27433f2c871935da2cefcfbdb458", - "hash": "sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A=" + "r7c2b62e9": { + "rev": "7c2b62e93487b772990fddc1905f22d4cfaee4a4", + "hash": "sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4=" }, - "rfc953df2": { - "rev": "fc953df2352e1c1bcb34cb5f75a0e409014c1690", - "hash": "sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU=" + "r8934b1ef": { + "rev": "8934b1ef0857bc08626a2206a6f5f718942c14fc", + "hash": "sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0=" }, - "r1a9edc3e": { - "rev": "1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba", - "hash": "sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI=" + "r77ef86d0": { + "rev": "77ef86d0431ec3ceea503b0c59888942fd35b035", + "hash": "sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M=" }, - "rb8912d71": { - "rev": "b8912d713cb82a748bbe63f28f28b17632c70964", - "hash": "sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc=" + "rb34976ca": { + "rev": "b34976cae99f8d1b864dbab31e20fc00d06acb09", + "hash": "sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo=" }, - "rb6bca9c6": { - "rev": "b6bca9c6dde177f641137d2991aa677997c54c67", - "hash": "sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI=" + "rd274b1ba": { + "rev": "d274b1bacdca36f3941bf78e43dc38acf676a1a8", + "hash": "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk=" }, - "r03d1b7c5": { - "rev": "03d1b7c544851d9f44df1e9ff21839742e08c819", - "hash": "sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA=" + "r096ded9f": { + "rev": "096ded9f097b73a15956b04cd168c7cfe7e28f52", + "hash": "sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo=" }, - "r6b36ad2b": { - "rev": "6b36ad2bd6001f17a997b7a1e0ab254b001438ef", - "hash": "sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY=" + "r9b3ef1b3": { + "rev": "9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3", + "hash": "sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE=" }, - "r1d24e04c": { - "rev": "1d24e04c7143171ae2010c842e3e1438510fd1c0", - "hash": "sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc=" + "r82f9853f": { + "rev": "82f9853fc7d7360ae44f1e1357a6422c5244bbd8", + "hash": "sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY=" }, - "r8a0da669": { - "rev": "8a0da669a08b6c6b805fd7ec9d1e67694fda3711", - "hash": "sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc=" + "r9cffd74f": { + "rev": "9cffd74fdb65c69506a0ce1b19420a67ad0cb19e", + "hash": "sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4=" }, - "r4d50a595": { - "rev": "4d50a595b49a2e7b7017060a4d402c4ee9fe28a2", - "hash": "sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA=" + "r7a6e828d": { + "rev": "7a6e828dc53ba9a56bd49915f2a0780d63af97d2", + "hash": "sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk=" }, - "rd34f540e": { - "rev": "d34f540e57394de22a1599c3c5d852519d388d6c", - "hash": "sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0=" + "re23fe9b6": { + "rev": "e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6", + "hash": "sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ=" }, - "re7d76da9": { - "rev": "e7d76da920a1bd79b6ebc77e75b407cdf0a58962", - "hash": "sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0=" + "r14a2f35b": { + "rev": "14a2f35b6e06756902eaa7e188a25895721055fc", + "hash": "sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw=" }, - "r3efe2eb9": { - "rev": "3efe2eb9e3dfb49cb110c53e3430caeae4599f52", - "hash": "sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I=" + "r1e8c35af": { + "rev": "1e8c35af5363c21f0f349b4e570dcccfb9ec3f74", + "hash": "sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI=" }, - "r35a91094": { - "rev": "35a910949d684aea8b86a8c42db76c4f43e31a96", - "hash": "sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw=" + "r5af122c3": { + "rev": "5af122c3dfc163b5d1859f1f450756e8e320a142", + "hash": "sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk=" }, - "r8e6aa7f3": { - "rev": "8e6aa7f39f4357a6ad15944884f72db8d25b9dff", - "hash": "sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M=" + "r1b40d99d": { + "rev": "1b40d99d6a90d0039e9021adde5ad4de743cf0ad", + "hash": "sha256-2z2h71y5MyM5ExL/b8EzVVK4e88z6Q9vbui3Ju/4kpg=" + }, + "rb7f5443c": { + "rev": "b7f5443cfc1298d77dfb9e6f2eea68035de521a4", + "hash": "sha256-ojt43tOnQRRLXZL9amoIDk1J7xncpMmiHf4qtgMQ2Po=" }, - "r7c44f450": { - "rev": "7c44f450547cc777229462c2ac864a9326c0106c", - "hash": "sha256-snkPY4R9RKdCI0yUS3ICn4CHyXE9DKaYaHAggD2UAOk=" + "rcee4fe2b": { + "rev": "cee4fe2b78cfd2db8b4429b4fefd9831d3e63c04", + "hash": "sha256-4lTjjalDTNeotXLKPb+c3M+d4OFMEcd93nQwPMmxLJs=" }, - "r6ab7c148": { - "rev": "6ab7c1482bf4cdc91c87bc512aaf68ffb18975ec", - "hash": "sha256-+5ICkcKZRXCSC/y5d5Oo9WtcgdfkLZL/goGXE6V/9hE=" + "r709ba6ee": { + "rev": "709ba6eef8544cb806350a8e1ef0816aece45a10", + "hash": "sha256-7sjgHby3m6pkEXgSx5ksOv2ZDN4xe1CDtpAC2bf3kRs=" }, - "rb17231cd": { - "rev": "b17231cdb9ec4e877b470c57d3280d9195811cd9", - "hash": "sha256-5G/wh35qlfGi6vHEj51QFyIryzKeTiGthfTe7tCWK8s=" + "rfe17d192": { + "rev": "fe17d192e67b6bdc5483bf2af09311206ace2d36", + "hash": "sha256-zsr8C56+cuI3ALRzW5fy2Qc2DMHkhgscCwZO13bMqfk=" }, - "r3e89a7e8": { - "rev": "3e89a7e8db8139db356b892ca9993172346c80cf", - "hash": "sha256-VsTll0A8FfNbObOnoFLah4BMuCzlLNbqOEgSbppQo7k=" + "r369fe288": { + "rev": "369fe288e29ce8b2b39fccfc08441bdd7100a28a", + "hash": "sha256-AtSM2HkyqcEG0eaOsweqBlVFcyo+l+jVfpzdcQLmCVE=" }, - "r8de798be": { - "rev": "8de798be4b850cf88ad2c50602abe2ca3bb285df", - "hash": "sha256-pQ8BTRMOjxLu8UoyTH23wYwy2pC29yZoCyl1c+94hyM=" + "r6ee4f9de": { + "rev": "6ee4f9de0016ad83223e7b5f1f18b968e6258189", + "hash": "sha256-2M7wfnwnzLd4z0JsmDylkd11fpWRid9/QmQ9vy5oqOs=" }, - "rd2e3212d": { - "rev": "d2e3212de29bac1ceed33ca8ab8bbff3f41a2459", - "hash": "sha256-HRa+IdVwchzjJh1Unx8wmu++eiFtY7ctdmwgjJqkx9Y=" + "raaf59e8d": { + "rev": "aaf59e8d8d17308442d9211e670c7f9718362ceb", + "hash": "sha256-yZVXN5Ws4rmZu7gZffPsZ04rKwy0l8FTcm/eGU4imhg=" }, - "r783ae722": { - "rev": "783ae722ed307a3b3782cd253fd4ffb387f38767", - "hash": "sha256-bdhCbLFmXOl07F/yjeYpnoM41F7EkaWDRG45cNOSnVo=" + "r11f33412": { + "rev": "11f334121fd0d13830fefdf08041183da2d30ef3", + "hash": "sha256-mZ/MqMjDBVKzY69Fjl2KGcmK328ls+nSdjqsvuA0TSI=" } -} +} \ No newline at end of file diff --git a/nix/botan_pkg_versions.json b/nix/botan_pkg_versions.json index 81bc0aa..cd09209 100644 --- a/nix/botan_pkg_versions.json +++ b/nix/botan_pkg_versions.json @@ -1,162 +1,197 @@ { - "v200": { - "version": "2.0.0", - "source_extension": "tgz", - "hash": "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo=" + "v350": { + "version": "3.5.0", + "source_extension": "tar.xz", + "hash": "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8=" }, - "v201": { - "version": "2.0.1", - "source_extension": "tgz", - "hash": "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs=" + "v340": { + "version": "3.4.0", + "source_extension": "tar.xz", + "hash": "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc=" }, - "v210": { - "version": "2.1.0", - "source_extension": "tgz", - "hash": "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ=" + "v330": { + "version": "3.3.0", + "source_extension": "tar.xz", + "hash": "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk=" }, - "v2100": { - "version": "2.10.0", - "source_extension": "tgz", - "hash": "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE=" + "v320": { + "version": "3.2.0", + "source_extension": "tar.xz", + "hash": "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM=" }, - "v2110": { - "version": "2.11.0", + "v311": { + "version": "3.1.1", "source_extension": "tar.xz", - "hash": "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4=" + "hash": "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms=" }, - "v2120": { - "version": "2.12.0", + "v310": { + "version": "3.1.0", "source_extension": "tar.xz", - "hash": "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM=" + "hash": "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4=" }, - "v2121": { - "version": "2.12.1", + "v300": { + "version": "3.0.0", "source_extension": "tar.xz", - "hash": "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk=" + "hash": "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc=" }, - "v2130": { - "version": "2.13.0", + "v2195": { + "version": "2.19.5", "source_extension": "tar.xz", - "hash": "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA=" + "hash": "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ=" }, - "v2140": { - "version": "2.14.0", + "v2194": { + "version": "2.19.4", "source_extension": "tar.xz", - "hash": "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU=" + "hash": "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY=" }, - "v2150": { - "version": "2.15.0", + "v2193": { + "version": "2.19.3", "source_extension": "tar.xz", - "hash": "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk=" + "hash": "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU=" }, - "v2160": { - "version": "2.16.0", + "v2192": { + "version": "2.19.2", "source_extension": "tar.xz", - "hash": "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig=" + "hash": "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU=" }, - "v2170": { - "version": "2.17.0", + "v2191": { + "version": "2.19.1", "source_extension": "tar.xz", - "hash": "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M=" + "hash": "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA=" }, - "v2171": { - "version": "2.17.1", + "v2190": { + "version": "2.19.0", "source_extension": "tar.xz", - "hash": "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME=" + "hash": "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs=" }, - "v2172": { - "version": "2.17.2", + "v2182": { + "version": "2.18.2", "source_extension": "tar.xz", - "hash": "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw=" + "hash": "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4=" }, - "v2173": { - "version": "2.17.3", + "v2181": { + "version": "2.18.1", "source_extension": "tar.xz", - "hash": "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g=" + "hash": "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik=" }, "v2180": { "version": "2.18.0", "source_extension": "tar.xz", "hash": "sha256-zGSFLh4MW7MOzQUuShLVE2ElqM5cO+LvtvsGHIZ34yc=" }, - "v2181": { - "version": "2.18.1", + "v2173": { + "version": "2.17.3", "source_extension": "tar.xz", - "hash": "sha256-+Me0YiKoVxaKdUpcwym7eAUEEisnABjdpTBMmNsorik=" + "hash": "sha256-eRI7ZURFpKu6SG4JpDF4hUXHCCNzgqPnZWZMn1WwO4g=" }, - "v2182": { - "version": "2.18.2", + "v2172": { + "version": "2.17.2", "source_extension": "tar.xz", - "hash": "sha256-VBo7E/G50w+XfGwa5Me/39p2PNpuRN6Ac2nc559CMH4=" + "hash": "sha256-6+J9/itV1+Ar9SDpJmBsSLdrIvrLSDJWsTqzjgGOHmw=" }, - "v2190": { - "version": "2.19.0", + "v2171": { + "version": "2.17.1", "source_extension": "tar.xz", - "hash": "sha256-JA2eVuasuR70zwaoocbA8QHGHUDPSMzPE5+u+CHXBAs=" + "hash": "sha256-dBNYs/FjjtfZsvWbTjRKpG9JZrFZWLVDTArBWA3wwME=" }, - "v2191": { - "version": "2.19.1", + "v2170": { + "version": "2.17.0", "source_extension": "tar.xz", - "hash": "sha256-4m4Az+/aZAgq/dVA08U3kk9kXWpnSv7SzRcQBd7/VWA=" + "hash": "sha256-uXBEsxKqcYNJr3hRMxsGS8e9U1JADV+AeTus5CfQE0M=" }, - "v2192": { - "version": "2.19.2", + "v2160": { + "version": "2.16.0", "source_extension": "tar.xz", - "hash": "sha256-OvXxdhXGtc2Lgy0mn7bLTVTsZPnrCd2/Gt1Qk5QbTXU=" + "hash": "sha256-ku1uvJGNhr0bBCIcpRivTPKcwybEdgdAvS0i5hzqJig=" }, - "v2193": { - "version": "2.19.3", + "v2150": { + "version": "2.15.0", "source_extension": "tar.xz", - "hash": "sha256-2uBH85nFpH8IfbXT2dno8RrkmF0UySjXHaGv+AGALVU=" + "hash": "sha256-2IrxMH8f76x5qk8vUkaZR41pzhWoV88tCpCsa/KlAAk=" }, - "v2194": { - "version": "2.19.4", + "v2140": { + "version": "2.14.0", "source_extension": "tar.xz", - "hash": "sha256-WjqI72Qz6XvKsO+h7WDGGX5K2p2dMLwcR0N7+JuX8nY=" + "hash": "sha256-DBDxK0JKQO4ZveACkgmOIB10mFNcBi2NW1htB4YaVLU=" }, - "v2195": { - "version": "2.19.5", + "v2130": { + "version": "2.13.0", "source_extension": "tar.xz", - "hash": "sha256-3+6g4KbybWckxK8B2pp7iEh62y2Bunxy/K9S21IsmtQ=" + "hash": "sha256-9XrkKkHhCRvKWPRPQa3evZo5C2UWA5UsiB7InVAYfpA=" }, - "v220": { - "version": "2.2.0", + "v2121": { + "version": "2.12.1", + "source_extension": "tar.xz", + "hash": "sha256-fgNfFCpR/KE1lwV5JieigkVtSXSb9io3qOSDddQbqqk=" + }, + "v2120": { + "version": "2.12.0", + "source_extension": "tar.xz", + "hash": "sha256-Hq79RZ1S8n3hgFz/jGh5LgYQkZZI7pjhAZgOlO25CmM=" + }, + "v2110": { + "version": "2.11.0", + "source_extension": "tar.xz", + "hash": "sha256-94dNoq64wBj9d99AshN4eb+Qtm9ViUkMmR6D+z6AlL4=" + }, + "v2100": { + "version": "2.10.0", "source_extension": "tgz", - "hash": "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ=" + "hash": "sha256-iEgZl1eMJ5JHJP6nZhDUPZ9ZyZ7f5WHUGAO7yYhxrTE=" }, - "v230": { - "version": "2.3.0", + "v290": { + "version": "2.9.0", "source_extension": "tgz", - "hash": "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw=" + "hash": "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk=" }, - "v240": { - "version": "2.4.0", + "v280": { + "version": "2.8.0", "source_extension": "tgz", - "hash": "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU=" + "hash": "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA=" }, - "v250": { - "version": "2.5.0", + "v270": { + "version": "2.7.0", "source_extension": "tgz", - "hash": "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs=" + "hash": "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA=" }, "v260": { "version": "2.6.0", "source_extension": "tgz", "hash": "sha256-wfJhVVu6cCxzYI3ee9dD7y1jd6QaHClZFbJcW6uvXMU=" }, - "v270": { - "version": "2.7.0", + "v250": { + "version": "2.5.0", "source_extension": "tgz", - "hash": "sha256-5C35FVYxdYjGyg5Bv3lvm9XsXHDgZo5sl8YIxpfCSpA=" + "hash": "sha256-uKMf4D5/BIpb05Z+zQS2pIlmIV54eS3wbjM7Du3k+xs=" }, - "v280": { - "version": "2.8.0", + "v240": { + "version": "2.4.0", "source_extension": "tgz", - "hash": "sha256-5xWbEn6R4MFYJF1hxjjFDUQ+x7RAtrAWEyjEezq6OWA=" + "hash": "sha256-7ZRk4qXP7kzT2b16j4BnO0XIoHGNshgac/VGWmBmCKU=" }, - "v290": { - "version": "2.9.0", + "v230": { + "version": "2.3.0", "source_extension": "tgz", - "hash": "sha256-MFVkNSM03WOuY9sDkHfZauUt+lejJIhxCBcZtqny0Rk=" + "hash": "sha256-Oflw/uWYakw+QlAwrvUKwoTaGFlsAE0anM52iMTm1Hw=" + }, + "v220": { + "version": "2.2.0", + "source_extension": "tgz", + "hash": "sha256-x5TbLsRvb/iPN652gl8MJY8HiAuGW2cHsmrPzEVnuCQ=" + }, + "v210": { + "version": "2.1.0", + "source_extension": "tgz", + "hash": "sha256-Rg8tcgWu0RP4mN9JR7H2bM+NCA7sfawinvC3VMmtYpQ=" + }, + "v201": { + "version": "2.0.1", + "source_extension": "tgz", + "hash": "sha256-oTjtMW0RRQqEBUUbnJZkuOZAqbethNPzrTToBx82Tgs=" + }, + "v200": { + "version": "2.0.0", + "source_extension": "tgz", + "hash": "sha256-AxZZzKD4CGnp2XogkX7b4hZM7bwHnoxT4Oe9m+oVNxo=" } -} +} \ No newline at end of file diff --git a/nix/cryptopp_pkg_versions.json b/nix/cryptopp_pkg_versions.json index 7920f27..d6e409b 100644 --- a/nix/cryptopp_pkg_versions.json +++ b/nix/cryptopp_pkg_versions.json @@ -63,4 +63,4 @@ "version": "5_6_3", "hash": "sha256-FDskGxaeACp7x3ZbgYXDr6PpFcPO0d6SEKVsOLIXbN0=" } -} +} \ No newline at end of file diff --git a/nix/gcrypt_pkg_versions.json b/nix/gcrypt_pkg_versions.json index 711cfd2..c17dbe6 100644 --- a/nix/gcrypt_pkg_versions.json +++ b/nix/gcrypt_pkg_versions.json @@ -231,4 +231,4 @@ "version": "1.2.1", "hash": "sha256-E3hqJqQgH8CfiPqiSDDRYxnJKrKPlJIcKu8JDq8Xp7I=" } -} +} \ No newline at end of file diff --git a/nix/ippcp_pkg_versions.json b/nix/ippcp_pkg_versions.json index ff1424a..d234dbb 100644 --- a/nix/ippcp_pkg_versions.json +++ b/nix/ippcp_pkg_versions.json @@ -95,4 +95,4 @@ "version": "2019b", "hash": "sha256-5zoY/nad8tQosX8EBxrebbupkFRRbWB8vf33xNAKTH8=" } -} +} \ No newline at end of file diff --git a/nix/libressl_pkg_versions.json b/nix/libressl_pkg_versions.json index efe80ca..cf17e5e 100644 --- a/nix/libressl_pkg_versions.json +++ b/nix/libressl_pkg_versions.json @@ -1,478 +1,478 @@ { - "v200": { - "version": "2.0.0", - "hash": "sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s=" + "v392": { + "version": "3.9.2", + "hash": "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c=" }, - "v201": { - "version": "2.0.1", - "hash": "sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro=" + "v391": { + "version": "3.9.1", + "hash": "sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE=" }, - "v202": { - "version": "2.0.2", - "hash": "sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys=" + "v390": { + "version": "3.9.0", + "hash": "sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA=" }, - "v203": { - "version": "2.0.3", - "hash": "sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ=" + "v384": { + "version": "3.8.4", + "hash": "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0=" }, - "v204": { - "version": "2.0.4", - "hash": "sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw=" + "v383": { + "version": "3.8.3", + "hash": "sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI=" }, - "v205": { - "version": "2.0.5", - "hash": "sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo=" + "v382": { + "version": "3.8.2", + "hash": "sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ=" }, - "v206": { - "version": "2.0.6", - "hash": "sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y=" + "v381": { + "version": "3.8.1", + "hash": "sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I=" }, - "v210": { - "version": "2.1.0", - "hash": "sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w=" + "v380": { + "version": "3.8.0", + "hash": "sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw=" }, - "v211": { - "version": "2.1.1", - "hash": "sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc=" + "v373": { + "version": "3.7.3", + "hash": "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM=" }, - "v2110": { - "version": "2.1.10", - "hash": "sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE=" + "v372": { + "version": "3.7.2", + "hash": "sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc=" }, - "v212": { - "version": "2.1.2", - "hash": "sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I=" + "v371": { + "version": "3.7.1", + "hash": "sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0=" }, - "v213": { - "version": "2.1.3", - "hash": "sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w=" + "v370": { + "version": "3.7.0", + "hash": "sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY=" }, - "v214": { - "version": "2.1.4", - "hash": "sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4=" + "v363": { + "version": "3.6.3", + "hash": "sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc=" }, - "v215": { - "version": "2.1.5", - "hash": "sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s=" + "v362": { + "version": "3.6.2", + "hash": "sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM=" }, - "v216": { - "version": "2.1.6", - "hash": "sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g=" + "v361": { + "version": "3.6.1", + "hash": "sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q=" }, - "v217": { - "version": "2.1.7", - "hash": "sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248=" + "v360": { + "version": "3.6.0", + "hash": "sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ=" }, - "v218": { - "version": "2.1.8", - "hash": "sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM=" + "v354": { + "version": "3.5.4", + "hash": "sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w=" }, - "v219": { - "version": "2.1.9", - "hash": "sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654=" + "v353": { + "version": "3.5.3", + "hash": "sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg=" }, - "v220": { - "version": "2.2.0", - "hash": "sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA=" + "v352": { + "version": "3.5.2", + "hash": "sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8=" }, - "v221": { - "version": "2.2.1", - "hash": "sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0=" + "v351": { + "version": "3.5.1", + "hash": "sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg=" }, - "v222": { - "version": "2.2.2", - "hash": "sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ=" + "v350": { + "version": "3.5.0", + "hash": "sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c=" }, - "v223": { - "version": "2.2.3", - "hash": "sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II=" + "v343": { + "version": "3.4.3", + "hash": "sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0=" }, - "v224": { - "version": "2.2.4", - "hash": "sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4=" + "v342": { + "version": "3.4.2", + "hash": "sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84=" }, - "v225": { - "version": "2.2.5", - "hash": "sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs=" + "v341": { + "version": "3.4.1", + "hash": "sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw=" }, - "v226": { - "version": "2.2.6", - "hash": "sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8=" + "v340": { + "version": "3.4.0", + "hash": "sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI=" }, - "v227": { - "version": "2.2.7", - "hash": "sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80=" + "v336": { + "version": "3.3.6", + "hash": "sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o=" }, - "v228": { - "version": "2.2.8", - "hash": "sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws=" + "v335": { + "version": "3.3.5", + "hash": "sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU=" }, - "v229": { - "version": "2.2.9", - "hash": "sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ=" + "v334": { + "version": "3.3.4", + "hash": "sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE=" }, - "v230": { - "version": "2.3.0", - "hash": "sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA=" + "v333": { + "version": "3.3.3", + "hash": "sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY=" }, - "v231": { - "version": "2.3.1", - "hash": "sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4=" + "v332": { + "version": "3.3.2", + "hash": "sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ=" }, - "v2310": { - "version": "2.3.10", - "hash": "sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM=" + "v331": { + "version": "3.3.1", + "hash": "sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s=" }, - "v232": { - "version": "2.3.2", - "hash": "sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo=" + "v330": { + "version": "3.3.0", + "hash": "sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY=" }, - "v233": { - "version": "2.3.3", - "hash": "sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk=" + "v327": { + "version": "3.2.7", + "hash": "sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q=" }, - "v234": { - "version": "2.3.4", - "hash": "sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk=" + "v326": { + "version": "3.2.6", + "hash": "sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls=" }, - "v235": { - "version": "2.3.5", - "hash": "sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs=" + "v325": { + "version": "3.2.5", + "hash": "sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4=" }, - "v236": { - "version": "2.3.6", - "hash": "sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o=" + "v324": { + "version": "3.2.4", + "hash": "sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo=" }, - "v237": { - "version": "2.3.7", - "hash": "sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA=" + "v323": { + "version": "3.2.3", + "hash": "sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM=" }, - "v238": { - "version": "2.3.8", - "hash": "sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I=" + "v322": { + "version": "3.2.2", + "hash": "sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E=" }, - "v239": { - "version": "2.3.9", - "hash": "sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw=" + "v321": { + "version": "3.2.1", + "hash": "sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU=" }, - "v240": { - "version": "2.4.0", - "hash": "sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4=" + "v320": { + "version": "3.2.0", + "hash": "sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU=" }, - "v241": { - "version": "2.4.1", - "hash": "sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc=" + "v315": { + "version": "3.1.5", + "hash": "sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ=" }, - "v242": { - "version": "2.4.2", - "hash": "sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM=" + "v314": { + "version": "3.1.4", + "hash": "sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y=" }, - "v243": { - "version": "2.4.3", - "hash": "sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4=" + "v313": { + "version": "3.1.3", + "hash": "sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A=" }, - "v244": { - "version": "2.4.4", - "hash": "sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E=" + "v312": { + "version": "3.1.2", + "hash": "sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI=" }, - "v245": { - "version": "2.4.5", - "hash": "sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c=" + "v311": { + "version": "3.1.1", + "hash": "sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA=" }, - "v250": { - "version": "2.5.0", - "hash": "sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4=" + "v310": { + "version": "3.1.0", + "hash": "sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY=" }, - "v251": { - "version": "2.5.1", - "hash": "sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80=" + "v302": { + "version": "3.0.2", + "hash": "sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4=" }, - "v252": { - "version": "2.5.2", - "hash": "sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII=" + "v301": { + "version": "3.0.1", + "hash": "sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s=" }, - "v253": { - "version": "2.5.3", - "hash": "sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA=" + "v300": { + "version": "3.0.0", + "hash": "sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY=" }, - "v254": { - "version": "2.5.4", - "hash": "sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo=" + "v292": { + "version": "2.9.2", + "hash": "sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ=" }, - "v255": { - "version": "2.5.5", - "hash": "sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q=" + "v291": { + "version": "2.9.1", + "hash": "sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg=" }, - "v260": { - "version": "2.6.0", - "hash": "sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM=" + "v290": { + "version": "2.9.0", + "hash": "sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ=" }, - "v261": { - "version": "2.6.1", - "hash": "sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4=" + "v283": { + "version": "2.8.3", + "hash": "sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc=" }, - "v262": { - "version": "2.6.2", - "hash": "sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg=" + "v282": { + "version": "2.8.2", + "hash": "sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U=" }, - "v263": { - "version": "2.6.3", - "hash": "sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg=" + "v281": { + "version": "2.8.1", + "hash": "sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I=" }, - "v264": { - "version": "2.6.4", - "hash": "sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8=" + "v280": { + "version": "2.8.0", + "hash": "sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM=" }, - "v265": { - "version": "2.6.5", - "hash": "sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So=" + "v275": { + "version": "2.7.5", + "hash": "sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA=" }, - "v270": { - "version": "2.7.0", - "hash": "sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4=" + "v274": { + "version": "2.7.4", + "hash": "sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY=" }, - "v271": { - "version": "2.7.1", - "hash": "sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA=" + "v273": { + "version": "2.7.3", + "hash": "sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U=" }, "v272": { "version": "2.7.2", "hash": "sha256-kXqHecNCF3/zdRor+VXQJi0diRaktAiTDEXO8yZwCZU=" }, - "v273": { - "version": "2.7.3", - "hash": "sha256-FscNj+Hebpvt6g1ngEtV84lHF2k6Be1F4V4OL5OcJ5U=" - }, - "v274": { - "version": "2.7.4", - "hash": "sha256-HjqfraBsHAYAEUcK0P+WDeKPmgUVJ31zNvfgk2JRfaY=" + "v271": { + "version": "2.7.1", + "hash": "sha256-k3UH4ja6c3Csq6aJREUV1Oj0KRNvTn42IwgzktlrcHA=" }, - "v275": { - "version": "2.7.5", - "hash": "sha256-vuUDjYXvAWCkK5CWs1Fg6fee9dKb9MtbOEGceTpbwEA=" + "v270": { + "version": "2.7.0", + "hash": "sha256-UM5tb4jepzo+/KYrCp5sp1KSve5skpPv1qdxz9soze4=" }, - "v280": { - "version": "2.8.0", - "hash": "sha256-ryu6llsGBjUY7sbxktQRYx3+HQdxN2DGfDwp00h4ncM=" + "v265": { + "version": "2.6.5", + "hash": "sha256-hZ7fxxAZ0nxEj+FI5nmv3ZcqC6qRsh8CsrL1+KhN3So=" }, - "v281": { - "version": "2.8.1", - "hash": "sha256-M0v3BQ8dtAh/7rswVx7BPZ+pdb8F1gA846ttfSRSz0I=" + "v264": { + "version": "2.6.4", + "hash": "sha256-Y4ogwvnpnuKDqEHNeHq02EbRiA4YDE6WkE/DJ9QZ0R8=" }, - "v282": { - "version": "2.8.2", - "hash": "sha256-uMsx5Z8SlFV7/IDypmKWm8Bk6DAGzu8FdOJVOhwlT9U=" + "v263": { + "version": "2.6.3", + "hash": "sha256-rq1lmCYxcblpcNoNiB5hbQgTtps169xZkfh/8up/XJg=" }, - "v283": { - "version": "2.8.3", - "hash": "sha256-m2QLEwRxgnYamc4+TwAL6Wh1ZuCCi0pycJ6eaj75hHc=" + "v262": { + "version": "2.6.2", + "hash": "sha256-sCnSSStyqbpbX82fPWAsn9C6oIeRLyquzCj1L1Z+xHg=" }, - "v290": { - "version": "2.9.0", - "hash": "sha256-618phAi3I/EaDKAZLBIuy3m0hVv99+6hg6YmQpahPPQ=" + "v261": { + "version": "2.6.1", + "hash": "sha256-wpOztfH8HWNJwBnDkFNV1XffMnNLYx1+ZWUDiU4JEn4=" }, - "v291": { - "version": "2.9.1", - "hash": "sha256-OeTdhWaU3BDVZCAeRUnEbSQxYBorEPNCJQfiTMyPYvg=" + "v260": { + "version": "2.6.0", + "hash": "sha256-5I1VdHRXF5JpkADDKul9zvNCB9E+2T5BJvIT1dy+ilM=" }, - "v292": { - "version": "2.9.2", - "hash": "sha256-xMeBZ/rjJbR669i+tUtgQdb2pWs3Q/S9XXmxVkL51dQ=" + "v255": { + "version": "2.5.5", + "hash": "sha256-5X9ePVhCqB/pNRtugX/K8KdJyk7zWpFGXtup4HHc58Q=" }, - "v300": { - "version": "3.0.0", - "hash": "sha256-AdkQBFfTc5R9MWSnPMKFQ4uxL+KKsGXL4oNa1k3MPHY=" + "v254": { + "version": "2.5.4", + "hash": "sha256-EHpbUi+7gxjUw75mgHXl5gcpbwqSVdcWdMqpRXEzbvo=" }, - "v301": { - "version": "3.0.1", - "hash": "sha256-ZGrbEZf746dULxiEPStK34V7d+ULuHi1j0593ltzQ8s=" + "v253": { + "version": "2.5.3", + "hash": "sha256-FONMxYbsTOV2P3YEbc82bEUQSyzHHXe2O+VQVgjmijA=" }, - "v302": { - "version": "3.0.2", - "hash": "sha256-33sXK/eblX3SfvNtyqH7FiViwOiZnhlKqMGj3y8VOY4=" + "v252": { + "version": "2.5.2", + "hash": "sha256-D/p9cICShKSslullkYphwdeTC8qGVFen2w/wr8ggHII=" }, - "v310": { - "version": "3.1.0", - "hash": "sha256-+RqtDI+5y8Z8kQrW3P+0AagZtP0SIAfqf5eGONsETPY=" + "v251": { + "version": "2.5.1", + "hash": "sha256-9xrgqCS3j7Gkf/ojycJunZbFybKSNOrO3Oa0x3QCh80=" }, - "v311": { - "version": "3.1.1", - "hash": "sha256-vcbOXrs6Lq/ExHX37qpfCo5g2b6tAe+3bi4lQkK22wA=" + "v250": { + "version": "2.5.0", + "hash": "sha256-hlK/a1WrUfs3toaj9gSiZD4Oj94sVuapNgJ9Eq/abq4=" }, - "v312": { - "version": "3.1.2", - "hash": "sha256-+IovfqYXFJo05AwCLZkSlj8A6qYQmvQhMXUl5sl42JI=" + "v245": { + "version": "2.4.5", + "hash": "sha256-0wDE41iu6VGvbf0WhO8MA0dYtHFxVEIw88z2ziT+Q0c=" }, - "v313": { - "version": "3.1.3", - "hash": "sha256-x2sDFqz2Euy2L1ywFKINlypmO9nkCr+VKobzuZi2n6A=" + "v244": { + "version": "2.4.4", + "hash": "sha256-b8+vaTRzPqHcsvak1FnZYA4vSIeT5Rwtr0m3BRjuv9E=" }, - "v314": { - "version": "3.1.4", - "hash": "sha256-QUwUnJljmD+AWggdtb067BRrX4LVKbtjh1rJQbJdy7Y=" + "v243": { + "version": "2.4.3", + "hash": "sha256-vVcm8+JH56fTDOaZRtF0uPuS2ZnSJxDGXxdslpgSlg4=" }, - "v315": { - "version": "3.1.5", - "hash": "sha256-LBPdzsUIHA57p/k9g3CpGREXMJDxkiAH4dkN4nRQBJQ=" + "v242": { + "version": "2.4.2", + "hash": "sha256-X4fXeOXWKCLWDjj6liHBxWSPxVnRmLoxS9nYnL9n2eM=" }, - "v320": { - "version": "3.2.0", - "hash": "sha256-R70utLRQPkfALvp+Z9L82Vx+rGvJ0Gs0OhtHBXk+0dU=" + "v241": { + "version": "2.4.1", + "hash": "sha256-EhkisTFpzUeoXj538LwSn40EJHGTtCSRyx+rkHToBHc=" }, - "v321": { - "version": "3.2.1", - "hash": "sha256-0o2yJM+20YAJsqfoyyE81clDu+yHVQBi/vajhHklAxU=" + "v240": { + "version": "2.4.0", + "hash": "sha256-fmAAz7lDj7/H/n/gVyr1h+Lyo2u9uVQI6YdHWNDDOC4=" }, - "v322": { - "version": "3.2.2", - "hash": "sha256-qdHh0DC4vMZ79kKLjA//FKVgLiI2JXuePXesrxLip6E=" + "v2310": { + "version": "2.3.10", + "hash": "sha256-LQtareDF7TGjwZT61fjdcc3SGLcCBTQnOdJKYlpUxNM=" }, - "v323": { - "version": "3.2.3", - "hash": "sha256-QS3Cuqc5Iox3eek+sHzWRdXJZNLy2Dep/VbbdJhGPXM=" + "v239": { + "version": "2.3.9", + "hash": "sha256-pv8TZk6xOvbboAJZz7VaMGsyt2iP7vUgpS/A9guBlvw=" }, - "v324": { - "version": "3.2.4", - "hash": "sha256-rB27ngWmSRCFZZmxrGERj97Bs9DHAOQkRNgcDV9Qelo=" + "v238": { + "version": "2.3.8", + "hash": "sha256-rmqk7Sx9IBMQ/vGEMQqFyIoxVQb2M+k/zequwNWlT8I=" }, - "v325": { - "version": "3.2.5", - "hash": "sha256-eYpl/WHTheCdVZgQzfpGUS+N71kZJkz+8kGnsIbOfP4=" + "v237": { + "version": "2.3.7", + "hash": "sha256-9Z9dhZzkhnzEdhoT0CAk9plJHid9VKn+duBT5bX3CGA=" }, - "v326": { - "version": "3.2.6", - "hash": "sha256-sENkBSDS7sVr0WrmOc5TAX7srMPYY4i1T4OKVI3jMls=" + "v236": { + "version": "2.3.6", + "hash": "sha256-NYpHeeaBO9BvB9sM8PD+UxQB7Qxu2ViXPUBEFsPVN/o=" }, - "v327": { - "version": "3.2.7", - "hash": "sha256-fDL/A3WXzkccfP2dy4RxzaOgKYOuujMVBZNizrOTS4Q=" + "v235": { + "version": "2.3.5", + "hash": "sha256-9CUnXOfevMcoLJ3LRr1u67r0GsYBNuL9Mtj9YL6LdTs=" }, - "v330": { - "version": "3.3.0", - "hash": "sha256-cope3GPMtBjpFmvtEdS0PpYp/xxNQqObZJNHogQW+tY=" + "v234": { + "version": "2.3.4", + "hash": "sha256-ehE1smIPeJKOiVOMIRpN8dlBWZQAHR58kXjGttct5qk=" }, - "v331": { - "version": "3.3.1", - "hash": "sha256-ptMxhl4BZKE6yFoijlJRf3z4+EiPL5XzTnhXMC+Xz9s=" + "v233": { + "version": "2.3.3", + "hash": "sha256-dnMxZhh8yFh+Dr4eg5Ze8lcmKhpnajaAbt07bVG1Cqk=" }, - "v332": { - "version": "3.3.2", - "hash": "sha256-hDQKxXDz7o6RBp3DoKzXpvbur8BZTZXzrhA0xdvCFlQ=" + "v232": { + "version": "2.3.2", + "hash": "sha256-gPRfrkhZ8WGxmAythG1CF0F9DIkAatKcDqjIjaVkqWo=" }, - "v333": { - "version": "3.3.3", - "hash": "sha256-pHFWWzbM0acNC9fTfG6VxDompigptIfZ0s3r/li+MGY=" + "v231": { + "version": "2.3.1", + "hash": "sha256-QQtY2067yrQ8M1dhLlkQlPZPuTOSacqi5oco42+NWJ4=" }, - "v334": { - "version": "3.3.4", - "hash": "sha256-vM52ej/tJSv9EhD4p+NQWitU0wCPZuQ9m5Xj8wwHKTE=" + "v230": { + "version": "2.3.0", + "hash": "sha256-BFFJjZmcz/R1Im9c+uB6N1SnsoxQfGvaAH4xb8kNkqA=" }, - "v335": { - "version": "3.3.5", - "hash": "sha256-ClE5Pw3xzyfgcAVKJ4ik0HMznzY9ec1ZQHahtMSL6aU=" + "v229": { + "version": "2.2.9", + "hash": "sha256-cQ/zd+qDY3I51QEPTSYfX5HH/c6Ro4l0FJrNA+RcTEQ=" }, - "v336": { - "version": "3.3.6", - "hash": "sha256-PyiEk2XhGQ2yuvkBT/loYBLCWxym34s6CF94niT+S5o=" + "v228": { + "version": "2.2.8", + "hash": "sha256-0QUUd9vF3DbxSLU6qVnD4qCqpZROsEyJ3VSSVIJfuws=" }, - "v340": { - "version": "3.4.0", - "hash": "sha256-5S6udY1AIGpx12OhqHtxA3IjvxmGrCOaa+Gm0qw5FtI=" + "v227": { + "version": "2.2.7", + "hash": "sha256-fixos4O7qO+33OXqHsz9p3BIVH0dKnNVwHLv18zYk80=" }, - "v341": { - "version": "3.4.1", - "hash": "sha256-EHzq5sqADoHLVjWEwWr6NtbHE4+t6UorPp2mVFb3xhw=" + "v226": { + "version": "2.2.6", + "hash": "sha256-HuGZlM/9BH1A9juhSRFduhimgbDMkjvuwwG/QktY1k8=" }, - "v342": { - "version": "3.4.2", - "hash": "sha256-y4LKfVRzNpFzUvvSPbL8SDxsRNNRV7MngCFOx0GXs84=" + "v225": { + "version": "2.2.5", + "hash": "sha256-48re0EadjcZPTKL+jkma2k3QFOhNHFpxgY055U5skUs=" }, - "v343": { - "version": "3.4.3", - "hash": "sha256-/4i//jVIGLPM9UXjyv5FTFAxx6dyFwdPUzJx1jw38I0=" + "v224": { + "version": "2.2.4", + "hash": "sha256-a0CYWb6GVK/DhiVJSU4JcBfmTI0WfxJYQ4NYYwbvmn4=" }, - "v350": { - "version": "3.5.0", - "hash": "sha256-8B1PdhkVWBWKBq+9wkBf79WwJUChl6slRshA4GpcD7c=" + "v223": { + "version": "2.2.3", + "hash": "sha256-oczCGt+R1g6ZJGAxuZyTDJr14bG1phsb7Ie+728W2II=" }, - "v351": { - "version": "3.5.1", - "hash": "sha256-p9ACb2diInXsj4I53tQiplPVzMhN9V3qKs1AYBcYVgg=" + "v222": { + "version": "2.2.2", + "hash": "sha256-4JSwnzPUaFRe27KxbcF4+VjsL2beGi/HzCogvSSJoRQ=" }, - "v352": { - "version": "3.5.2", - "hash": "sha256-Vv6rjiHD+mVJ+LfXURZYuOmFGBYoOKeVMUcyZUrfPl8=" + "v221": { + "version": "2.2.1", + "hash": "sha256-TzMXUKv8O2BbAu7KHomU+g0mKZhbw/YpJDeBl/v+Vy0=" }, - "v353": { - "version": "3.5.3", - "hash": "sha256-OrXl6u9pziDGsXDuZNeFtCI19I8uYrCV/KXXtmcriyg=" + "v220": { + "version": "2.2.0", + "hash": "sha256-lpDY84pdSEJTlUUu6zBbBbsPVgzZbg7jDzcNTxZWMEA=" }, - "v354": { - "version": "3.5.4", - "hash": "sha256-A3naE0Si9xrUpOO+MO+dgu7N3Of43CrmZjGh3+FDQ6w=" + "v2110": { + "version": "2.1.10", + "hash": "sha256-im2jGORME8lhgI0WgMf/vm2v8o5uRlbAmi00D6+HnkE=" }, - "v360": { - "version": "3.6.0", - "hash": "sha256-GxLe/Lvb2+2oaSnkIQAK8PQjM63UgX/SbA2aGuxHhAQ=" + "v219": { + "version": "2.1.9", + "hash": "sha256-Ycva8umWMj5HMzRS7HHNbn8D7dToJQGo8Jy+KZk7654=" }, - "v361": { - "version": "3.6.1", - "hash": "sha256-rPrGExbpO5GcKNYtUwN8pzTehcRrTXA/Gf2Dlc8AZ3Q=" + "v218": { + "version": "2.1.8", + "hash": "sha256-c1rkgktuqgyiqfwd1HEX9wCeMQ2ee8+e22a+Rb2EDbM=" }, - "v362": { - "version": "3.6.2", - "hash": "sha256-S+gP/wc3Rs9QtKjlur4nlayumMaxMqngJRm0Rd+/0DM=" + "v217": { + "version": "2.1.7", + "hash": "sha256-HcS/wD++FHMnBCkdbZy3o8xwV1lXyVin4taGkI6c248=" }, - "v363": { - "version": "3.6.3", - "hash": "sha256-h7G7426e7I0K5fBMg9NrLFsOWBeEx+sIFwJe0p6t6jc=" + "v216": { + "version": "2.1.6", + "hash": "sha256-T4Jt2Xs7gAFwcHO96EAUk/nNRmhGW0gcBC0o45c2U6g=" }, - "v370": { - "version": "3.7.0", - "hash": "sha256-P8EpD0AH7HX26azsuyVRJjDRuauMU7p5hE45WGjD4AY=" + "v215": { + "version": "2.1.5", + "hash": "sha256-qCN5kT/X9OJuBF/PAhqpKh9oOVSBa/gXs7aW3mLpw7s=" }, - "v371": { - "version": "3.7.1", - "hash": "sha256-mAhpYaK4tlftD+owVvstsUKUtr+hk8FaUjago1yEPe0=" + "v214": { + "version": "2.1.4", + "hash": "sha256-6OCFNZKHdBGal5QS7o4wdES3oaQsjEesBu4JQjypoE4=" }, - "v372": { - "version": "3.7.2", - "hash": "sha256-sGqlOP78nGszxNtJMaCaX1LZ0jVyGa/L/32T/hLr9vc=" + "v213": { + "version": "2.1.3", + "hash": "sha256-6y83CXFAj7EK9kU+VWRlyO7nKKwzO/HrR+waURIwT3w=" }, - "v373": { - "version": "3.7.3", - "hash": "sha256-eUjIVqkMglvXJotvhWdKjc0lS65C4iF4GyTj+NwzXbM=" + "v212": { + "version": "2.1.2", + "hash": "sha256-B8BfEuXUnb/Pgt0jtrSHe3zbHI5MjdJ8tNnldYpsr1I=" }, - "v380": { - "version": "3.8.0", - "hash": "sha256-ElMcHsgIxcar6zEYmWZLDP7QTUZI9FbclZu5PF8hrKw=" + "v211": { + "version": "2.1.1", + "hash": "sha256-+1raQadbMcjdn/AT2spXslMEetFOQ/Zdi0GHm3uOPBc=" }, - "v381": { - "version": "3.8.1", - "hash": "sha256-wpvW2VInRnc8ueQSbVqaLDXqVQX2/Um2eRc/K0blc3I=" + "v210": { + "version": "2.1.0", + "hash": "sha256-oy2XthqYw180RYS5hcr0mj/D4ObiTQu7vjT+Yd0mJ6w=" }, - "v382": { - "version": "3.8.2", - "hash": "sha256-bUuNW7slofgzZjnlbsUIgFLUOpUlZpeoXEzpEyPCWVQ=" + "v206": { + "version": "2.0.6", + "hash": "sha256-dlKjYV2uCsML2KZWbyhb2u4NzLc8E9f6h2ce2PV0y2Y=" }, - "v383": { - "version": "3.8.3", - "hash": "sha256-pl9A4+9uPJRRyDGObyxFTDZ+Z/CcDN4YSXMaTW7McnI=" + "v205": { + "version": "2.0.5", + "hash": "sha256-P1Rjtd65Pv0qxOI6IGEqHM8ymaVp0DiAuyBMkGR9/Jo=" }, - "v384": { - "version": "3.8.4", - "hash": "sha256-wM75z+F0rDZs5IL1Qv3bB3Ief6DK+s40tJqHIPo3/n0=" + "v204": { + "version": "2.0.4", + "hash": "sha256-XMZ9F5AqMiu7iBEE4HyGITwBSqa1LmZRmG1Ct2/P7Tw=" }, - "v390": { - "version": "3.9.0", - "hash": "sha256-HMIyQYSY3jBebVy4DJShZBXAHcs82Y8ujDoiAgkaNCA=" + "v203": { + "version": "2.0.3", + "hash": "sha256-39U7eIA8JctQCD3R+PdzqSTcMc3Z3jlu6uQSDBSq4tQ=" }, - "v391": { - "version": "3.9.1", - "hash": "sha256-baC5VGlffuYrA/ZCAKik8Cr5Nxe2DM4Eq2yN8mLAelE=" + "v202": { + "version": "2.0.2", + "hash": "sha256-TRa2hSy9iV7VVzeBnSwEKzc3Hx2A/LpPskI566Kl1ys=" }, - "v392": { - "version": "3.9.2", - "hash": "sha256-ewMdrGSlnrbuMwT3/7ddrTOrjJ0nnIR/ksifuEYGj5c=" + "v201": { + "version": "2.0.1", + "hash": "sha256-lZb2yz6Lr+NddJ3722yYTxu9hiM1mOtf20q/hUpXkro=" + }, + "v200": { + "version": "2.0.0", + "hash": "sha256-E5rIHJR4rM04qetmdiPXWZeiGXzsNvGEzY0j6Yp+R1s=" } -} +} \ No newline at end of file diff --git a/nix/mbedtls_pkg_versions.json b/nix/mbedtls_pkg_versions.json index 9e27c76..c0e7b49 100644 --- a/nix/mbedtls_pkg_versions.json +++ b/nix/mbedtls_pkg_versions.json @@ -3,58 +3,30 @@ "version": "v3.6.0", "hash": "sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg=" }, - "v2288": { - "version": "v2.28.8", - "hash": "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o=" - }, "v352": { "version": "v3.5.2", "hash": "sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM=" }, - "v2287": { - "version": "v2.28.7", - "hash": "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw=" - }, "v351": { "version": "v3.5.1", "hash": "sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw=" }, - "v2286": { - "version": "v2.28.6", - "hash": "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8=" - }, "mbedtls-350": { "version": "mbedtls-3.5.0", "hash": "sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU=" }, - "mbedtls-2285": { - "version": "mbedtls-2.28.5", - "hash": "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o=" - }, "v341": { "version": "v3.4.1", "hash": "sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts=" }, - "v2284": { - "version": "v2.28.4", - "hash": "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE=" - }, "v340": { "version": "v3.4.0", "hash": "sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg=" }, - "v2283": { - "version": "v2.28.3", - "hash": "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw=" - }, "v330": { "version": "v3.3.0", "hash": "sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE=" }, - "v2282": { - "version": "v2.28.2", - "hash": "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ=" - }, "v321": { "version": "v3.2.1", "hash": "sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc=" @@ -63,60 +35,88 @@ "version": "v3.2.0", "hash": "sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ=" }, - "v2281": { - "version": "v2.28.1", - "hash": "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw=" - }, "v310": { "version": "v3.1.0", "hash": "sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs=" }, - "v2280": { - "version": "v2.28.0", - "hash": "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g=" - }, - "v21612": { - "version": "v2.16.12", - "hash": "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q=" - }, "v300": { "version": "v3.0.0", "hash": "sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s=" }, + "v2288": { + "version": "v2.28.8", + "hash": "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o=" + }, + "v2287": { + "version": "v2.28.7", + "hash": "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw=" + }, + "v2286": { + "version": "v2.28.6", + "hash": "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8=" + }, + "mbedtls-2285": { + "version": "mbedtls-2.28.5", + "hash": "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o=" + }, + "v2284": { + "version": "v2.28.4", + "hash": "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE=" + }, + "v2283": { + "version": "v2.28.3", + "hash": "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw=" + }, + "v2282": { + "version": "v2.28.2", + "hash": "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ=" + }, + "v2281": { + "version": "v2.28.1", + "hash": "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw=" + }, + "v2280": { + "version": "v2.28.0", + "hash": "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g=" + }, "v2270": { "version": "v2.27.0", "hash": "sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M=" }, - "v21611": { - "version": "v2.16.11", - "hash": "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg=" - }, "v2260": { "version": "v2.26.0", "hash": "sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk=" }, - "v21610": { - "version": "v2.16.10", - "hash": "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4=" - }, - "v2719": { - "version": "v2.7.19", - "hash": "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY=" - }, "v2250": { "version": "v2.25.0", "hash": "sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ=" }, + "v2240": { + "version": "v2.24.0", + "hash": "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM=" + }, + "v21612": { + "version": "v2.16.12", + "hash": "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q=" + }, + "v21611": { + "version": "v2.16.11", + "hash": "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg=" + }, + "v21610": { + "version": "v2.16.10", + "hash": "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4=" + }, "v2169": { "version": "v2.16.9", "hash": "sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c=" }, + "v2719": { + "version": "v2.7.19", + "hash": "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY=" + }, "v2718": { "version": "v2.7.18", "hash": "sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg=" - }, - "v2240": { - "version": "v2.24.0", - "hash": "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM=" } -} +} \ No newline at end of file diff --git a/nix/nettle_pkg_versions.json b/nix/nettle_pkg_versions.json index de955da..dd9eccc 100644 --- a/nix/nettle_pkg_versions.json +++ b/nix/nettle_pkg_versions.json @@ -89,4 +89,4 @@ "tag": "nettle_2.7_release_20130424", "hash": "sha256-wpTqEzwFOCzC7/sXNNSfSr6xrYUVVDozPeSaEUIs1NY=" } -} +} \ No newline at end of file diff --git a/nix/openssl_pkg_versions.json b/nix/openssl_pkg_versions.json index e04efd5..d66cff4 100644 --- a/nix/openssl_pkg_versions.json +++ b/nix/openssl_pkg_versions.json @@ -3,74 +3,74 @@ "version": "3.3.1", "hash": "sha256-d3zVlihMiDN1oqehG/XSeG/FQTJV76sgxQ1v/m0CC34=" }, - "v322": { - "version": "3.2.2", - "hash": "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc=" - }, - "v316": { - "version": "3.1.6", - "hash": "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc=" - }, - "v3014": { - "version": "3.0.14", - "hash": "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o=" - }, "v330": { "version": "3.3.0", "hash": "sha256-U+ZrBDMipgar8Ah+dpmg4DOjf6E/65dC3zXDozsY+wI=" }, + "v322": { + "version": "3.2.2", + "hash": "sha256-GXFJwY2enyksQ/BACsq6EuX1LKz+BQ89GZJ36nOOwuc=" + }, "v321": { "version": "3.2.1", "hash": "sha256-g8cyn+UshQZ3115dCwyiRTCbl+jsvP3B39xKufrDWzk=" }, - "v315": { - "version": "3.1.5", - "hash": "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI=" - }, - "v3013": { - "version": "3.0.13", - "hash": "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM=" - }, "v320": { "version": "3.2.0", "hash": "sha256-FMgm8Hx+QzcG+1xp+p4l2rlWhIRLTJYqLPG/GD60aQ4=" }, + "v316": { + "version": "3.1.6", + "hash": "sha256-XSvkA2tHjvPLCoVMqbNTByw6DibYpW+PCrn7btMtONc=" + }, + "v315": { + "version": "3.1.5", + "hash": "sha256-auAVRn2r8EabE5rakzGTJ74kuYJR/67O2gIhhI3AkmI=" + }, "v314": { "version": "3.1.4", "hash": "sha256-hAr1Nmq5tSK95SWCa+PvD7Cvgcap69hMqmAP6hcx7uM=" }, - "v3012": { - "version": "3.0.12", - "hash": "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E=" - }, "v313": { "version": "3.1.3", "hash": "sha256-8DFqLr2J5/I1KXZEVFhon4AwIJN4jEZmkvsqGIsurPY=" }, - "v3011": { - "version": "3.0.11", - "hash": "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U=" - }, "v312": { "version": "3.1.2", "hash": "sha256-oM5puLl+pqNblodSNapFO5Zro8uory3iNlfYtnZ9ZTk=" }, - "v3010": { - "version": "3.0.10", - "hash": "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM=" - }, "v311": { "version": "3.1.1", "hash": "sha256-s6phM0IzuFK2PdsEjfGBF3wsZZ651DdgCBGPnAjQdnQ=" }, - "v309": { - "version": "3.0.9", - "hash": "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA=" - }, "v310": { "version": "3.1.0", "hash": "sha256-qqklrZgodFxMrZ2e/rJz3sqCDyzc8sOsfXwSErfEl7Q=" }, + "v3014": { + "version": "3.0.14", + "hash": "sha256-7soDXU3U6E/CWEbZUtpil0hK+gZQpvhMaC453zpBI8o=" + }, + "v3013": { + "version": "3.0.13", + "hash": "sha256-iFJXU/edO+wn0vp8ZqoLkrOqlJja/ZPXz6SzeAza4xM=" + }, + "v3012": { + "version": "3.0.12", + "hash": "sha256-+Tyejt3l6RZhGd4xdV/Ie0qjSGNmL2fd/LoU0La2m2E=" + }, + "v3011": { + "version": "3.0.11", + "hash": "sha256-s0JdO7SiIY0Gl+tB9/wM3t4BbtGcpJ0Wi3jo2UeIf1U=" + }, + "v3010": { + "version": "3.0.10", + "hash": "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM=" + }, + "v309": { + "version": "3.0.9", + "hash": "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA=" + }, "v308": { "version": "3.0.8", "hash": "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4=" @@ -79,4 +79,4 @@ "version": "3.0.7", "hash": "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4=" } -} +} \ No newline at end of file -- cgit v1.3.1 From 2b8744a7f5259c175e07c8acaf5c7b07cb02d5e1 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 20:17:22 +0200 Subject: Add version define to shim build. --- nix/boringsslshim.nix | 2 +- nix/botanshim.nix | 2 ++ nix/cryptoppshim.nix | 2 ++ nix/gcryptshim.nix | 2 ++ nix/ippcpshim.nix | 2 +- nix/libresslshim.nix | 2 ++ nix/mbedtlsshim.nix | 2 ++ nix/nettleshim.nix | 2 ++ nix/opensslshim.nix | 2 ++ .../cz/crcs/ectester/standalone/libs/jni/Makefile | 14 +++++++------- 10 files changed, 23 insertions(+), 9 deletions(-) diff --git a/nix/boringsslshim.nix b/nix/boringsslshim.nix index 715e721..a32a5bc 100644 --- a/nix/boringsslshim.nix +++ b/nix/boringsslshim.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation { make boringssl ''; - BORINGSSL_CFLAGS = "-I${boringssl.dev.outPath}/include"; + BORINGSSL_CFLAGS = "-I${boringssl.dev.outPath}/include -DECTESTER_BORINGSSL_${boringssl.version}=1"; installPhase = '' mkdir --parents $out/lib diff --git a/nix/botanshim.nix b/nix/botanshim.nix index 8688b20..ce16b1b 100644 --- a/nix/botanshim.nix +++ b/nix/botanshim.nix @@ -19,6 +19,8 @@ stdenv.mkDerivation { make botan ''; + BOTAN_CXXFLAGS = "-DECTESTER_BOTAN_${builtins.replaceStrings ["."] ["_"] botan2.version}=1"; + installPhase = '' mkdir --parents $out/lib cp botan_provider.so $out/lib/ diff --git a/nix/cryptoppshim.nix b/nix/cryptoppshim.nix index 8c735d7..f526275 100644 --- a/nix/cryptoppshim.nix +++ b/nix/cryptoppshim.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation { make cryptopp ''; + CRYPTOPP_CXXFLAGS = "-DECTESTER_CRYPTOPP_${cryptopp.version}=1"; + installPhase = '' mkdir --parents $out/lib cp cryptopp_provider.so $out/lib/ diff --git a/nix/gcryptshim.nix b/nix/gcryptshim.nix index 764b03c..869bcd9 100644 --- a/nix/gcryptshim.nix +++ b/nix/gcryptshim.nix @@ -19,6 +19,8 @@ stdenv.mkDerivation { make gcrypt ''; + LIBGCRYPT_CFLAGS = "-DECTESTER_LIBGCRYPT_${builtins.replaceStrings ["."] ["_"] libgcrypt.version}=1"; + installPhase = '' mkdir --parents $out/lib cp gcrypt_provider.so $out/lib/ diff --git a/nix/ippcpshim.nix b/nix/ippcpshim.nix index 349817b..a059d5b 100644 --- a/nix/ippcpshim.nix +++ b/nix/ippcpshim.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { jdk11_headless ]; - IPP_CRYPTO_CFLAGS = "-I${ipp-crypto.dev}/include"; + IPP_CRYPTO_CFLAGS = "-I${ipp-crypto.dev}/include -DECTESTER_IPPCP_VERSION=${ipp-crypto.version}"; IPP_CRYPTO_LFLAGS = "-L${ipp-crypto}/lib/"; buildPhase = '' diff --git a/nix/libresslshim.nix b/nix/libresslshim.nix index 9d23f4b..862701f 100644 --- a/nix/libresslshim.nix +++ b/nix/libresslshim.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation rec { make libressl ''; + LIBRESSL_CFLAGS = "-DECTESTER_LIBRESSL_${builtins.replaceStrings ["."] ["_"] libressl.version}=1"; + installPhase = '' mkdir --parents $out/lib cp libressl_provider.so $out/lib diff --git a/nix/mbedtlsshim.nix b/nix/mbedtlsshim.nix index d1f5434..06abb0b 100644 --- a/nix/mbedtlsshim.nix +++ b/nix/mbedtlsshim.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation rec { make mbedtls ''; + MBEDTLS_CFLAGS = "-DECTESTER_MBEDTLS_${builtins.replaceStrings ["."] ["_"] mbedtls.version}=1"; + installPhase = '' mkdir --parents $out/lib cp mbedtls_provider.so $out/lib diff --git a/nix/nettleshim.nix b/nix/nettleshim.nix index f968357..7488398 100644 --- a/nix/nettleshim.nix +++ b/nix/nettleshim.nix @@ -19,6 +19,8 @@ stdenv.mkDerivation rec { make nettle ''; + NETTLE_CFLAGS = "-DECTESTER_NETTLE_${builtins.replaceStrings ["."] ["_"] nettle.version}=1"; + installPhase = '' mkdir --parents $out/lib cp nettle_provider.so $out/lib diff --git a/nix/opensslshim.nix b/nix/opensslshim.nix index 1c79e94..be0263b 100644 --- a/nix/opensslshim.nix +++ b/nix/opensslshim.nix @@ -14,6 +14,8 @@ stdenv.mkDerivation { make openssl ''; + OPENSSL_CFLAGS = "-DECTESTER_OPENSSL_${builtins.replaceStrings ["."] ["_"] openssl.version}=1"; + installPhase = '' mkdir --parents $out/lib cp openssl_provider.so $out/lib/ diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 7c02a1f..74d1a93 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -107,7 +107,7 @@ openssl_provider.so: openssl.o c_utils.o | clibs $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -Wl,-Bstatic $(shell pkg-config --libs libcrypto) -lcrypto -L. -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so openssl.o: openssl.c - $(CC) $(shell pkg-config --cflags openssl) $(CFLAGS) -c $< + $(CC) $(shell pkg-config --cflags openssl) $(OPENSSL_CFLAGS) $(CFLAGS) -c $< # BoringSSL shim @@ -127,7 +127,7 @@ gcrypt_provider.so: gcrypt.o c_utils.o | clibs $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -pthread -lpthread -Wl,-Bstatic $(shell libgcrypt-config --libs) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so gcrypt.o: gcrypt.c - $(CC) $(shell libgcrypt-config --cflags) $(CFLAGS) -c $< + $(CC) $(shell libgcrypt-config --cflags) $(LIBGCRYPT_CFLAGS) $(CFLAGS) -c $< # Libtomcrypt shim @@ -147,7 +147,7 @@ botan_provider.so: botan.o cpp_utils.o | cpplibs $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs botan-2) -Wl,-Bdynamic -l:lib_timing.so -l:lib_cppsignals.so botan.o: botan.cpp - $(CXX) $(shell pkg-config --cflags botan-2) $(CXXFLAGS) -c $< + $(CXX) $(shell pkg-config --cflags botan-2) $(BOTAN_CXXFLAGS) $(CXXFLAGS) -c $< # Crypto++ shim @@ -161,7 +161,7 @@ cryptopp_provider.so: cryptopp.o cpp_utils.o | cpplibs $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs $(CRYPTOPP_NAME)) -Wl,-Bdynamic -l:lib_timing.so -l:lib_cppsignals.so cryptopp.o: cryptopp.cpp - $(CXX) $(shell pkg-config --cflags $(CRYPTOPP_NAME)) $(CXXFLAGS) -c $< + $(CXX) $(shell pkg-config --cflags $(CRYPTOPP_NAME)) $(CRYPTOPP_CXXFLAGS) $(CXXFLAGS) -c $< # mbedTLS shim @@ -171,7 +171,7 @@ mbedtls_provider.so: mbedtls.o c_utils.o | clibs $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic -lmbedcrypto -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so mbedtls.o: mbedtls.c - $(CC) $(CFLAGS) -c $< + $(CC) $(MBEDTLS_CFLAGS) $(CFLAGS) -c $< # Intel Performance Primitives crypto shim @@ -192,7 +192,7 @@ nettle_provider.so: nettle.o c_utils.o | clibs -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so nettle.o: nettle.c - $(CC) -Wl,-static $(shell pkg-config --cflags nettle hogweed gmp) $(CFLAGS) -c $< + $(CC) -Wl,-static $(shell pkg-config --cflags nettle hogweed gmp) $(NETTLE_CFLAGS) $(CFLAGS) -c $< # LibreSSL shim @@ -202,7 +202,7 @@ libressl_provider.so: libressl.o c_utils.o | clibs $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs libresslcrypto) -Wl,-Bdynamic -l:lib_timing.so -l:lib_csignals.so libressl.o: libressl.c - $(CC) $(shell pkg-config --cflags libresslcrypto) $(CFLAGS) -c $< + $(CC) $(shell pkg-config --cflags libresslcrypto) $(LIBRESSL_CFLAGS) $(CFLAGS) -c $< help: @echo "# This makefile builds the JNI shims necessary to test native libraries." -- cgit v1.3.1 From b170ce52826b8e82c6278de980772ed73cb3ea6e Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 20:28:09 +0200 Subject: Acutally use the last version in build. --- flake.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 8ebe504..52aa90c 100644 --- a/flake.nix +++ b/flake.nix @@ -620,7 +620,7 @@ { libName, function }: let versions = builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json); - firstVersion = builtins.elemAt (pkgs.lib.attrsets.attrValues versions) 0; + firstVersion = pkgs.lib.lists.last (pkgs.lib.attrsets.attrValues versions); in pkgs.lib.mapAttrs (rev: specs: function { ${libName} = specs; }) versions // { @@ -631,7 +631,7 @@ { libName, function }: let versions = builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json); - firstVersion = builtins.elemAt (pkgs.lib.attrsets.attrValues versions) 0; + firstVersion = pkgs.lib.lists.last (pkgs.lib.attrsets.attrValues versions); in pkgs.lib.mapAttrs (rev: specs: function specs) versions // (with pkgs.lib; { -- cgit v1.3.1 From e0bc60f3257039e9cfcbaa9312c6e40664989646 Mon Sep 17 00:00:00 2001 From: J08nY Date: Mon, 12 Aug 2024 22:41:22 +0200 Subject: Fix mbedTLS and Botan default builds. --- fetchReleases.py | 19 +++-- flake.nix | 11 ++- nix/botan_pkg_versions.json | 35 -------- nix/mbedtls_pkg_versions.json | 98 ++++++++++++++-------- .../cz/crcs/ectester/standalone/libs/jni/Makefile | 8 +- 5 files changed, 91 insertions(+), 80 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index 5ced814..2de5437 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -66,6 +66,9 @@ def fetch_botan(): download_link = download_url.format(version=link['href']) match = re.match(r"Botan-(?P\d+)\.(?P\d+)\.(?P\d+)\.(?P.*)", link.text) + if match['major'] == "3": + # TODO: Handle Botan-3 + continue version = f"{match['major']}.{match['minor']}.{match['patch']}" ext = f"{match['ext']}" @@ -235,11 +238,16 @@ def fetch_mbedtls(): versions = {} for release in resp.json(): if not release['draft'] and not release['prerelease']: - version = release['tag_name'] - sort_version = version.replace("mbedtls-", "v") + tag = release["tag_name"] + version = tag.replace("mbedtls-", "v") flat_version = version.replace('.', '') - download_url = f"https://github.com/{owner}/{repo}/archive/{version}.tar.gz" - digest = get_source_hash(download_url, unpack=True) + download_url = f"https://github.com/{owner}/{repo}/archive/{tag}.tar.gz" + if version == "v3.6.0": + # TODO: Special case for the time being + digest = "sha256-tCwAKoTvY8VCjcTPNwS3DeitflhpKHLr6ygHZDbR6wQ=" + else: + digest = get_source_hash(download_url, unpack=True) + print(f"{version}:{digest}") rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=version).strip() @@ -247,7 +255,8 @@ def fetch_mbedtls(): versions[flat_version] = { "version": version, "hash": digest, - "sort": parse_version(sort_version) + "tag": tag, + "sort": parse_version(version) } serialize_versions(pkg, renders, versions) diff --git a/flake.nix b/flake.nix index 52aa90c..333df95 100644 --- a/flake.nix +++ b/flake.nix @@ -156,6 +156,7 @@ { version ? null, hash ? null, + tag ? null, }: if version == null then pkgs.mbedtls @@ -163,10 +164,11 @@ pkgs.mbedtls.overrideAttrs ( final: prev: { inherit version; + inherit tag; src = pkgs.fetchFromGitHub { owner = "Mbed-TLS"; repo = "mbedtls"; - rev = "mbedtls-${version}"; + rev = tag; inherit hash; # mbedtls >= 3.6.0 uses git submodules fetchSubmodules = true; @@ -465,10 +467,10 @@ libgcrypt = libgcryptBuilder { inherit version hash; }; }; mbedtlsShimBuilder = - { version, hash }: + { version, hash, tag }: import ./nix/mbedtlsshim.nix { inherit pkgs; - mbedtls = (mbedtlsBuilder { inherit version hash; }); + mbedtls = (mbedtlsBuilder { inherit version hash tag; }); }; ippcpShimBuilder = { version, hash }: @@ -529,6 +531,7 @@ mbedtls ? { version = null; hash = null; + tag = null; }, ippcp ? { version = null; @@ -557,7 +560,7 @@ cryptoppShim = cryptoppShimBuilder { inherit (cryptopp) version hash; }; boringsslShim = boringsslShimBuilder { inherit (boringssl) rev hash; }; gcryptShim = gcryptShimBuilder { inherit (gcrypt) version hash; }; - mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash; }; + mbedtlsShim = mbedtlsShimBuilder { inherit (mbedtls) version hash tag; }; ippcpShim = ippcpShimBuilder { inherit (ippcp) version hash; }; nettleShim = nettleShimBuilder { inherit (nettle) version tag hash; }; libresslShim = libresslShimBuilder { inherit (libressl) version hash; }; diff --git a/nix/botan_pkg_versions.json b/nix/botan_pkg_versions.json index cd09209..7d283bf 100644 --- a/nix/botan_pkg_versions.json +++ b/nix/botan_pkg_versions.json @@ -1,39 +1,4 @@ { - "v350": { - "version": "3.5.0", - "source_extension": "tar.xz", - "hash": "sha256-Z+ja4cokaNkN5OYByH1fMf9JKzjoq4vL0C3fcQTtip8=" - }, - "v340": { - "version": "3.4.0", - "source_extension": "tar.xz", - "hash": "sha256-cYQ6/MCixYX48z+jBPC1iuS5xdgwb4lGZ7N0YEQndVc=" - }, - "v330": { - "version": "3.3.0", - "source_extension": "tar.xz", - "hash": "sha256-No8R9CbxIFrtuenjI2ihZTXcEb1gNRBm5vZmTsNrhbk=" - }, - "v320": { - "version": "3.2.0", - "source_extension": "tar.xz", - "hash": "sha256-BJyEeDX89u86niBrM94F3TiZnDJeJHSCdypVmNnl7OM=" - }, - "v311": { - "version": "3.1.1", - "source_extension": "tar.xz", - "hash": "sha256-MMhP6RmTapj+9TMfJGxiqiwOTSCFstRREgf2ogr6Oms=" - }, - "v310": { - "version": "3.1.0", - "source_extension": "tar.xz", - "hash": "sha256-ThjnVai7xr+W+skW+/By7NBnQMcqcgF8JxYuTAtHJf4=" - }, - "v300": { - "version": "3.0.0", - "source_extension": "tar.xz", - "hash": "sha256-XaVS4A+hwEepDCLrXwJH7CfnQytot44Qp84JVSacytc=" - }, "v2195": { "version": "2.19.5", "source_extension": "tar.xz", diff --git a/nix/mbedtls_pkg_versions.json b/nix/mbedtls_pkg_versions.json index c0e7b49..000efd5 100644 --- a/nix/mbedtls_pkg_versions.json +++ b/nix/mbedtls_pkg_versions.json @@ -1,122 +1,152 @@ { "v360": { "version": "v3.6.0", - "hash": "sha256-yzGBkrqh+T/5GS66xL5zJstCmvcfG09TfxqA3F8UPJg=" + "hash": "sha256-tCwAKoTvY8VCjcTPNwS3DeitflhpKHLr6ygHZDbR6wQ=", + "tag": "v3.6.0" }, "v352": { "version": "v3.5.2", - "hash": "sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM=" + "hash": "sha256-lVGmnSYccNmRS6vfF/fDiny5cYRPc/wJBpgciFLPUvM=", + "tag": "v3.5.2" }, "v351": { "version": "v3.5.1", - "hash": "sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw=" + "hash": "sha256-HxsHcGbSExp1aG5yMR/J3kPL4zqnmNoN5T5wfV3APaw=", + "tag": "v3.5.1" }, - "mbedtls-350": { - "version": "mbedtls-3.5.0", - "hash": "sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU=" + "v350": { + "version": "v3.5.0", + "hash": "sha256-uHHQmaAmFS8Vd7PrAfRpK+aNi3pJ76XBC7rFWcd16NU=", + "tag": "mbedtls-3.5.0" }, "v341": { "version": "v3.4.1", - "hash": "sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts=" + "hash": "sha256-NIjyRcVbg6lT6+RlTz5Jt6V9T85mvta5grOSLIAK9Ts=", + "tag": "v3.4.1" }, "v340": { "version": "v3.4.0", - "hash": "sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg=" + "hash": "sha256-1YA4hp/VEjph5k0qJqhhH4nBbTP3Qu2pl7WpuvPkVfg=", + "tag": "v3.4.0" }, "v330": { "version": "v3.3.0", - "hash": "sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE=" + "hash": "sha256-yb5migP5Tcw99XHFzJkCct4f5R6ztxPR43VQcfTGRtE=", + "tag": "v3.3.0" }, "v321": { "version": "v3.2.1", - "hash": "sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc=" + "hash": "sha256-+M36NvFe4gw2PRbld/2JV3yBGrqK6soWcmrSEkUNcrc=", + "tag": "v3.2.1" }, "v320": { "version": "v3.2.0", - "hash": "sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ=" + "hash": "sha256-b0c8E3eFwHw2bbvAOQY55RRkXVcx9hUCmkZA9QlRodQ=", + "tag": "v3.2.0" }, "v310": { "version": "v3.1.0", - "hash": "sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs=" + "hash": "sha256-esQe1qnM1yBzNPpd+qog3/8guttt6CKUiyzIQ1nMfJs=", + "tag": "v3.1.0" }, "v300": { "version": "v3.0.0", - "hash": "sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s=" + "hash": "sha256-M4PQwsa856Hy3QXKwnNRp4alk5oVJBGkDEjZWf6vT4s=", + "tag": "v3.0.0" }, "v2288": { "version": "v2.28.8", - "hash": "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o=" + "hash": "sha256-A1DYZrvJ8SRujroVwqPfcTOSgLnT5xRat/RVdq2fL/o=", + "tag": "v2.28.8" }, "v2287": { "version": "v2.28.7", - "hash": "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw=" + "hash": "sha256-JI0Frbz4HkPqrLQNrSIj1ikN8201h4kd1wTwyPotERw=", + "tag": "v2.28.7" }, "v2286": { "version": "v2.28.6", - "hash": "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8=" + "hash": "sha256-1YyA3O0/u7Tcf8rhNmrMGF64/tnitQH65THpXa7N7P8=", + "tag": "v2.28.6" }, - "mbedtls-2285": { - "version": "mbedtls-2.28.5", - "hash": "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o=" + "v2285": { + "version": "v2.28.5", + "hash": "sha256-Gl4UQMSvAwYbOi2b/AUMz+zgkOl1o0UA2VveF/3ek8o=", + "tag": "mbedtls-2.28.5" }, "v2284": { "version": "v2.28.4", - "hash": "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE=" + "hash": "sha256-88Lnj9NgS5PWg2hydvb9cwi6s6BG3UMvkUH2Ny1jmtE=", + "tag": "v2.28.4" }, "v2283": { "version": "v2.28.3", - "hash": "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw=" + "hash": "sha256-w5bJErCNRZLE8rHcuZlK3bOqel97gPPMKH2cPGUR6Zw=", + "tag": "v2.28.3" }, "v2282": { "version": "v2.28.2", - "hash": "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ=" + "hash": "sha256-rbWvPrFoY31QyW/TbMndPXTzAJS6qT/bo6J0IL6jRvQ=", + "tag": "v2.28.2" }, "v2281": { "version": "v2.28.1", - "hash": "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw=" + "hash": "sha256-brbZB3fINDeVWXf50ct4bxYkoBVyD6bBBijZyFQSnyw=", + "tag": "v2.28.1" }, "v2280": { "version": "v2.28.0", - "hash": "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g=" + "hash": "sha256-VDoIUBaK2e0E5nkwU1u3Wvxc+s6OzBSdIeHsJKJuZ2g=", + "tag": "v2.28.0" }, "v2270": { "version": "v2.27.0", - "hash": "sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M=" + "hash": "sha256-vlZZnN/XAlmoDhRJTZUcrToeCiGaQrKe6k2t3G1My0M=", + "tag": "v2.27.0" }, "v2260": { "version": "v2.26.0", - "hash": "sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk=" + "hash": "sha256-VbgYI7I6BxcuW9EvRr0CXVPsRBNlsIl3Pti8/XK9nGk=", + "tag": "v2.26.0" }, "v2250": { "version": "v2.25.0", - "hash": "sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ=" + "hash": "sha256-UQ0z374ptC1m7Ezomj7BuMG2+yYg+ByOGYI9zKzlceQ=", + "tag": "v2.25.0" }, "v2240": { "version": "v2.24.0", - "hash": "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM=" + "hash": "sha256-zO65lsM/nw0NfqvRGT+n8sRT2hpdvMzcJR4nve7F0SM=", + "tag": "v2.24.0" }, "v21612": { "version": "v2.16.12", - "hash": "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q=" + "hash": "sha256-EjIbPWiqq0Xif1sXV59mM0qfDjsHuOomDlRWrFKlt6Q=", + "tag": "v2.16.12" }, "v21611": { "version": "v2.16.11", - "hash": "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg=" + "hash": "sha256-sas6xdOUM8cTomXEBpvi6eCOLcCO9vvRmvUIu4kEdRg=", + "tag": "v2.16.11" }, "v21610": { "version": "v2.16.10", - "hash": "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4=" + "hash": "sha256-ar1JVepzNjD6jgp9V0G/YNajO7s0sxYe3t0v8O0sVs4=", + "tag": "v2.16.10" }, "v2169": { "version": "v2.16.9", - "hash": "sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c=" + "hash": "sha256-jhWJh4gKU0JOERANiYSI3me0oMDTRJ7ZQaKhNc6w51c=", + "tag": "v2.16.9" }, "v2719": { "version": "v2.7.19", - "hash": "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY=" + "hash": "sha256-0GAoJMq6O0j8WwwhknD486XcaCALZ3TW5mxKcliISmY=", + "tag": "v2.7.19" }, "v2718": { "version": "v2.7.18", - "hash": "sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg=" + "hash": "sha256-SkAK9lTqdc3VbJyu8VNHR1PPUlt/+swIJl/R5l7zhUg=", + "tag": "v2.7.18" } } \ No newline at end of file diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile index 74d1a93..1393f82 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile @@ -141,13 +141,17 @@ tomcrypt.o: tomcrypt.c # Botan-2 shim +BOTAN_NAME := "botan-2" +ifeq ($(shell pkg-config --exists $(BOTAN_NAME); echo $$?),1) + BOTAN_NAME := "botan-3" +endif botan: botan_provider.so botan_provider.so: botan.o cpp_utils.o | cpplibs - $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs botan-2) -Wl,-Bdynamic -l:lib_timing.so -l:lib_cppsignals.so + $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -Wl,-Bstatic $(shell pkg-config --libs $(BOTAN_NAME)) -Wl,-Bdynamic -l:lib_timing.so -l:lib_cppsignals.so botan.o: botan.cpp - $(CXX) $(shell pkg-config --cflags botan-2) $(BOTAN_CXXFLAGS) $(CXXFLAGS) -c $< + $(CXX) $(shell pkg-config --cflags $(BOTAN_NAME)) $(BOTAN_CXXFLAGS) $(CXXFLAGS) -c $< # Crypto++ shim -- cgit v1.3.1 From 427bceb9d578438be1954ea8b5b12fadfc78dc67 Mon Sep 17 00:00:00 2001 From: J08nY Date: Tue, 13 Aug 2024 10:28:37 +0200 Subject: Fix Crypto++ 7. --- flake.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/flake.nix b/flake.nix index 333df95..0e989f3 100644 --- a/flake.nix +++ b/flake.nix @@ -331,6 +331,7 @@ rev = "CRYPTOPP_${version}"; inherit hash; }; + installTargets = if pkgs.lib.strings.hasPrefix "8_" version then [ "install-lib" ] else [ "install" ]; } ); libresslBuilder = -- cgit v1.3.1 From 9a00cf0cfb3e4d17a060f335a01b06aa715f871f Mon Sep 17 00:00:00 2001 From: quapka Date: Tue, 13 Aug 2024 09:32:38 +0200 Subject: Improve formatting --- flake.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 0e989f3..e80dbf7 100644 --- a/flake.nix +++ b/flake.nix @@ -595,9 +595,9 @@ (if nettle.version != null then "cp ${nettleShim.out}/lib/* ${jniLibsPath}" else "") (if libressl.version != null then "cp ${libresslShim.out}/lib/* ${jniLibsPath}" else "") '' - cp ${wolfcryptjni}/lib/* ${jniLibsPath} - cp ${commonLibs}/lib/* ${jniLibsPath} - '' + cp ${wolfcryptjni}/lib/* ${jniLibsPath} + cp ${commonLibs}/lib/* ${jniLibsPath} + '' ]; nativeBuildInputs = [ makeWrapper ]; -- cgit v1.3.1 From 3fa7861737413bcd426b9c2510b69579f9cc6fbf Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 13:35:17 +0200 Subject: Dumb shit, checkFlags don't work. --- flake.nix | 2 + nix/mbedtls-printf.patch | 95 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 nix/mbedtls-printf.patch diff --git a/flake.nix b/flake.nix index e80dbf7..9dd7cd7 100644 --- a/flake.nix +++ b/flake.nix @@ -173,6 +173,8 @@ # mbedtls >= 3.6.0 uses git submodules fetchSubmodules = true; }; + patches = {"v2.25.0" = ./nix/mbedtls-printf.patch; }."${version}" or (prev.patches or [ ]); + checkFlags = (prev.checkFlags or [ ]) ++ [ "SKIP_TEST_SUITES=ssl" ]; } ); diff --git a/nix/mbedtls-printf.patch b/nix/mbedtls-printf.patch new file mode 100644 index 0000000..f19acf5 --- /dev/null +++ b/nix/mbedtls-printf.patch @@ -0,0 +1,95 @@ +diff --git a/programs/ssl/ssl_pthread_server.c b/programs/ssl/ssl_pthread_server.c +--- a/programs/ssl/ssl_pthread_server.c ++++ b/programs/ssl/ssl_pthread_server.c +@@ -142,7 +142,7 @@ static void *handle_ssl_connection( void *data ) + if( ( ret = mbedtls_ssl_setup( &ssl, thread_info->config ) ) != 0 ) + { + mbedtls_printf( " [ #%ld ] failed: mbedtls_ssl_setup returned -0x%04x\n", +- thread_id, -ret ); ++ thread_id, ( unsigned int ) -ret ); + goto thread_exit; + } + +@@ -158,7 +158,7 @@ static void *handle_ssl_connection( void *data ) + if( ret != MBEDTLS_ERR_SSL_WANT_READ && ret != MBEDTLS_ERR_SSL_WANT_WRITE ) + { + mbedtls_printf( " [ #%ld ] failed: mbedtls_ssl_handshake returned -0x%04x\n", +- thread_id, -ret ); ++ thread_id, ( unsigned int ) -ret ); + goto thread_exit; + } + } +@@ -195,7 +195,7 @@ static void *handle_ssl_connection( void *data ) + + default: + mbedtls_printf( " [ #%ld ] mbedtls_ssl_read returned -0x%04x\n", +- thread_id, -ret ); ++ thread_id, ( unsigned int ) -ret ); + goto thread_exit; + } + } +@@ -229,7 +229,7 @@ static void *handle_ssl_connection( void *data ) + if( ret != MBEDTLS_ERR_SSL_WANT_READ && ret != MBEDTLS_ERR_SSL_WANT_WRITE ) + { + mbedtls_printf( " [ #%ld ] failed: mbedtls_ssl_write returned -0x%04x\n", +- thread_id, ret ); ++ thread_id, ( unsigned int ) ret ); + goto thread_exit; + } + } +@@ -246,7 +246,7 @@ static void *handle_ssl_connection( void *data ) + ret != MBEDTLS_ERR_SSL_WANT_WRITE ) + { + mbedtls_printf( " [ #%ld ] failed: mbedtls_ssl_close_notify returned -0x%04x\n", +- thread_id, ret ); ++ thread_id, ( unsigned int ) ret ); + goto thread_exit; + } + } +@@ -263,7 +263,7 @@ static void *handle_ssl_connection( void *data ) + char error_buf[100]; + mbedtls_strerror( ret, error_buf, 100 ); + mbedtls_printf(" [ #%ld ] Last error was: -0x%04x - %s\n\n", +- thread_id, -ret, error_buf ); ++ thread_id, ( unsigned int ) -ret, error_buf ); + } + #endif + +@@ -408,7 +408,7 @@ int main( void ) + strlen( pers ) ) ) != 0 ) + { + mbedtls_printf( " failed: mbedtls_ctr_drbg_seed returned -0x%04x\n", +- -ret ); ++ ( unsigned int ) -ret ); + goto exit; + } + +@@ -425,7 +425,7 @@ int main( void ) + MBEDTLS_SSL_PRESET_DEFAULT ) ) != 0 ) + { + mbedtls_printf( " failed: mbedtls_ssl_config_defaults returned -0x%04x\n", +- -ret ); ++ ( unsigned int ) -ret ); + goto exit; + } + +@@ -470,7 +470,8 @@ int main( void ) + { + char error_buf[100]; + mbedtls_strerror( ret, error_buf, 100 ); +- mbedtls_printf( " [ main ] Last error was: -0x%04x - %s\n", -ret, error_buf ); ++ mbedtls_printf( " [ main ] Last error was: -0x%04x - %s\n", ( unsigned int ) -ret, ++ error_buf ); + } + #endif + +@@ -482,7 +483,8 @@ int main( void ) + if( ( ret = mbedtls_net_accept( &listen_fd, &client_fd, + NULL, 0, NULL ) ) != 0 ) + { +- mbedtls_printf( " [ main ] failed: mbedtls_net_accept returned -0x%04x\n", ret ); ++ mbedtls_printf( " [ main ] failed: mbedtls_net_accept returned -0x%04x\n", ++ ( unsigned int ) ret ); + goto exit; + } + -- cgit v1.3.1 From cf6816c31b2e0ecaa85ad98fd759badf8eef24b6 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 15 Aug 2024 14:07:40 +0200 Subject: Fix building Mbed-TLS version 2.25.0 --- flake.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 9dd7cd7..d5da779 100644 --- a/flake.nix +++ b/flake.nix @@ -173,8 +173,9 @@ # mbedtls >= 3.6.0 uses git submodules fetchSubmodules = true; }; - patches = {"v2.25.0" = ./nix/mbedtls-printf.patch; }."${version}" or (prev.patches or [ ]); - checkFlags = (prev.checkFlags or [ ]) ++ [ "SKIP_TEST_SUITES=ssl" ]; + patches = { "v2.25.0" = ./nix/mbedtls-printf.patch; }."${version}" or (prev.patches or [ ]); + # NOTE using previous cmakeFlags might not be desirec.. + cmakeFlags = (prev.cmakeFlags or [ ]) ++ [ "-DSKIP_TEST_SUITES=ssl,x509parse" ]; } ); -- cgit v1.3.1 From eed91ffe37cd7b533b77832570f3249b1012677a Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 15:12:32 +0200 Subject: Fix mbedtls shim build for many versions. --- nix/mbedtlsshim.nix | 8 +++- .../cz/crcs/ectester/standalone/libs/jni/c_utils.h | 12 +++++- .../cz/crcs/ectester/standalone/libs/jni/mbedtls.c | 50 ++++++++++++++++------ 3 files changed, 56 insertions(+), 14 deletions(-) diff --git a/nix/mbedtlsshim.nix b/nix/mbedtlsshim.nix index 06abb0b..05cad9c 100644 --- a/nix/mbedtlsshim.nix +++ b/nix/mbedtlsshim.nix @@ -3,6 +3,7 @@ with pkgs; stdenv.mkDerivation rec { name = "MbedTLSShim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; + rawVersion = pkgs.lib.strings.removePrefix "v" mbedtls.version; buildInputs = [ mbedtls @@ -14,7 +15,12 @@ stdenv.mkDerivation rec { make mbedtls ''; - MBEDTLS_CFLAGS = "-DECTESTER_MBEDTLS_${builtins.replaceStrings ["."] ["_"] mbedtls.version}=1"; + MBEDTLS_CFLAGS = '' + -DECTESTER_MBEDTLS_${builtins.replaceStrings ["."] ["_"] rawVersion}=1 \ + -DECTESTER_MBEDTLS_MAJOR=${pkgs.lib.versions.major rawVersion} \ + -DECTESTER_MBEDTLS_MINOR=${pkgs.lib.versions.minor rawVersion} \ + -DECTESTER_MBEDTLS_PATCH=${pkgs.lib.versions.patch rawVersion} \ + ''; installPhase = '' mkdir --parents $out/lib diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/c_utils.h b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/c_utils.h index 93a11ed..ec62a40 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/c_utils.h +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/c_utils.h @@ -65,4 +65,14 @@ char *biginteger_to_hex(JNIEnv *env, jobject big, jint bytes); } while (0) #define ADD_KPG(env, self, kpg_name, kpg_class) ADD_PROPERTY(env, self, "KeyPairGenerator.", "cz.crcs.ectester.standalone.libs.jni.NativeKeyPairGeneratorSpi$", kpg_name, kpg_class) #define ADD_KA(env, self, ka_name, ka_class) ADD_PROPERTY(env, self, "KeyAgreement.", "cz.crcs.ectester.standalone.libs.jni.NativeKeyAgreementSpi$", ka_name, ka_class) -#define ADD_SIG(env, self, sig_name, sig_class) ADD_PROPERTY(env, self, "Signature.", "cz.crcs.ectester.standalone.libs.jni.NativeSignatureSpi$", sig_name, sig_class) \ No newline at end of file +#define ADD_SIG(env, self, sig_name, sig_class) ADD_PROPERTY(env, self, "Signature.", "cz.crcs.ectester.standalone.libs.jni.NativeSignatureSpi$", sig_name, sig_class) + + +/** + * Version handling. + */ +#define VERSION_GT(lib,a,b,c) ((ECTESTER_##lib##_MAJOR == a && ECTESTER_##lib##_MINOR == b && ECTESTER_##lib##_PATCH > c) || (ECTESTER_##lib##_MAJOR == a && ECTESTER_##lib##_MINOR > b) || (ECTESTER_##lib##_MAJOR > a)) +#define VERSION_EQ(lib,a,b,c) (ECTESTER_##lib##_MAJOR == a && ECTESTER_##lib##_MINOR == b && ECTESTER_##lib##_PATCH == c) +#define VERSION_GE(lib,a,b,c) (VERSION_GT(lib,a,b,c) || VERSION_EQ(lib,a,b,c)) +#define VERSION_LT(lib,a,b,c) !(VERSION_GE(lib,a,b,c)) +#define VERSION_LE(lib,a,b,c) !(VERSION_GT(lib,a,b,c)) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c index 8f5e0fb..e017f4d 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c @@ -21,6 +21,24 @@ static mbedtls_entropy_context fixed_entropy; static jclass provider_class; +#if VERSION_LT(MBEDTLS, 3, 0, 0) +#define MBEDTLS_PRIVATE(member) member +#else +#define MBEDTLS_PRIVATE(member) private_##member +#endif + + +#if VERSION_LT(MBEDTLS, 3, 1, 0) +#define CURVE_GRP_ID(curve_info) curve_info->MBEDTLS_PRIVATE(grp_id) +#define CURVE_NAME(curve_info) curve_info->MBEDTLS_PRIVATE(name) +#define CURVE_BIT_SIZE(curve_info) curve_info->MBEDTLS_PRIVATE(bit_size) +#else +#define CURVE_GRP_ID(curve_info) curve_info->grp_id +#define CURVE_NAME(curve_info) curve_info->name +#define CURVE_BIT_SIZE(curve_info) curve_info->bit_size +#endif + + JNIEXPORT jobject JNICALL Java_cz_crcs_ectester_standalone_libs_MbedTLSLib_createProvider(JNIEnv *env, jobject this) { /* Create the custom provider. */ jclass local_provider_class = (*env)->FindClass(env, "cz/crcs/ectester/standalone/libs/jni/NativeProvider$MbedTLS"); @@ -104,10 +122,10 @@ JNIEXPORT jobject JNICALL Java_cz_crcs_ectester_standalone_libs_MbedTLSLib_getCu jobject result = (*env)->NewObject(env, hash_set_class, hash_set_ctr); for (const mbedtls_ecp_curve_info *curve_info = mbedtls_ecp_curve_list(); - curve_info->grp_id != MBEDTLS_ECP_DP_NONE; + CURVE_GRP_ID(curve_info) != MBEDTLS_ECP_DP_NONE; curve_info++) { - jstring curve_name = (*env)->NewStringUTF(env, curve_info->name); + jstring curve_name = (*env)->NewStringUTF(env, CURVE_NAME(curve_info)); (*env)->CallBooleanMethod(env, result, hash_set_add, curve_name); } return result; @@ -132,7 +150,8 @@ JNIEXPORT jboolean JNICALL Java_cz_crcs_ectester_standalone_libs_MbedTLSLib_setu mbedtls_entropy_init(&fixed_entropy); // This is NASTY! We are accessing something the library does not want us to. - fixed_entropy.private_source_count = 0; + + fixed_entropy.MBEDTLS_PRIVATE(source_count) = 0; mbedtls_entropy_add_source(&fixed_entropy, fixed_random, NULL, 32, MBEDTLS_ENTROPY_SOURCE_STRONG); mbedtls_ctr_drbg_seed(&ctr_drbg, mbedtls_entropy_func, &fixed_entropy, NULL, 0); @@ -141,9 +160,9 @@ JNIEXPORT jboolean JNICALL Java_cz_crcs_ectester_standalone_libs_MbedTLSLib_setu JNIEXPORT jboolean JNICALL Java_cz_crcs_ectester_standalone_libs_jni_NativeKeyPairGeneratorSpi_00024MbedTLS_keysizeSupported(JNIEnv *env, jobject this, jint keysize) { for (const mbedtls_ecp_curve_info *curve_info = mbedtls_ecp_curve_list(); - curve_info->grp_id != MBEDTLS_ECP_DP_NONE; + CURVE_GRP_ID(curve_info) != MBEDTLS_ECP_DP_NONE; curve_info++) { - if (keysize == curve_info->bit_size) { + if (keysize == CURVE_BIT_SIZE(curve_info)) { return JNI_TRUE; } } @@ -170,9 +189,9 @@ JNIEXPORT jboolean JNICALL Java_cz_crcs_ectester_standalone_libs_jni_NativeKeyPa jstring name = (*env)->CallObjectMethod(env, params, get_name); const char *utf_name = (*env)->GetStringUTFChars(env, name, NULL); for (const mbedtls_ecp_curve_info *curve_info = mbedtls_ecp_curve_list(); - curve_info->grp_id != MBEDTLS_ECP_DP_NONE; + CURVE_GRP_ID(curve_info) != MBEDTLS_ECP_DP_NONE; curve_info++) { - if (strcasecmp(utf_name, curve_info->name) == 0) { + if (strcasecmp(utf_name, CURVE_NAME(curve_info)) == 0) { (*env)->ReleaseStringUTFChars(env, name, utf_name); return JNI_TRUE; } @@ -244,6 +263,13 @@ static void mpi_from_biginteger(JNIEnv* env, jobject biginteger, mbedtls_mpi *mp (*env)->ReleaseByteArrayElements(env, byte_array, byte_data, JNI_ABORT); } +#if (VERSION_LT(MBEDTLS, 3, 5, 0) && VERSION_GE(MBEDTLS, 3, 0, 0)) || VERSION_LT(MBEDTLS, 2, 28, 5) +static inline int mbedtls_ecp_group_a_is_minus_3(const mbedtls_ecp_group *grp) +{ + return grp->A.MBEDTLS_PRIVATE(p) == NULL; +} +#endif + static jobject create_ec_param_spec(JNIEnv *env, const mbedtls_ecp_group *group) { jobject p = biginteger_from_mpi(env, &group->P); jmethodID fp_field_init = (*env)->GetMethodID(env, fp_field_class, "", "(Ljava/math/BigInteger;)V"); @@ -402,7 +428,7 @@ static jobject generate_from_curve(JNIEnv *env, mbedtls_ecp_group *group) { static jobject generate_from_curve_info(JNIEnv *env, const mbedtls_ecp_curve_info *curve) { mbedtls_ecp_group group; mbedtls_ecp_group_init(&group); - mbedtls_ecp_group_load(&group, curve->grp_id); + mbedtls_ecp_group_load(&group, CURVE_GRP_ID(curve)); jobject result = generate_from_curve(env, &group); mbedtls_ecp_group_free(&group); return result; @@ -411,9 +437,9 @@ static jobject generate_from_curve_info(JNIEnv *env, const mbedtls_ecp_curve_inf JNIEXPORT jobject JNICALL Java_cz_crcs_ectester_standalone_libs_jni_NativeKeyPairGeneratorSpi_00024MbedTLS_generate__ILjava_security_SecureRandom_2(JNIEnv *env, jobject this, jint keysize, jobject random) { const mbedtls_ecp_curve_info *curve = NULL; for (const mbedtls_ecp_curve_info *curve_info = mbedtls_ecp_curve_list(); - curve_info->grp_id != MBEDTLS_ECP_DP_NONE; + CURVE_GRP_ID(curve_info) != MBEDTLS_ECP_DP_NONE; curve_info++) { - if (keysize == curve_info->bit_size) { + if (keysize == CURVE_BIT_SIZE(curve_info)) { curve = curve_info; break; } @@ -443,9 +469,9 @@ JNIEXPORT jobject JNICALL Java_cz_crcs_ectester_standalone_libs_jni_NativeKeyPai const char *utf_name = (*env)->GetStringUTFChars(env, name, NULL); const mbedtls_ecp_curve_info *curve = NULL; for (const mbedtls_ecp_curve_info *curve_info = mbedtls_ecp_curve_list(); - curve_info->grp_id != MBEDTLS_ECP_DP_NONE; + CURVE_GRP_ID(curve_info) != MBEDTLS_ECP_DP_NONE; curve_info++) { - if (strcasecmp(utf_name, curve_info->name) == 0) { + if (strcasecmp(utf_name, CURVE_NAME(curve_info)) == 0) { (*env)->ReleaseStringUTFChars(env, name, utf_name); curve = curve_info; break; -- cgit v1.3.1 From 335782e090deb10f4227aaad256420af1d93c189 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 15 Aug 2024 16:09:24 +0200 Subject: Plot tables with differences in results --- flake.nix | 19 ++++++++++++ plot_versions.py | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 plot_versions.py diff --git a/flake.nix b/flake.nix index d5da779..94c05ae 100644 --- a/flake.nix +++ b/flake.nix @@ -815,6 +815,25 @@ ''; }; + plotVersions = + with pkgs.python3Packages; + buildPythonApplication { + pname = "buildAll"; + version = "0.1.0"; + format = "other"; + + propagatedBuildInputs = [ + pandas + jinja2 + ]; + + src = ./plot_versions.py; + dontUnpack = true; + installPhase = '' + install -Dm755 $src $out/bin/$pname + ''; + }; + }; devShells.default = with pkgs; diff --git a/plot_versions.py b/plot_versions.py new file mode 100644 index 0000000..5d82ced --- /dev/null +++ b/plot_versions.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python3 + +import argparse +import json + +from collections import defaultdict +from pathlib import Path + +import pandas as pd + +def get_all_versions(library): + with open(f"./nix/{library}_pkg_versions.json", "r") as handle: + versions = json.load(handle) + return versions + +def build_results_to_latex(library): + versions = get_all_versions(library) + lib_results = get_results(library, "lib") + shim_results = get_results(library, "shim") + + pruned_versions = [] + pruned_libs = [] + pruned_shims = [] + prev = [None, None] + for ver in versions.keys(): + row = [lib_results[ver]["success"], shim_results[ver]["success"]] + if row == prev: + continue + pruned_versions.append(ver) + pruned_libs.append(r"{\color{blue}\cmark}" if lib_results[ver]["success"] else r"{\color{red}\xmark}") + pruned_shims.append(r"{\color{blue}\cmark}" if shim_results[ver]["success"] else r"{\color{red}\xmark}") + prev = row + + + # lib_rows = [r"{\color{blue}\cmark}" if lib_results[ver]["success"] else r"{\color{red}\xmark}" for ver in versions.keys()] + + # shim_rows = [r"{\color{blue}\cmark}" if shim_results[ver]["success"] else r"{\color{red}\xmark}" for ver in versions.keys()] + # shim_rows = [shim_results[ver] for ver in versions.keys()] + + df = pd.DataFrame(dict(Versions=pruned_versions, Library=pruned_libs, Shim=pruned_shims)) + # FIXME there should be a translation from `openssl` -> `OpenSSL` etc. + tabledir = Path(f"./build_all/tables") + tabledir.mkdir(parents=True, exist_ok=True) + with open(tabledir / f"{library}.tex", "w") as handle: + handle.write(df.to_latex(index=False, caption=library, label=f"{library}-lib-and-shim-builds")) + +def get_results(library, variant): + with open(f"./build_all/{variant}/{library}.json", "r") as handle: + return json.load(handle) + +def main(): + parser = argparse.ArgumentParser() + parser.add_argument("-l", "--library") + # parser.add_argument("-v", "--variant", default="shim", type=valid_build_type) + args = parser.parse_args() + library = args.library + # variant = args.variant + + libraries = [ + "botan", + "cryptopp", + "openssl", + "boringssl", + "gcrypt", + "mbedtls", + "ippcp", + "nettle", + "libressl", + ] + + match library: + case None: + # print("Building all libraries") + # # Build all libraries by default + for lib in libraries: + build_results_to_latex(lib) + # print(f"Library: {lib}") + # for version in get_all_versions(lib): + # result = attempt_build(lib, version, variant) + # save_build_result(lib, variant, version, result) + # print(f"{version}: {result['success']}") + case lib if lib in libraries: + build_results_to_latex(lib) + # print(f"Library: {library}") + # for version in get_all_versions(library): + # result = attempt_build(lib, version, variant) + # save_build_result(lib, variant, version, result) + # print(f"{version}: {result['success']}") + case _: + pass + print(f"Unrecognized library '{library}'. Try one of: {', '.join(libraries)}.") + + +if __name__ == '__main__': + main() -- cgit v1.3.1 From 0dd90be10b70db6e342f7439340a698c4a0af352 Mon Sep 17 00:00:00 2001 From: quapka Date: Thu, 15 Aug 2024 16:15:52 +0200 Subject: Create tables with all results --- plot_versions.py | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/plot_versions.py b/plot_versions.py index 5d82ced..012ec3f 100644 --- a/plot_versions.py +++ b/plot_versions.py @@ -16,28 +16,14 @@ def get_all_versions(library): def build_results_to_latex(library): versions = get_all_versions(library) lib_results = get_results(library, "lib") - shim_results = get_results(library, "shim") - - pruned_versions = [] - pruned_libs = [] - pruned_shims = [] - prev = [None, None] - for ver in versions.keys(): - row = [lib_results[ver]["success"], shim_results[ver]["success"]] - if row == prev: - continue - pruned_versions.append(ver) - pruned_libs.append(r"{\color{blue}\cmark}" if lib_results[ver]["success"] else r"{\color{red}\xmark}") - pruned_shims.append(r"{\color{blue}\cmark}" if shim_results[ver]["success"] else r"{\color{red}\xmark}") - prev = row - + lib_rows = [r"{\color{blue}\cmark}" if lib_results[ver]["success"] else r"{\color{red}\xmark}" for ver in versions.keys()] - # lib_rows = [r"{\color{blue}\cmark}" if lib_results[ver]["success"] else r"{\color{red}\xmark}" for ver in versions.keys()] - - # shim_rows = [r"{\color{blue}\cmark}" if shim_results[ver]["success"] else r"{\color{red}\xmark}" for ver in versions.keys()] + shim_results = get_results(library, "shim") + shim_rows = [r"{\color{blue}\cmark}" if shim_results[ver]["success"] else r"{\color{red}\xmark}" for ver in versions.keys()] # shim_rows = [shim_results[ver] for ver in versions.keys()] - df = pd.DataFrame(dict(Versions=pruned_versions, Library=pruned_libs, Shim=pruned_shims)) + cleaned_versions = [v.replace('_', r"{\_}") for v in versions.keys()] + df = pd.DataFrame(dict(Versions=cleaned_versions, Library=lib_rows, Shim=shim_rows)) # FIXME there should be a translation from `openssl` -> `OpenSSL` etc. tabledir = Path(f"./build_all/tables") tabledir.mkdir(parents=True, exist_ok=True) -- cgit v1.3.1 From d906ea9603d555c400cd4c85536d35f875358457 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 16:25:57 +0200 Subject: Fixup libressl >= 3.8.2. --- flake.nix | 26 +++++++++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/flake.nix b/flake.nix index 94c05ae..53edd12 100644 --- a/flake.nix +++ b/flake.nix @@ -334,7 +334,8 @@ rev = "CRYPTOPP_${version}"; inherit hash; }; - installTargets = if pkgs.lib.strings.hasPrefix "8_" version then [ "install-lib" ] else [ "install" ]; + installTargets = + if pkgs.lib.strings.hasPrefix "8_" version then [ "install-lib" ] else [ "install" ]; } ); libresslBuilder = @@ -359,12 +360,14 @@ else (pkgs.libressl.override { buildShared = false; }).overrideAttrs ( final: prev: rec { + inherit version; src = pkgs.fetchurl { url = "mirror://openbsd/LibreSSL/${prev.pname}-${version}.tar.gz"; inherit hash; }; + patches = - if version == "3.8.2" then + if (pkgs.lib.strings.versionAtLeast version "3.8.2") then [ (pkgs.fetchpatch { url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; @@ -375,6 +378,19 @@ else [ ]; + preConfigure = '' + ${pkgs.lib.strings.optionalString (pkgs.lib.strings.versionAtLeast version "2.2.2") '' + rm configure + substituteInPlace CMakeLists.txt \ + --replace 'exec_prefix \''${prefix}' "exec_prefix ${placeholder "bin"}" \ + --replace 'libdir \''${exec_prefix}' 'libdir \''${prefix}' + ''} + ''; + + postPatch = '' + patchShebangs tests/ + ''; + # NOTE: Due to name conflicts between OpenSSL and LibreSSL we need to resolve this manually. # This is not needed for building the individual shims through Nix, as libresslShim build env does not # contain OpenSSL at all, but for the interactive shell (started with `nix develop`), when multiple @@ -471,7 +487,11 @@ libgcrypt = libgcryptBuilder { inherit version hash; }; }; mbedtlsShimBuilder = - { version, hash, tag }: + { + version, + hash, + tag, + }: import ./nix/mbedtlsshim.nix { inherit pkgs; mbedtls = (mbedtlsBuilder { inherit version hash tag; }); -- cgit v1.3.1 From e4b75bd3061c125448f8d46c813912bee95b6b5b Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 17:18:35 +0200 Subject: Fixup many libressl versions. --- flake.nix | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/flake.nix b/flake.nix index 53edd12..71fff81 100644 --- a/flake.nix +++ b/flake.nix @@ -346,7 +346,7 @@ if version == null then (pkgs.libressl.override { buildShared = false; }).overrideAttrs ({ patches = - if version == "3.8.2" then + if (pkgs.lib.strings.versionAtLeast version "3.5.1") then [ (pkgs.fetchpatch { url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; @@ -366,25 +366,20 @@ inherit hash; }; - patches = - if (pkgs.lib.strings.versionAtLeast version "3.8.2") then - [ - (pkgs.fetchpatch { - url = "https://github.com/libressl/portable/commit/86e4965d7f20c3a6afc41d95590c9f6abb4fe788.patch"; - includes = [ "tests/tlstest.sh" ]; - hash = "sha256-XmmKTvP6+QaWxyGFCX6/gDfME9GqBWSx4X8RH8QbDXA="; - }) - ] - else - [ ]; - + # Disable some TLS, ASN1, and explicit_bzero tests that we do not care for preConfigure = '' - ${pkgs.lib.strings.optionalString (pkgs.lib.strings.versionAtLeast version "2.2.2") '' - rm configure - substituteInPlace CMakeLists.txt \ - --replace 'exec_prefix \''${prefix}' "exec_prefix ${placeholder "bin"}" \ - --replace 'libdir \''${exec_prefix}' 'libdir \''${prefix}' - ''} + substituteInPlace tests/CMakeLists.txt \ + --replace-warn "add_test(asn1object asn1object)" "" \ + --replace-warn "if(NOT WIN32)" "if(false)" \ + --replace-warn "if(NOT CMAKE_HOST_WIN32)" "if(false)" + substituteInPlace tests/tlstest.sh --replace-fail "set -e" "exit 0" + + ${pkgs.lib.strings.optionalString (pkgs.lib.strings.versionAtLeast version "2.2.2") '' + rm configure + substituteInPlace CMakeLists.txt \ + --replace 'exec_prefix \''${prefix}' "exec_prefix ${placeholder "bin"}" \ + --replace 'libdir \''${exec_prefix}' 'libdir \''${prefix}' + ''} ''; postPatch = '' -- cgit v1.3.1 From 60f4b2e5c4e431ba3b902536d3de30c582b8b42b Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 18:04:44 +0200 Subject: Fix mbedtls 3.4.0. https://github.com/Mbed-TLS/mbedtls/commit/50745e7e352d3422643320ad900d786dc4e10c63 --- flake.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 71fff81..aa499b7 100644 --- a/flake.nix +++ b/flake.nix @@ -174,8 +174,8 @@ fetchSubmodules = true; }; patches = { "v2.25.0" = ./nix/mbedtls-printf.patch; }."${version}" or (prev.patches or [ ]); - # NOTE using previous cmakeFlags might not be desirec.. - cmakeFlags = (prev.cmakeFlags or [ ]) ++ [ "-DSKIP_TEST_SUITES=ssl,x509parse" ]; + # NOTE using previous cmakeFlags might not be desired.. + cmakeFlags = (prev.cmakeFlags or [ ]) ++ [ "-DSKIP_TEST_SUITES=ssl,x509parse,pkcs7" ]; } ); -- cgit v1.3.1 From 8d5c5fc65068d639b75db993ad23ca328146e6b6 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 18:12:25 +0200 Subject: Fix mbedtls 3.2.0: https://github.com/Mbed-TLS/mbedtls/releases/tag/v3.2.1 --- flake.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index aa499b7..67d1331 100644 --- a/flake.nix +++ b/flake.nix @@ -173,7 +173,17 @@ # mbedtls >= 3.6.0 uses git submodules fetchSubmodules = true; }; - patches = { "v2.25.0" = ./nix/mbedtls-printf.patch; }."${version}" or (prev.patches or [ ]); + patches = + { + "v2.25.0" = ./nix/mbedtls-printf.patch; + "v3.2.0" = ( + pkgs.fetchpatch { + url = "https://github.com/Mbed-TLS/mbedtls/commit/c2a938711085813eae11d99550b280c416a8242e.patch"; + hash = "sha256-Rq4wEgJoEBzLpp2GdEMO2Ys2WNqN0LXzlKOVpcyVQ0M="; + } + ); + } + ."${version}" or (prev.patches or [ ]); # NOTE using previous cmakeFlags might not be desired.. cmakeFlags = (prev.cmakeFlags or [ ]) ++ [ "-DSKIP_TEST_SUITES=ssl,x509parse,pkcs7" ]; } -- cgit v1.3.1 From 55c75863518f07ecee19a6d5fd429a43a8a6a8bf Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 18:16:18 +0200 Subject: Add more OpenSSL versions. --- fetchReleases.py | 52 +++- nix/openssl_pkg_versions.json | 644 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 682 insertions(+), 14 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index 2de5437..4fe4e53 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -68,6 +68,7 @@ def fetch_botan(): match = re.match(r"Botan-(?P\d+)\.(?P\d+)\.(?P\d+)\.(?P.*)", link.text) if match['major'] == "3": # TODO: Handle Botan-3 + print(f"Skipping Botan-3 {match}") continue version = f"{match['major']}.{match['minor']}.{match['patch']}" ext = f"{match['ext']}" @@ -122,31 +123,54 @@ def fetch_openssl(): owner = "openssl" repo = "openssl" release_url = f"https://api.github.com/repos/{owner}/{repo}/releases" - resp = requests.get(release_url) + resp_releases = requests.get(release_url) + tags_url = f"https://api.github.com/repos/{owner}/{repo}/git/matching-refs/tags" + resp_tags = requests.get(tags_url) + + tags = [release["tag_name"] for release in resp_releases.json() if not release["draft"] and not release["prerelease"]] + tags += [tag_ref["ref"].split("/")[-1] for tag_ref in resp_tags.json() if tag_ref["ref"].startswith("refs/tags/openssl-") or tag_ref["ref"].startswith("refs/tags/OpenSSL_")] + tags = list(filter(lambda tag: "FIPS" not in tag and "reformat" not in tag and "alpha" not in tag and "beta" not in tag and "pre" not in tag, tags)) + for tag in tags: + print(tag) + single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; };""") renders = [] versions = {} - for release in resp.json(): - if not release['draft'] and not release['prerelease']: + for tag in tags: + print(tag) + if tag.startswith("OpenSSL_"): + match = re.match(r"OpenSSL_(?P\d+)_(?P\d+)_(?P\d+)(?P.*)", tag) + sort_version = f"{match['major']}.{match['minor']}.{match['patch']}{'+' + match['ext'] if match['ext'] else ''}" + dotted_version = f"{match['major']}.{match['minor']}.{match['patch']}{ match['ext'] if match['ext'] else ''}" + else: try: - _, dotted_version = release['tag_name'].split('-') + _, dotted_version = tag.split('-') + sort_version = dotted_version except ValueError: continue - flat_version = "v" + "".join(dotted_version.split('.')) - download_url = f"https://www.openssl.org/source/openssl-{dotted_version}.tar.gz" + flat_version = "v" + "".join(dotted_version.split('.')) + download_url = f"https://www.openssl.org/source/openssl-{dotted_version}.tar.gz" + old_url = f"https://www.openssl.org/source/old/openssl-{dotted_version}.tar.gz" + try: digest = get_source_hash(download_url) - print(f"{dotted_version}:{digest}") - versions[flat_version] = { - "version": dotted_version, - "hash": digest, - "sort": parse_version(dotted_version) - } + except Exception: + try: + digest = get_source_hash(old_url) + except Exception: + print(f"Skipping {dotted_version} (unavailable)") + continue + print(f"{dotted_version}:{digest}") + versions[flat_version] = { + "version": dotted_version, + "hash": digest, + "sort": parse_version(sort_version) + } - rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=dotted_version).strip() - renders.append(rendered) + rendered = single_version_template.render(pkg=pkg, digest=digest, flat_version=flat_version, version=dotted_version).strip() + renders.append(rendered) serialize_versions(pkg, renders, versions) diff --git a/nix/openssl_pkg_versions.json b/nix/openssl_pkg_versions.json index d66cff4..b977c49 100644 --- a/nix/openssl_pkg_versions.json +++ b/nix/openssl_pkg_versions.json @@ -78,5 +78,649 @@ "v307": { "version": "3.0.7", "hash": "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4=" + }, + "v305": { + "version": "3.0.5", + "hash": "sha256-qn2Nm+9xrWUlxVuhHl9Dl4ic5Jwsk0nc6m0+TwsCSno=" + }, + "v304": { + "version": "3.0.4", + "hash": "sha256-KDGEPppmigq0eOcCCtY9LWXlH3KXdHLcc+/O+6/AwA8=" + }, + "v303": { + "version": "3.0.3", + "hash": "sha256-7gB4rc7x3l8APGLIDMllJ3IWCcbzu0K3eV3zH4tVjAs=" + }, + "v302": { + "version": "3.0.2", + "hash": "sha256-mOkczq1NR1auPJzeXgkZGo5YbZ9NUIOOfsCdZBHf22M=" + }, + "v301": { + "version": "3.0.1", + "hash": "sha256-wxGthTNTvOeW7a0BqGLFCopYf2Ln4hAO9GWrU+ybBtE=" + }, + "v300": { + "version": "3.0.0", + "hash": "sha256-We7fy0bCUhTJvTftYHgpe03wHQEiZ/6enu4x9hvHBTY=" + }, + "v111w": { + "version": "1.1.1w", + "hash": "sha256-zzCYlQy02FOtlcCEHx+cbT3BAtzPys1SHZOSUgi3asg=" + }, + "v111v": { + "version": "1.1.1v", + "hash": "sha256-1ml+KHHncjhGBALpNi1H0YOCsV758karpse9eA04prA=" + }, + "v111u": { + "version": "1.1.1u", + "hash": "sha256-4vjYS1I+7NBse+diaDA3AwD7zBU4a/UULXJ1j2lj68Y=" + }, + "v111t": { + "version": "1.1.1t", + "hash": "sha256-je6bJL2x3L8MPR6bAvuPa/IhZegH9Fret8lndTaFnTs=" + }, + "v111s": { + "version": "1.1.1s", + "hash": "sha256-xawB52Dub/Dath1rK70wFGck0GPrMiGAxvGKb3Tktqo=" + }, + "v111q": { + "version": "1.1.1q", + "hash": "sha256-15Oc5hQCnN/wtsIPDi5XAxWKSJpyslB7i9Ub+Mj9EMo=" + }, + "v111p": { + "version": "1.1.1p", + "hash": "sha256-v2G2Kqpmx8djmUKpTeTJroKAwI8X1OrC5EZE2fyKzm8=" + }, + "v111o": { + "version": "1.1.1o", + "hash": "sha256-k4SisFcN2ANYhBRkZ3EV33he25QccSEfdQdtcv5rQ48=" + }, + "v111n": { + "version": "1.1.1n", + "hash": "sha256-QNzrUaT2pSdb3g5r8g70uRv8Mu1XwFUuLo4VRjNysXo=" + }, + "v111m": { + "version": "1.1.1m", + "hash": "sha256-+JGZvosjykX8fLnx2NPuZzEjGChq0DD1MWrKZGLbbJY=" + }, + "v111l": { + "version": "1.1.1l", + "hash": "sha256-C3o+XlnDSCf+DDp0t+yLrvMCuY+oAIjX+RU6oW+na9E=" + }, + "v111k": { + "version": "1.1.1k", + "hash": "sha256-iSoIdbmHKs0Eqf3nmx+UMHXV6hYkFd4wR8Mn3zP7ruU=" + }, + "v111j": { + "version": "1.1.1j", + "hash": "sha256-qvL8tXXN9kkbmKtIKav3ij3shAK4uB78jyPADUQ5gb8=" + }, + "v111i": { + "version": "1.1.1i", + "hash": "sha256-6L5qNf5B0QYDw8xjXpMontAL80t5Zxo6TeZPzuANUkI=" + }, + "v111h": { + "version": "1.1.1h", + "hash": "sha256-XJyod0vXsD5XhPJq6enm10nJ2iQ4VFB35rPXVaBlldk=" + }, + "v111g": { + "version": "1.1.1g", + "hash": "sha256-3bBHdPHjLwxJdR4htnIWrIeFLOsFa3UgmvJENABjbUY=" + }, + "v111f": { + "version": "1.1.1f", + "hash": "sha256-GGxr/m7PunpbSMR/ihZz0POw5bouJWAt0jtimXXaPzU=" + }, + "v111e": { + "version": "1.1.1e", + "hash": "sha256-aU9hrBHLUcm/c/VOdx/2AisDJ6Q7vfobLxneFmKm3L4=" + }, + "v111d": { + "version": "1.1.1d", + "hash": "sha256-HjqRvB+d/OAa8mAm+FbgZOq0yO4Kj0V7WuMLQLi3EfI=" + }, + "v111c": { + "version": "1.1.1c", + "hash": "sha256-9vswea0VB2FU7alBP+1Ch31mjnBp2bhzltCAT9s/TJA=" + }, + "v111b": { + "version": "1.1.1b", + "hash": "sha256-XFV7AjIwQT37B1bzE3oT5tcmg4zNFDCIitFb+ytD6ks=" + }, + "v111a": { + "version": "1.1.1a", + "hash": "sha256-/CATD4t8vS+5GLLxTi9CnhCcMd3Q+zj8XXHZ/+0/n0E=" + }, + "v111": { + "version": "1.1.1", + "hash": "sha256-KDaHWg+JwD0P30g5QVEmE6UM+0Idb9lLn0HXJ51Yaj0=" + }, + "v110l": { + "version": "1.1.0l", + "hash": "sha256-dKL3VsZP1zhqKRhNwDRPSDEZLWHcJIGpOkxd1yf0EUg=" + }, + "v110k": { + "version": "1.1.0k", + "hash": "sha256-76SWX093NXTWy9oc+HTbvkVascDU+QYRX4Z9MEREcLE=" + }, + "v110j": { + "version": "1.1.0j", + "hash": "sha256-Mb7GwgPOGo6T1ZlPTtMExjzPB2dhGLZjTt3tEq0bMkY=" + }, + "v110i": { + "version": "1.1.0i", + "hash": "sha256-67/IRKjIzA6l3BC4bJzpf0AYN/P6CMF7LNrcEYJTz5k=" + }, + "v110h": { + "version": "1.1.0h", + "hash": "sha256-WDVibN6emWVlhfx6qiMCpzp+E0C/jBT9Y1pixmgCpRc=" + }, + "v110g": { + "version": "1.1.0g", + "hash": "sha256-3k1QEmfaOTEJBcttyMYSH3osrUWncH9234KP4bhQc68=" + }, + "v110f": { + "version": "1.1.0f", + "hash": "sha256-EvdG8/JJOy852n7PY9fuGcasnsak/NjCKdqKUiyxJ2U=" + }, + "v110e": { + "version": "1.1.0e", + "hash": "sha256-V76GGJedgMkQcoz8mTab+XsqGr2PNmq2697ol1rTh0w=" + }, + "v110d": { + "version": "1.1.0d", + "hash": "sha256-fV67nol1ZUXBVv+cE88qpiFBk7AQpGijvHicPCj+YN8=" + }, + "v110c": { + "version": "1.1.0c", + "hash": "sha256-/ENkQaLgV1LTG05GEV64lwmiiu+W1P54ar6SQJsv1vU=" + }, + "v110b": { + "version": "1.1.0b", + "hash": "sha256-pF3gcr+b5N6kNyMKrwNgAPDmjGpmWTHFfna1sDbO9vc=" + }, + "v110a": { + "version": "1.1.0a", + "hash": "sha256-wuaW40KWzeLJ7F3NrZ5PBCzXA5MlkdOVw4neSIMCRCs=" + }, + "v110": { + "version": "1.1.0", + "hash": "sha256-9caf+awUcsgLho78HBwNjc/HRtKevlY94jZd1W29jII=" + }, + "v102u": { + "version": "1.0.2u", + "hash": "sha256-7NDG/7ST3QZwfTixS7TYwiiLtwM3NWBladj5D4lmnRY=" + }, + "v102t": { + "version": "1.0.2t", + "hash": "sha256-FMtGTv56xrVHmbNEVr1pVYp0mkkx7P2c+fcdeIHKx7w=" + }, + "v102s": { + "version": "1.0.2s", + "hash": "sha256-yr1clJKCXOW9I/PDru1ql/gUL2BtiT3yFkEfB9Grq5Y=" + }, + "v102r": { + "version": "1.0.2r", + "hash": "sha256-rlHQi7qKg5WOiUlG8VMD/4lNdcK4u9RKhStk4/4R0NY=" + }, + "v102q": { + "version": "1.0.2q", + "hash": "sha256-V0TPy87CsbSGKfc1QgO8Hl6bVGaZi7zMW1/N47GOtoQ=" + }, + "v102p": { + "version": "1.0.2p", + "hash": "sha256-UKmOB7Gonrj2qZR38mLfccb6e+93303IMCWihFyCfQA=" + }, + "v102o": { + "version": "1.0.2o", + "hash": "sha256-7D9clxS6D9RctOCHMB6xM2wxfg0gtXWhJQUEcOgInk0=" + }, + "v102n": { + "version": "1.0.2n", + "hash": "sha256-Nwurt18njDngxQ6MTnSTvA8Y22hnR4NBqDKpgv0VqP4=" + }, + "v102m": { + "version": "1.0.2m", + "hash": "sha256-jG/xXsazGbUHiPQserwokMCLpaHNzTgQ65CS3q2jew8=" + }, + "v102l": { + "version": "1.0.2l", + "hash": "sha256-zgcZW2WedfTh20NVKGAHAGHxVqmLs3tnKxAbpuPd8ww=" + }, + "v102k": { + "version": "1.0.2k", + "hash": "sha256-azl3xh8q7fD5Y2fc+1xuV4zzfnuNkTtOy2ZDw8uI2MA=" + }, + "v102j": { + "version": "1.0.2j", + "hash": "sha256-56/ykr4hwlnGryZGnHqbO6Jumrqv/TJePczJeFJWxDE=" + }, + "v102i": { + "version": "1.0.2i", + "hash": "sha256-kodIfRHJVFtu+yh823BTXU6bKE3RDVFEHZuZY9AA3m8=" + }, + "v102h": { + "version": "1.0.2h", + "hash": "sha256-HUAH5TqtlKWyAC/gRe57sLPZjxpH+LK8hR3NHHQzKRk=" + }, + "v102g": { + "version": "1.0.2g", + "hash": "sha256-t4Sxs5B845q/QJhwLa3mNlUiolOtFVLiZ6mg6JWUqjM=" + }, + "v102f": { + "version": "1.0.2f", + "hash": "sha256-kytO5N7ytDT4VDXZ4+GcqLqZzpoGWmFSS0KanV6bLpw=" + }, + "v102e": { + "version": "1.0.2e", + "hash": "sha256-4jzK/bdc/N54LaAVFzGqIYUZWsdF7qOEYTPy4FwOC/8=" + }, + "v102d": { + "version": "1.0.2d", + "hash": "sha256-Zxw2SHeFYopwM3TGUq0s6+pF+pIK5WgVFd8l2fLJqMg=" + }, + "v102c": { + "version": "1.0.2c", + "hash": "sha256-ADi6N/NaY2fFjxenp/aHlT74zk+WhLvexj5iUV7TaoM=" + }, + "v102b": { + "version": "1.0.2b", + "hash": "sha256-1dSIzJ8KB5dBladCcJTqPKuYAKTpAXi5iapiH7wjjj8=" + }, + "v102a": { + "version": "1.0.2a", + "hash": "sha256-FbY5PCADCqsCyOL+AkPLHR0YBi9sCV1nvKkYcdx/Mko=" + }, + "v102": { + "version": "1.0.2", + "hash": "sha256-jEi687q+DVBdFs/AzyclicZtNiQmQJghPbD7AANHKOk=" + }, + "v101u": { + "version": "1.0.1u", + "hash": "sha256-QxK0yhIVtvLJcAdQPYDbgNUVf3b499P+u+a0xW/yZzk=" + }, + "v101t": { + "version": "1.0.1t", + "hash": "sha256-Sm7kkaL9si5RnHb9wqYouzzsEnYs1FaGHSB5lsigcIg=" + }, + "v101s": { + "version": "1.0.1s", + "hash": "sha256-5+gdgvPNU4qwzbpJQAbUSqud2Wt/YjPOmXH7fHkW1RE=" + }, + "v101r": { + "version": "1.0.1r", + "hash": "sha256-eEvY01XtAc6YuBL4c/iyMT2mHffHtWd/zy5XsIY6M0Y=" + }, + "v101q": { + "version": "1.0.1q", + "hash": "sha256-s2WLhOnqYGpd7TyXKlUXzXhSgufqhrIMeKpLdzoEf7c=" + }, + "v101p": { + "version": "1.0.1p", + "hash": "sha256-vV7mgDFlwPtgu+y6ys8kTx+Q0qoNcTU69hDCkSHpsvE=" + }, + "v101o": { + "version": "1.0.1o", + "hash": "sha256-FuZ4xqBfJQKBHgdfLEBZrAHIeNCRycWFr8SevFQfexM=" + }, + "v101n": { + "version": "1.0.1n", + "hash": "sha256-NYGkBcy+D9H28X6kF3P3fN1R21XAHhtNhUnlGYgsbK8=" + }, + "v101m": { + "version": "1.0.1m", + "hash": "sha256-CV8LewkRbAxVJkIgiAWNx+bgAKoU0irMpqTiurzf73Q=" + }, + "v101l": { + "version": "1.0.1l", + "hash": "sha256-ss9NSP5dSfJAxhyeYkGTpvIyte0LrwEGgeclljxA0dQ=" + }, + "v101k": { + "version": "1.0.1k", + "hash": "sha256-j5+urrrQiOdy9O9eOCUtRyvk2HjGs6JxjBCk/OvnpBw=" + }, + "v101j": { + "version": "1.0.1j", + "hash": "sha256-G2DKh4m6bwPo7yDaIpO43BMcOdg4FOd1Bp8C0mNU7fM=" + }, + "v101i": { + "version": "1.0.1i", + "hash": "sha256-PBefRsp3BppqC6xwISqbO4OLL2YSnLUtVog3/HnY/Mc=" + }, + "v101h": { + "version": "1.0.1h", + "hash": "sha256-nRyKmDaqY+LGrbaEGGy9Q3HJ6dzAHW47tEer8tTT0JM=" + }, + "v101g": { + "version": "1.0.1g", + "hash": "sha256-U8uBjDuQ5QeoNI9PXq7bBdi/5TWKq7UItyY8xnDD4Cg=" + }, + "v101f": { + "version": "1.0.1f", + "hash": "sha256-bMKoCxfWTea3usmFdF/aupcdVP/X0401VvmY18DJy1o=" + }, + "v101e": { + "version": "1.0.1e", + "hash": "sha256-908V6Mj/Eao9W7XydtIC7BjXJG6V+WHbdgVBmcacGuM=" + }, + "v101d": { + "version": "1.0.1d", + "hash": "sha256-iKQj+bCKmUBUWDaRuWiBWHVYDhLfdU6IHXz+nxvR9J0=" + }, + "v101c": { + "version": "1.0.1c", + "hash": "sha256-Kp6zzU6LEU65F5wNOITWFljn2Oi/SYR5il9b1I4yXr4=" + }, + "v101b": { + "version": "1.0.1b", + "hash": "sha256-EYe/LVzfCyhrlRv1x3eql4Vc19sk/blgTLVXyLHXNks=" + }, + "v101a": { + "version": "1.0.1a", + "hash": "sha256-00h+CdiRx3LPlGJzo7sMpHR555Qb5tgiJ0Mg58/MNhs=" + }, + "v101": { + "version": "1.0.1", + "hash": "sha256-TZ8KWUqaibKOGgSpUEwEEE9lCO4nrR4O/dF6em277u4=" + }, + "v100t": { + "version": "1.0.0t", + "hash": "sha256-WrbjSMbCqV1FfnoA4KplO/x+tN97JOfJq2MWOsApkJc=" + }, + "v100s": { + "version": "1.0.0s", + "hash": "sha256-+4Ofdbm3GVoKrzB8oGS0NY7bloqVJMvfCp5W1jLyens=" + }, + "v100r": { + "version": "1.0.0r", + "hash": "sha256-ZTizOhuVaByGrIxcxU0ig18PClv0LubfQTjGctfnXxc=" + }, + "v100q": { + "version": "1.0.0q", + "hash": "sha256-Iw3BnqM7h4NsOIwRF6cfjrU5y/i+Qdk8O2yKauKd7Dk=" + }, + "v100p": { + "version": "1.0.0p", + "hash": "sha256-t0XRHxlTFiCi50AhZ9VIRdJT8to+UjwtCVBZWu8QT8g=" + }, + "v100o": { + "version": "1.0.0o", + "hash": "sha256-O29apPqlGQ8pZHzOaJmxRvWWhQPEGImAxDfKbxHYyP0=" + }, + "v100n": { + "version": "1.0.0n", + "hash": "sha256-OJXrWxwroHlAbQgTQNnh3AZPT79ND0HVPO/RVK3vKqI=" + }, + "v100m": { + "version": "1.0.0m", + "hash": "sha256-Ik27+u461zN2ZeJOq1FsZ0RtUIE3mkCy9iPPeAHmct4=" + }, + "v100l": { + "version": "1.0.0l", + "hash": "sha256-KgcuZ9njrpAFSMQ9eTYwW6V2AlvQg9HpH/FNaN7R/ew=" + }, + "v100k": { + "version": "1.0.0k", + "hash": "sha256-KYKy6Wl6hXszbFwbG3tGN0flwdVg8l9qzpU2V5Gx79E=" + }, + "v100j": { + "version": "1.0.0j", + "hash": "sha256-Ym+4/LPrfpZu2+cVU/+ZPRN/boqHsFBRo2leYhCYuK8=" + }, + "v100i": { + "version": "1.0.0i", + "hash": "sha256-VIJi0Vd3xQS+Grm7j6vvHhSj3lSDemWTyPQD3YQ9Xlc=" + }, + "v100h": { + "version": "1.0.0h", + "hash": "sha256-fj38IapX7TPqZzFwBT0ZITIoA7impiSk8NLkwwi9QY0=" + }, + "v100g": { + "version": "1.0.0g", + "hash": "sha256-kFEGoVBefZ98Nu6BQI06o9QarCkalgPQwpDJUwyS/Cw=" + }, + "v100f": { + "version": "1.0.0f", + "hash": "sha256-+vHqsO+F/Ww77KJxw1azG1zIMeLGt/I89nLnq0aA/eE=" + }, + "v100e": { + "version": "1.0.0e", + "hash": "sha256-42HcJ3VzP7hN57W/e1BHeLdyhp6Pe/rAsouTXL9zgPc=" + }, + "v100d": { + "version": "1.0.0d", + "hash": "sha256-klEdHwyqopjbolBCb459XQCycYR4htGtxiQid41jINs=" + }, + "v100c": { + "version": "1.0.0c", + "hash": "sha256-9zGzbePtqjYRea5vRJZoskijYONOMekpAtl26bnWBOs=" + }, + "v100b": { + "version": "1.0.0b", + "hash": "sha256-TntOL7M+4tl8XhQ1YatJXbv8CPCoY+YXoMetyhkBczE=" + }, + "v100a": { + "version": "1.0.0a", + "hash": "sha256-GKm9H8ArjvkN3tNPr6qQibqq/vJ4oZ/E6JwqsNz3D2M=" + }, + "v100": { + "version": "1.0.0", + "hash": "sha256-G7+a/FpiFRIawJQUfQqEF4KU/kw9CiMXMQOP03F7p8o=" + }, + "v098zh": { + "version": "0.9.8zh", + "hash": "sha256-8dnz7RuFqC7PgNDi04nh/aP8qaTboL8Hrb8jHhpeL9Y=" + }, + "v098zg": { + "version": "0.9.8zg", + "hash": "sha256-BlAAYGOZMORxBQR09Tf80o7JNK+S7igteLUkYPvo9YA=" + }, + "v098zf": { + "version": "0.9.8zf", + "hash": "sha256-1SRaKRKJhBkqzFsfwB43Qpt6AcU8rcsmReVGcYswDts=" + }, + "v098ze": { + "version": "0.9.8ze", + "hash": "sha256-7j2mAoJul1tH5Neviie+gljBYIdhlImMWIgeq4FLVbg=" + }, + "v098zd": { + "version": "0.9.8zd", + "hash": "sha256-WSZtz7C+D75hge3q0ESsPtr4O8WJkfJk3PUysB1THuM=" + }, + "v098zc": { + "version": "0.9.8zc", + "hash": "sha256-RhzGlPKecvWcIufqYb9EZxpfwviz/C7qyJcUt76RWIE=" + }, + "v098zb": { + "version": "0.9.8zb", + "hash": "sha256-lQ4imCN94WlxaN69QoYL9B6tYY4MA9yaOlbiMljkNb4=" + }, + "v098za": { + "version": "0.9.8za", + "hash": "sha256-zcuY0PvAJsp5ixeRkzQxAnHTpZNVT/1qWWWbkiL9Tkg=" + }, + "v098y": { + "version": "0.9.8y", + "hash": "sha256-u+zxNJXmEpNuOphgwpwHAUE1ZLepZL93GjV16qhnzuM=" + }, + "v098x": { + "version": "0.9.8x", + "hash": "sha256-fODH8sRRBwtEl+p8pvI+umzvGlbbLobkM/ZZJqe8dJc=" + }, + "v098w": { + "version": "0.9.8w", + "hash": "sha256-U3QR/iz+JJqKW5iz+AmgftX5E7lKIWs8UQ/TUzGORZM=" + }, + "v098v": { + "version": "0.9.8v", + "hash": "sha256-cBrE29J7kjeRmyFLU7wNCOXhRI8tD74cgEeSk9I3mmU=" + }, + "v098u": { + "version": "0.9.8u", + "hash": "sha256-BUjkuRcaYty76F5j2biXo13nGOD+GbP+VgAsj1o7pYc=" + }, + "v098t": { + "version": "0.9.8t", + "hash": "sha256-a5s+9eqULXtcPOI+npKdjuzQkOgfGNh606ry65oiahQ=" + }, + "v098s": { + "version": "0.9.8s", + "hash": "sha256-7cljm+ry1eI52OXJ0v4ZWeZyal1/irhDBhODX0Yj+bo=" + }, + "v098r": { + "version": "0.9.8r", + "hash": "sha256-QrI2j3hrBe076EaDjc4Sa06OPbqPsuDOgxAt8owQL60=" + }, + "v098q": { + "version": "0.9.8q", + "hash": "sha256-1SKz6KK0joO6HhQtcgXqygE1ihN7tY6NZFg1dOaX/9c=" + }, + "v098p": { + "version": "0.9.8p", + "hash": "sha256-smReKiryIfojC172qiuTiKh1gBt0y927Fr5Vf4D0UkI=" + }, + "v098o": { + "version": "0.9.8o", + "hash": "sha256-vvraGsOBmx0xffgZe16C7HaLOdJQ/L74Hisct/Fl1Eg=" + }, + "v098n": { + "version": "0.9.8n", + "hash": "sha256-sBq8KDdrhmUV31jxsATahFMWYpF4PU50d82omwAMHwE=" + }, + "v098m": { + "version": "0.9.8m", + "hash": "sha256-NgNxYCgc9Jd9lk5APSvAaA+8oKf/n2XjMTbXX64Sy1s=" + }, + "v098l": { + "version": "0.9.8l", + "hash": "sha256-7NBU6e7S6cFiC6FSV+b8TYgsmkrqZj0jt2niE43oyRo=" + }, + "v098k": { + "version": "0.9.8k", + "hash": "sha256-fnzU85dBmbcp5uOgrwi9Qnn94DcKESDBo7NRqwkMYQE=" + }, + "v098j": { + "version": "0.9.8j", + "hash": "sha256-cTEkIELb1jH72DQ29CrqF3Xnwy9Yf6StpaAd9MOujos=" + }, + "v098i": { + "version": "0.9.8i", + "hash": "sha256-6Pxfz7cV/+klspgqqcooeDKpNJXX//A/F/ZEnwcycYw=" + }, + "v098h": { + "version": "0.9.8h", + "hash": "sha256-Ik4co67tqKzHLlxIs0hDkEudWFqq201aFVJMJfbGoc4=" + }, + "v098g": { + "version": "0.9.8g", + "hash": "sha256-DiaIaEXelXFsnxubdcDgbp1AddK9yeEVBOql9+6QHPA=" + }, + "v098f": { + "version": "0.9.8f", + "hash": "sha256-vlr9OG9des/wGayvRs2q2JqLQsyc7oXRrbJ3RifzK0I=" + }, + "v098e": { + "version": "0.9.8e", + "hash": "sha256-QU6EKLlfvFFweWX9oxOQSX0FgpA1ZCa/4IS0lGSmA0A=" + }, + "v098d": { + "version": "0.9.8d", + "hash": "sha256-AiGUlEzCDa2RfIbJFtuKTgBQ3y3pG5tnQN3U+y2vF10=" + }, + "v098c": { + "version": "0.9.8c", + "hash": "sha256-iW94MMGSFojyLG/k+z17dRic7915rMpfsMrStZkTkEg=" + }, + "v098b": { + "version": "0.9.8b", + "hash": "sha256-ae/tYnWUL5MS3mHPaarvErBsEvaxDzGWcs4CanVvZcA=" + }, + "v098a": { + "version": "0.9.8a", + "hash": "sha256-MPj2H7Exb0+1FBDHQLSHm44mtBfI2HDkhhRLELgEHHM=" + }, + "v098": { + "version": "0.9.8", + "hash": "sha256-wRVLimpFFodA7MnzjUbfrUDrJ65Rq9doM6GNTJpktR0=" + }, + "v097m": { + "version": "0.9.7m", + "hash": "sha256-yYuXA4h+LdpiF7kUBdDZSIP3xn4gX8TXqBu2kNLhBXI=" + }, + "v097l": { + "version": "0.9.7l", + "hash": "sha256-ftGYWckuHBPp+O1cPeNcPUjkW/8bUv/EOEXMDIVvo9E=" + }, + "v097k": { + "version": "0.9.7k", + "hash": "sha256-m7znXVXAP61H98peZ5D6zKSyA7KMbDNCjRpHHvc+5iI=" + }, + "v097j": { + "version": "0.9.7j", + "hash": "sha256-ZabojDOXy2jRnbtXbs+fnY3EFCOqmsMCXNKeOYcnRGA=" + }, + "v097i": { + "version": "0.9.7i", + "hash": "sha256-L92SNfwIxDU4ddCYF0GUfy+p+INfBNl8MEYcwUqYbdA=" + }, + "v097h": { + "version": "0.9.7h", + "hash": "sha256-tjjDhTEtK9ao8BdsJgW9YTyXjlVdPS14AnDhYIfyDeE=" + }, + "v097g": { + "version": "0.9.7g", + "hash": "sha256-5+GihxQd0b5/S0/t1U7Cn6kEZV7XahOsh65po/x2sGI=" + }, + "v097f": { + "version": "0.9.7f", + "hash": "sha256-Nn2z7nXmMySyCQB0sSqBcCGLps7ziydWOQ0IlBwWJgg=" + }, + "v097e": { + "version": "0.9.7e", + "hash": "sha256-JRIbXb0rgwkpUZMl4DMIbORYYc/y0AANko9IJhseC3w=" + }, + "v097d": { + "version": "0.9.7d", + "hash": "sha256-Bf39B+iBz+tYTneRnt3HTaw/laziOsvqAIwq+Ut2wUc=" + }, + "v097c": { + "version": "0.9.7c", + "hash": "sha256-wLjHD9Z3xIGwL7nXsCDqVJZrf5tOmwtrK+fpAFLlZQY=" + }, + "v097b": { + "version": "0.9.7b", + "hash": "sha256-LhniMMNuwXJzavdugx+aYYaAnDYzVXSPTlFAahEvCDE=" + }, + "v097a": { + "version": "0.9.7a", + "hash": "sha256-1cVx3PPCLCrKa50tL5oILmDgfu45eqNFIxgXfR9QlaI=" + }, + "v097": { + "version": "0.9.7", + "hash": "sha256-CoBRPltBb69HBMbi2/3hG0gmlHm+QX8JIKooNg0lkQA=" + }, + "v096m": { + "version": "0.9.6m", + "hash": "sha256-p3jAe13iSOGrizc0O8xgM/s62VXN1XmV6awKRM6UL9Y=" + }, + "v096l": { + "version": "0.9.6l", + "hash": "sha256-JyPnyLT66JkY89QKbRq53WGATe2Zh/aOAJr+i3B43Zc=" + }, + "v096k": { + "version": "0.9.6k", + "hash": "sha256-eLPwYwnagXHFwGuq/TAh3I/TMNYoxTXQhdWqcagROtE=" + }, + "v096j": { + "version": "0.9.6j", + "hash": "sha256-PPct3ugGSOpFZ7Aw0C1bMdLhCVuDCD/tRO3boYWpkwM=" + }, + "v096i": { + "version": "0.9.6i", + "hash": "sha256-59i6mRAKUQetrEZd6MsVzTX9ScxtwbEnMWmAhUVlg1k=" + }, + "v096": { + "version": "0.9.6", + "hash": "sha256-UhW2cMJnTfmmQlZepopn5tlV2O/MoaobTmpbT9J0Tug=" } } \ No newline at end of file -- cgit v1.3.1 From ba11d870fbef49ac9fc1b738a95c5e86764fd8cc Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 18:25:01 +0200 Subject: Fix broken nettle. --- fetchReleases.py | 9 ++++----- nix/nettle_pkg_versions.json | 5 ----- 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index 4fe4e53..eb8afd6 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -129,10 +129,7 @@ def fetch_openssl(): tags = [release["tag_name"] for release in resp_releases.json() if not release["draft"] and not release["prerelease"]] tags += [tag_ref["ref"].split("/")[-1] for tag_ref in resp_tags.json() if tag_ref["ref"].startswith("refs/tags/openssl-") or tag_ref["ref"].startswith("refs/tags/OpenSSL_")] - tags = list(filter(lambda tag: "FIPS" not in tag and "reformat" not in tag and "alpha" not in tag and "beta" not in tag and "pre" not in tag, tags)) - for tag in tags: - print(tag) - + tags = list(filter(lambda tag: "FIPS" not in tag and "reformat" not in tag and "alpha" not in tag and "beta" not in tag and "pre" not in tag, tags)) single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { {{ pkg }} = { version="{{ version }}"; hash="{{ digest }}"; }; @@ -140,7 +137,6 @@ def fetch_openssl(): renders = [] versions = {} for tag in tags: - print(tag) if tag.startswith("OpenSSL_"): match = re.match(r"OpenSSL_(?P\d+)_(?P\d+)_(?P\d+)(?P.*)", tag) sort_version = f"{match['major']}.{match['minor']}.{match['patch']}{'+' + match['ext'] if match['ext'] else ''}" @@ -330,6 +326,9 @@ def fetch_nettle(): for tag in resp.json(): if tag['name'] == 'release_nettle_0.2.20010617': continue + if tag['name'] == 'nettle_3.5_release_20190626': + # broken upstream! https://git.lysator.liu.se/nettle/nettle/-/commit/ee5d62898cf070f08beedc410a8d7c418588bd95 + continue version = tag['name'].split('_')[1] # NOTE skip release candidates if re.search(r'\drc\d', version): diff --git a/nix/nettle_pkg_versions.json b/nix/nettle_pkg_versions.json index dd9eccc..7e80a1b 100644 --- a/nix/nettle_pkg_versions.json +++ b/nix/nettle_pkg_versions.json @@ -39,11 +39,6 @@ "tag": "nettle_3.5.1_release_20190627", "hash": "sha256-dcyhmYdhsC4W8ttW2lKZKu9iK/VaO0XsU4vC7trclBk=" }, - "v3_5": { - "version": "3.5", - "tag": "nettle_3.5_release_20190626", - "hash": "sha256-Qy2Y3NNBy9BjqWMCVSQSI2jB8u6cchu2jXcdXjRnS08=" - }, "v3_4_1": { "version": "3.4.1", "tag": "nettle_3.4.1_release_20181204", -- cgit v1.3.1 From fc2ad83ac0c59ca1b663a769b36a509689c519f4 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 18:40:01 +0200 Subject: Fix mbedtls v2.26.0. --- flake.nix | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 67d1331..d1d8944 100644 --- a/flake.nix +++ b/flake.nix @@ -175,7 +175,20 @@ }; patches = { - "v2.25.0" = ./nix/mbedtls-printf.patch; + "v2.25.0" = pkgs.fetchpatch { + url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/29b641688d038143a193c69eac4d6e8eacc934d8.patch"; + hash = "sha256-i8Kn+QVCeJbrm0z6d60FbzCZ5t0oP2EhdYw8w3nV8b8="; + }; + "v2.26.0" = [ + (pkgs.fetchpatch { + url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/2065a8d8af27c6cb1e40c9462b5933336dca7434.patch"; + hash = "sha256-gLMiozagnzARt6jRhklUYqZgdvrKySBXTkuQ2Xm3lJs="; + }) + (pkgs.fetchpatch { + url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/29b641688d038143a193c69eac4d6e8eacc934d8.patch"; + hash = "sha256-i8Kn+QVCeJbrm0z6d60FbzCZ5t0oP2EhdYw8w3nV8b8="; + }) + ]; "v3.2.0" = ( pkgs.fetchpatch { url = "https://github.com/Mbed-TLS/mbedtls/commit/c2a938711085813eae11d99550b280c416a8242e.patch"; -- cgit v1.3.1 From 6c5776d523aca9ab86697402177342df06bc0e37 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 20:08:13 +0200 Subject: Fix many more OpenSSLs. --- flake.nix | 42 ++++++++++++++++++++++++------------------ 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/flake.nix b/flake.nix index d1d8944..93deff9 100644 --- a/flake.nix +++ b/flake.nix @@ -59,17 +59,23 @@ if version == null then (pkgs.openssl.override { static = true; }) else - (pkgs.openssl.override { static = true; }).overrideAttrs ( - final: prev: rec { - inherit version; - src = pkgs.fetchurl { - url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; - inherit hash; - }; - # FIXME Removing patches might cause unwanted things; this should be version based! - patches = [ ]; - } - ); + (pkgs.openssl.override { + static = true; + enableKTLS = false; + }).overrideAttrs + ( + final: prev: rec { + inherit version; + src = pkgs.fetchurl { + url = "https://www.openssl.org/source/openssl-${version}.tar.gz"; + inherit hash; + }; + # FIXME Removing patches might cause unwanted things; this should be version based! + patches = [ ]; + + configureFlags = if pkgs.lib.versionOlder version "1.1.2" then (pkgs.lib.lists.remove "no-module" prev.configureFlags) else prev.configureFlags; + } + ); botan2Builder = { version ? null, @@ -176,17 +182,17 @@ patches = { "v2.25.0" = pkgs.fetchpatch { - url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/29b641688d038143a193c69eac4d6e8eacc934d8.patch"; - hash = "sha256-i8Kn+QVCeJbrm0z6d60FbzCZ5t0oP2EhdYw8w3nV8b8="; + url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/29b641688d038143a193c69eac4d6e8eacc934d8.patch"; + hash = "sha256-i8Kn+QVCeJbrm0z6d60FbzCZ5t0oP2EhdYw8w3nV8b8="; }; "v2.26.0" = [ (pkgs.fetchpatch { - url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/2065a8d8af27c6cb1e40c9462b5933336dca7434.patch"; - hash = "sha256-gLMiozagnzARt6jRhklUYqZgdvrKySBXTkuQ2Xm3lJs="; + url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/2065a8d8af27c6cb1e40c9462b5933336dca7434.patch"; + hash = "sha256-gLMiozagnzARt6jRhklUYqZgdvrKySBXTkuQ2Xm3lJs="; }) - (pkgs.fetchpatch { - url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/29b641688d038143a193c69eac4d6e8eacc934d8.patch"; - hash = "sha256-i8Kn+QVCeJbrm0z6d60FbzCZ5t0oP2EhdYw8w3nV8b8="; + (pkgs.fetchpatch { + url = "https://github.com/Mbed-TLS/mbedtls/pull/4237/commits/29b641688d038143a193c69eac4d6e8eacc934d8.patch"; + hash = "sha256-i8Kn+QVCeJbrm0z6d60FbzCZ5t0oP2EhdYw8w3nV8b8="; }) ]; "v3.2.0" = ( -- cgit v1.3.1 From 19f304e159135a6f80f7d08b885696bde8ebc737 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 21:22:36 +0200 Subject: More OpenSSL. --- flake.nix | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/flake.nix b/flake.nix index 93deff9..cb97af9 100644 --- a/flake.nix +++ b/flake.nix @@ -73,8 +73,20 @@ # FIXME Removing patches might cause unwanted things; this should be version based! patches = [ ]; - configureFlags = if pkgs.lib.versionOlder version "1.1.2" then (pkgs.lib.lists.remove "no-module" prev.configureFlags) else prev.configureFlags; - } + configureFlags = + if pkgs.lib.versionOlder version "1.1.2" then + (pkgs.lib.lists.remove "no-module" prev.configureFlags) + else + prev.configureFlags; + + preConfigure = + if pkgs.lib.versionOlder version "1.1.0h" && pkgs.lib.versionAtLeast version "1.1.0" then + '' + substituteInPlace Configure test/build.info test/run_tests.pl test/recipes/90-test_fuzz.t test/recipes/80-test_ssl_new.t test/recipes/40-test_rehash.t util/process_docs.pl --replace-fail "qw/glob/" "qw/bsd_glob/" + '' + else + ""; + } ); botan2Builder = { -- cgit v1.3.1 From cb8a0e0fe322fb45d7d2fc40ebe2af546ec63261 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 22:36:32 +0200 Subject: OpenSSL 1.1.0. --- flake.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index cb97af9..7df4847 100644 --- a/flake.nix +++ b/flake.nix @@ -82,7 +82,10 @@ preConfigure = if pkgs.lib.versionOlder version "1.1.0h" && pkgs.lib.versionAtLeast version "1.1.0" then '' - substituteInPlace Configure test/build.info test/run_tests.pl test/recipes/90-test_fuzz.t test/recipes/80-test_ssl_new.t test/recipes/40-test_rehash.t util/process_docs.pl --replace-fail "qw/glob/" "qw/bsd_glob/" + substituteInPlace Configure test/build.info test/run_tests.pl util/process_docs.pl --replace-warn "qw/glob/" "qw/bsd_glob/" + for t in test/recipes/*.t; do + substituteInPlace "$t" --replace-quiet "qw/glob/" "qw/bsd_glob/" + done '' else ""; -- cgit v1.3.1 From 280630ad39983c5e646938d4711bfb0d277cf3fa Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 22:36:45 +0200 Subject: Crypto++ 6.1.0. --- nix/cryptoppshim.nix | 10 +++++++++- .../cz/crcs/ectester/standalone/libs/jni/cpp_utils.hpp | 11 ++++++++++- .../cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp | 6 +++++- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/nix/cryptoppshim.nix b/nix/cryptoppshim.nix index f526275..2989066 100644 --- a/nix/cryptoppshim.nix +++ b/nix/cryptoppshim.nix @@ -1,5 +1,8 @@ { pkgs, cryptopp }: with pkgs; +let + dotVersion = builtins.replaceStrings ["_"] ["."] cryptopp.version; +in stdenv.mkDerivation { name = "Crypto++ Shim"; src = ../standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni; @@ -14,7 +17,12 @@ stdenv.mkDerivation { make cryptopp ''; - CRYPTOPP_CXXFLAGS = "-DECTESTER_CRYPTOPP_${cryptopp.version}=1"; + CRYPTOPP_CXXFLAGS = '' + -DECTESTER_CRYPTOPP_${cryptopp.version}=1 \ + -DECTESTER_CRYPTOPP_MAJOR=${pkgs.lib.versions.major dotVersion} \ + -DECTESTER_CRYPTOPP_MINOR=${pkgs.lib.versions.minor dotVersion} \ + -DECTESTER_CRYPTOPP_PATCH=${pkgs.lib.versions.patch dotVersion} \ + ''; installPhase = '' mkdir --parents $out/lib diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cpp_utils.hpp b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cpp_utils.hpp index ed26c01..0e74ee0 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cpp_utils.hpp +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cpp_utils.hpp @@ -47,4 +47,13 @@ void add_ka(JNIEnv *env, const std::string &type, const std::string &klass, jobj /** * Add a SignatureSpi class to this provider. */ -void add_sig(JNIEnv *env, const std::string &type, const std::string &klass, jobject provider, jmethodID put_method); \ No newline at end of file +void add_sig(JNIEnv *env, const std::string &type, const std::string &klass, jobject provider, jmethodID put_method); + +/** + * Version handling. + */ +#define VERSION_GT(lib,a,b,c) ((ECTESTER_##lib##_MAJOR == a && ECTESTER_##lib##_MINOR == b && ECTESTER_##lib##_PATCH > c) || (ECTESTER_##lib##_MAJOR == a && ECTESTER_##lib##_MINOR > b) || (ECTESTER_##lib##_MAJOR > a)) +#define VERSION_EQ(lib,a,b,c) (ECTESTER_##lib##_MAJOR == a && ECTESTER_##lib##_MINOR == b && ECTESTER_##lib##_PATCH == c) +#define VERSION_GE(lib,a,b,c) (VERSION_GT(lib,a,b,c) || VERSION_EQ(lib,a,b,c)) +#define VERSION_LT(lib,a,b,c) !(VERSION_GE(lib,a,b,c)) +#define VERSION_LE(lib,a,b,c) !(VERSION_GT(lib,a,b,c)) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp index 2cff58c..c194bf6 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp @@ -163,7 +163,11 @@ static std::vector get_all_curve_oids() { } static std::string oid_to_str(const OID &oid) { +#if VERSION_LT(CRYPTOPP, 8, 0, 0) + const std::vector& oid_values = oid.m_values; +#else const std::vector& oid_values = oid.GetValues(); +#endif std::stringstream ss; for (size_t i = 0; i < oid_values.size(); ++i) { if(i != 0) @@ -839,4 +843,4 @@ JNIEXPORT jboolean JNICALL Java_cz_crcs_ectester_standalone_libs_jni_NativeSigna } // unreachable return JNI_FALSE; -} \ No newline at end of file +} -- cgit v1.3.1 From e631d3f9ef7cebbea93ed14099d5aab2b3773c10 Mon Sep 17 00:00:00 2001 From: J08nY Date: Thu, 15 Aug 2024 22:40:57 +0200 Subject: Fix cryptopp 7.0.0. --- .../main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp index c194bf6..a7eb6a6 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp @@ -163,7 +163,7 @@ static std::vector get_all_curve_oids() { } static std::string oid_to_str(const OID &oid) { -#if VERSION_LT(CRYPTOPP, 8, 0, 0) +#if VERSION_LT(CRYPTOPP, 7, 0, 0) const std::vector& oid_values = oid.m_values; #else const std::vector& oid_values = oid.GetValues(); -- cgit v1.3.1 From 7ca62947e95044354e3e09bfcda213a851f140af Mon Sep 17 00:00:00 2001 From: J08nY Date: Fri, 16 Aug 2024 00:02:00 +0200 Subject: Pull older BoringSSL versions, not 100 newest. --- fetchReleases.py | 8 +- nix/boringssl_pkg_versions.json | 684 ++++++++++++++++++++++------------------ 2 files changed, 390 insertions(+), 302 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index eb8afd6..dc287fc 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -212,6 +212,7 @@ def fetch_gcrypt(): def fetch_boringssl(): pkg = "boringssl" + upto = "76bb1411acf5cf6935586182a3a037d372ed1636" single_version_template = env.from_string("""{{ flat_version }} = buildECTesterStandalone { {{ pkg }} = { rev="{{ rev }}"; hash="{{ digest }}"; }; @@ -228,7 +229,10 @@ def fetch_boringssl(): output = sp.check_output(["git", "-C", str(repodir), "--git-dir", str(gitdir / ".git"), "log", "--pretty=format:%H"]) refs = output.decode().split('\n') - for i, rev in enumerate(refs[:100]): + upto_index = refs.index(upto) + + # pick roughly 100 commits evenly spaced from the "upto" commit + for i, rev in enumerate(refs[upto_index:0:-40]): sp.run(["git", "-C", str(repodir), "--git-dir", str(gitdir / ".git"), "checkout", rev]) digest = sp.check_output(["nix", "hash", "path", str(repodir)]).decode().strip() print(f"{i + 1: 4d}:{rev}:{digest}") @@ -239,7 +243,7 @@ def fetch_boringssl(): versions[f"r{abbrev_commit}"] = { "rev": rev, "hash": digest, - "sort": i + "sort": -i } serialize_versions(pkg, renders, versions) diff --git a/nix/boringssl_pkg_versions.json b/nix/boringssl_pkg_versions.json index adb6afa..d8fefc7 100644 --- a/nix/boringssl_pkg_versions.json +++ b/nix/boringssl_pkg_versions.json @@ -1,402 +1,486 @@ { - "r8e6aa7f3": { - "rev": "8e6aa7f39f4357a6ad15944884f72db8d25b9dff", - "hash": "sha256-Tdm9SExUr/YsxIbV9GsUqlTZpFZMAAlbUv/u7+GuE+M=" + "r76bb1411": { + "rev": "76bb1411acf5cf6935586182a3a037d372ed1636", + "hash": "sha256-f3wfLZ8caYOETpvy8olsED+PwEFLUbYaayZNOcEvGB8=" }, - "r35a91094": { - "rev": "35a910949d684aea8b86a8c42db76c4f43e31a96", - "hash": "sha256-vgtsVwEspe5gUDOwOHrchvwjfVC9lM4Ks0eFFQrzDMw=" + "rd17d1dae": { + "rev": "d17d1dae84ecf76da3a924facdfe1d8c2d4ac578", + "hash": "sha256-nPKFto60FViG55WK87b87r55wYc3pi1rwUsOZTikAjg=" }, - "r3efe2eb9": { - "rev": "3efe2eb9e3dfb49cb110c53e3430caeae4599f52", - "hash": "sha256-i2xw3iE1EGNxWd43qKDum0z7Krfp30WqIoICQD4R45I=" + "r2df010e4": { + "rev": "2df010e4f4eae6806cd1d855b63c3891116f065d", + "hash": "sha256-ohiRSNRSp8DhrcwVd3+w7OEIsLcddwSqonSeSUruIq0=" }, - "re7d76da9": { - "rev": "e7d76da920a1bd79b6ebc77e75b407cdf0a58962", - "hash": "sha256-mb7io8ljofKPKD4jlZjfqk8+SjiMrlLUrnWod2b9/v0=" + "r8d5f9da2": { + "rev": "8d5f9da2e36b593a098200bd332fd9e51f0bed54", + "hash": "sha256-YanXypsEr46jzSKJvNLEuNwlE3076vyyb5ZEROTbeLg=" }, - "rd34f540e": { - "rev": "d34f540e57394de22a1599c3c5d852519d388d6c", - "hash": "sha256-4ErkViNNPnrqzoXjiTA0yRM22XhNIMsc6fLpBcVjjE0=" + "r0efa7592": { + "rev": "0efa7592e3fb2ae647518a82ab19679b7c933d99", + "hash": "sha256-fLF4sd2eRYUvpGTwHMOElRJ8mZXMYouwq+0a4WSJYl0=" }, - "r4d50a595": { - "rev": "4d50a595b49a2e7b7017060a4d402c4ee9fe28a2", - "hash": "sha256-nuPaIVPLUxQVrjOx5kfeWOq8XZfrP+wwnZc8gH/diGA=" + "r52940c49": { + "rev": "52940c494517b1256d9569da0c2aefd018518348", + "hash": "sha256-arL/WA6dFWrdKGE3hBN8E9RNj5jLsBIZKDCxAj3A0IQ=" }, - "r8a0da669": { - "rev": "8a0da669a08b6c6b805fd7ec9d1e67694fda3711", - "hash": "sha256-kxx37r693eFZFyjTssS2KrSGYBjYb4hjNljc1wazAbc=" + "rf6d64efd": { + "rev": "f6d64efd1985d4668e084cabe03e41c3574b494f", + "hash": "sha256-JTxe75Z7ZZmJKz0L5qlRCEdPA5hvX/LEat9gkBEOXpI=" }, - "r1d24e04c": { - "rev": "1d24e04c7143171ae2010c842e3e1438510fd1c0", - "hash": "sha256-fgsqIdp4ua4G1bpZflD/eRk7OLh+jlBn3gKmKoa5Qbc=" + "rd5c565a9": { + "rev": "d5c565a98d4d036db91d34810e39fb116bf38c56", + "hash": "sha256-fYNraa7yy6ZgOvrjs01ld7pfIWIOpDGeFKCkZ5lTrcs=" }, - "r6b36ad2b": { - "rev": "6b36ad2bd6001f17a997b7a1e0ab254b001438ef", - "hash": "sha256-bwu01bczIOLU93LYOJXRU0bZ5+a14eqEo8G6EVaXXzY=" + "r2ddc461a": { + "rev": "2ddc461a3f319a3d704891bde0a819959b9437cc", + "hash": "sha256-QjZ9Ior1bbI8k3SeRpkILwcOiTkdRKbBUFJq3qZUDy8=" }, - "r03d1b7c5": { - "rev": "03d1b7c544851d9f44df1e9ff21839742e08c819", - "hash": "sha256-bRmRC4iO1TdyKmb98inr9XNB0hna9z7iZg3CGEQPwIA=" + "rfc2d78dd": { + "rev": "fc2d78dd1e900e43be1812de1b1e1d4083267a54", + "hash": "sha256-8aR8nDOVgKhBKlgRNuvmhhEi+/w/aIi7pex7drxkclE=" }, - "rb6bca9c6": { - "rev": "b6bca9c6dde177f641137d2991aa677997c54c67", - "hash": "sha256-Qo/cW+FSCDoEDZClVZmlHurz3CbVN3iqYmpJwmANFcI=" + "rbf833c34": { + "rev": "bf833c346d532558a4c1c98940fa42e4e80a0a02", + "hash": "sha256-BlGzWt1dSoTUCJOI8Eis6BlMy1V2o2Nqufy3Mdz7xwU=" }, - "rb8912d71": { - "rev": "b8912d713cb82a748bbe63f28f28b17632c70964", - "hash": "sha256-UJBdbyc0uv9NcAxKtVUh5L9FL35gk3PqVbRyxaUhbHc=" + "rddd5ba78": { + "rev": "ddd5ba78a949c5458aad9f7c3f19d214a2e8338e", + "hash": "sha256-BiVNiS+01LE4mk8ATUeie2+CgfBHGsGjEzVkC4dPvkA=" }, - "r1a9edc3e": { - "rev": "1a9edc3e3b1024af4f6dc1ed6bb391510cb494ba", - "hash": "sha256-nYN7UhORegjNiH5XB+6wS+NPkxBtAXazps1KzNgyXnI=" + "r13a129d3": { + "rev": "13a129d301f4b2f9ab5d68c19902fc95c5dad89a", + "hash": "sha256-unIC3msCKL5UjGhsI+l9Z/uDCVx8dly+GDc7H7JOvz8=" }, - "rfc953df2": { - "rev": "fc953df2352e1c1bcb34cb5f75a0e409014c1690", - "hash": "sha256-cxmSyN3FYc1/uC0qrf0SWbzzKikyQCNCYajlLldAxDU=" + "rafd88c27": { + "rev": "afd88c27f2fe9f8f1a6d5b287cc16b1bc8f06198", + "hash": "sha256-YMzAFNv9rw2kD0pK38FMNQ7JW2XCXyxMM94qOCfzyK8=" }, - "r07f27b1d": { - "rev": "07f27b1d445a27433f2c871935da2cefcfbdb458", - "hash": "sha256-qWhcq7fcteKLlC/EG+/bkUew5UoNzBbkAvWDh22JC8A=" + "r6dd055d2": { + "rev": "6dd055d2eb39fe66e4b66bcb58eaa5692113caa0", + "hash": "sha256-R0PnUO1FdD+l/rBFoAfZAuHbfjZmcpd72sad3nxuRzI=" }, - "r3a01cba9": { - "rev": "3a01cba9a5a133799dbb58b5fbf15d0ddfe23cee", - "hash": "sha256-2bVUZJToGg1xKKwPAKxCqQCucEccfk4wfZFSLQ3XDMk=" + "r08ab59b8": { + "rev": "08ab59b8d7f0b173bf4179e5615a073993bcdd38", + "hash": "sha256-+f9XhKoUTgCtVt6jF21mByEk2MKf1p86pBo5etCXq/k=" }, - "r0355048c": { - "rev": "0355048ce0302fdeb4744dae4b8a156a38496150", - "hash": "sha256-Cypt4iPc6ZJarXKVloUl7G+XfGSEunOCblTzakSjdIY=" + "r01f8a8c2": { + "rev": "01f8a8c2d5327d0a3c89f36802f72f6278d574ae", + "hash": "sha256-sA2gcLtJsr4XAORmMK1KABFX1U+HFczPK1xVXszWDLU=" }, - "r7662e58e": { - "rev": "7662e58e3e0f6b6bcfd6e93ef8c83062096f22e2", - "hash": "sha256-N++DCJApfXa19xRH+u0WXPdfr1bXFwLEFOxT0wSfiF4=" + "r055375ef": { + "rev": "055375ef2629d1547324113968f824a76879c927", + "hash": "sha256-wCHD4l/a2tIMLFXvprGUqZXpqofdqgTSS5HT+iiKumE=" }, - "rc7019036": { - "rev": "c70190368c7040c37c1d655f0690bcde2b109a0d", - "hash": "sha256-elaaAg/eub/myMsfsN1SQ3AKKMMdduaGHdvU05jxnmE=" + "r0a3663a6": { + "rev": "0a3663a64f00b6337ec80d78c8945f2c77c63dba", + "hash": "sha256-DxvOA1lcLILfiXF5uuVrWX9L1+ZjcNeJbtQo46gHWrk=" }, - "rd477c0d7": { - "rev": "d477c0d7c40ddca3a64ae26fc02d2dac175836d3", - "hash": "sha256-CMLdmGoHH0KBqSLLsTfnWi9Cg5OJZyIZ85ftVjzfcag=" + "r06a6ed01": { + "rev": "06a6ed0170cc4e655e5655588e7c8e82c7fe28c5", + "hash": "sha256-So+OHLsm77WITjttixxOJ7w3RGHIz5ZRBLHE32Qh5Zc=" }, - "r2fb5f9cb": { - "rev": "2fb5f9cb8feec2234952f6999af941ac48555710", - "hash": "sha256-dS+ze7Pz8oB2rAFFODOZYD49N7ngea5GKKi76+MLNs8=" + "r1ffb4a42": { + "rev": "1ffb4a4283a7ac5e795bf7c145cf133fb8acbb53", + "hash": "sha256-FOSD1m310rVq3c5+4iwgKtvNailvGEKzSfTSzjPATAs=" }, - "rba62c812": { - "rev": "ba62c812f01fb379f49f94a08a2d1282ce46e678", - "hash": "sha256-u0F0CNV5F6kIfTRnTXLIHXkQ5bOBEUAG/SUItU/g2vU=" + "r1386aad1": { + "rev": "1386aad102bfcdadbb7e0911f141067f6d67966d", + "hash": "sha256-LFA92v7RRMNVdfzAiiCh1UdqT5Rxfm4+gk09JBiwGQg=" }, - "rc798e3a5": { - "rev": "c798e3a54912a1bfbf1c846630e2bb86e9b543a7", - "hash": "sha256-sBDyJuTz8yHcSwDgrXlKjQqvuifaXegb3qwqH0naGig=" + "rd363247f": { + "rev": "d363247f1eed9b84b22cf02720b030d409ef49a6", + "hash": "sha256-SOe63Oum1fie46XTAg+7ZMjORtzP37gtriDcy1fMpIw=" }, - "r58745d61": { - "rev": "58745d61afe244a37941d391f5dec3ab08f5cf2c", - "hash": "sha256-IcfvFmoFoxzorWfKdPfcKLpqmNflqFFR5mxZ5y3fSIQ=" + "r02b1d195": { + "rev": "02b1d1953aa8cf44b887309b14496e235146b32f", + "hash": "sha256-mlaZyhbAi1TbuA2bGUNTYwy7UsDTFBjsqXXgJ5Wqmu8=" }, - "r29c9e64c": { - "rev": "29c9e64ce548ff8278e9d98aa53f611f115c2bed", - "hash": "sha256-29Qkg39XceB0LMHAvFkhbkg9jxlNbiPaSgXjKQ6e5c4=" + "r0a471910": { + "rev": "0a471910b41d6e5846b7874d9705c192b72dd8a3", + "hash": "sha256-2DJdzlwSni9AUqwkPIMynRtxmY6Ru4GNHbQ8tzAFg14=" }, - "rde6ba216": { - "rev": "de6ba216656b819d4d8de7602006561f82a8c669", - "hash": "sha256-U4d7K/3YDXOaUGtdJ56YMZ3o7Pb4rUoigo88+/m8oV4=" + "r288ca7dc": { + "rev": "288ca7dcb44a177a1f3f7fa5be4f581edf1da668", + "hash": "sha256-6nrajlvKYMyCdA5ScOLoc8oPmnuObcayHNpxJcnPtiQ=" }, - "r68c29a24": { - "rev": "68c29a24ee6c9c70ecce56766ca70b115aad768f", - "hash": "sha256-yf5eELIkNrJepihcf4SMg78wM8GpNGCgLZIYujHHlRo=" + "r57533465": { + "rev": "575334657fcb66a4861c9d125430b2aef60476a6", + "hash": "sha256-vHc4MxkQkbJ4FlwS47znQW+sMqIH2kW4OdGPcb4tn94=" }, - "rbfcab2aa": { - "rev": "bfcab2aa518899ce71e7ffbc23bb22c4ef51858f", - "hash": "sha256-DZRdCZA1BTQgBb7WWQylfsI+5naekSj8fmzTL7NeXGY=" + "r666d16e2": { + "rev": "666d16e262bb333cdf9d0971a1221133b35dc474", + "hash": "sha256-xA/Adrp1IggXLZvaIvQhZuIu7tIkvEySufZDOP/umws=" }, - "rd7278ceb": { - "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", - "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" + "r049fdfc7": { + "rev": "049fdfc7e0cd1e1390128459fb159265e5861420", + "hash": "sha256-HnviL88MBOK1sfcvEWzbDe240KkWVX1Pp2vf9KOciJU=" }, - "r9f7f4d03": { - "rev": "9f7f4d033b03ae1b6e7b69c9e3bfb368f06a887d", - "hash": "sha256-op7ClsGIL/o1ulHquGq+Uegtn8auPONTs/uWn92ieGw=" + "r2eb28897": { + "rev": "2eb2889702d9c57b89cfcc38ce57541251b421fc", + "hash": "sha256-RHTU0BXNxyvJFn1137jb5oxOkMmcYRVEefxk2SKM+Y8=" }, - "r273a920f": { - "rev": "273a920f84e8b0b258737cea0f2f24627e8c5ed9", - "hash": "sha256-fBvaQk2cJE57DRfTV9avEKG2A+MBzsNJeQLQX63kykQ=" + "r40e4ecb7": { + "rev": "40e4ecb793e057d3c8b01a489603d7f90bafe53c", + "hash": "sha256-gmFycsMeT/YNWfYInLXGchpjj+z9hp/C648TDK7HDM0=" }, - "r03982b4c": { - "rev": "03982b4cfadca0e650b384c9539b2fdb5f8aa012", - "hash": "sha256-CKd60IZM09YYxXyvrnGvv2z7ecWFsTX2u6rP+wOtCyg=" + "r48eaa28a": { + "rev": "48eaa28a124e702edf373e212011cb283f0f0161", + "hash": "sha256-kl+C/REClp8E5R74VBUVL5HexZ1whLmnz/Gehi3nRlk=" }, - "r13aa2733": { - "rev": "13aa27338663c62600249ece54c94f180d57bbb7", - "hash": "sha256-Wj2gBLAe/C0A6p20lwjc9xa/eo/8ukATxP8dwiRQgds=" + "r380bc30f": { + "rev": "380bc30f0c048368b884ec9da90eeda2a28cb1e7", + "hash": "sha256-UvLSoas5SI+DS3Tptp78uIZ41dckrFhz3nIn+vexv4E=" }, - "re95b0cad": { - "rev": "e95b0cad901abd49755d2a2a2f1f6c3e87d12b94", - "hash": "sha256-xv3Q30yLrM0l8oDtyLxnfLGH1ZnfHs6F6XEJHjgu6Dw=" + "ra4f78775": { + "rev": "a4f78775b97928387704bd1ab780ee68365f4ee5", + "hash": "sha256-FL5nDp4KoA5aRXig+0n4vXVU/BObx9o+y1SEW/sBFuQ=" }, - "rafd52e91": { - "rev": "afd52e91dfed27ab7193be040f067900947b14ac", - "hash": "sha256-wi5sQnj631WuCLmDLa0DrM6GJoVKBsI4NUaXeREIEeo=" + "r2ccdf584": { + "rev": "2ccdf584aa3304e5c9aaa221cc1fd1368c62d096", + "hash": "sha256-wPvGh11clvLUlWibMcgbEahi0rmDJsqYqZl3pUJQtJo=" }, - "re09fcf83": { - "rev": "e09fcf8302f75dc50afcfe40f0d59a92b40a3c2e", - "hash": "sha256-S2/UyMz3xuQTwO5sXx9l+871q/aIvQVq9ezSOPTveUE=" + "r02808ddc": { + "rev": "02808ddcaad2de63773f566835916bc0a1e36f87", + "hash": "sha256-5fyEPP3IuDzafoYrG9JlTQZ/UA5HfjRJBpN4cgrVxTU=" }, - "r5326e94d": { - "rev": "5326e94dd188beba0a5e536b1d2723aee65bd85d", - "hash": "sha256-FzKzPLXG9IiqtS1xzY/8Rkrs064YaZcISKADI1bwgP0=" + "rac97cc0e": { + "rev": "ac97cc0e515b802c537fe50efc6e2faa2c7b0a0b", + "hash": "sha256-VRqv+ekEL7lktXkSr/4iTBzqomd8iOrCATK3lFW06uo=" }, - "r4a7815c9": { - "rev": "4a7815c94077eebb3546fc287d1fa0e1356a2cd0", - "hash": "sha256-PWwhREqN/KUSNX7A+8sGJHd2ZUI+WsLW3+eVFBsLjN8=" + "reb7c3008": { + "rev": "eb7c3008cc85c9cfedca7690f147f5773483f941", + "hash": "sha256-iephAcVqFFmn/dpHGR6bFsjf2OZfPsnOhA8JqNyjamU=" }, - "red3f05a6": { - "rev": "ed3f05a6794adfd39937d0027afefad8f6afcae9", - "hash": "sha256-dL2IJZIKYUoH9lnQMV6e95Ju9bl6D93JvLeio5waZrc=" + "rd3192050": { + "rev": "d319205007c10ca27280496b2de9d7256dbd953d", + "hash": "sha256-JSWLhC5ZebuBOHX8Ax6mLdQj1bO9xN8OV5x9K78TW2g=" }, - "r9540c045": { - "rev": "9540c0452343e684f94515288880b6b35655f792", - "hash": "sha256-7y6OxtmpHp3N48RRqP6us3twYHB/JGE5ElCxhxXOXCk=" + "r041dd68c": { + "rev": "041dd68cecd28bdaf5506d148df4634cd0c540af", + "hash": "sha256-2ZkPSH22Y/Uaa/IjzPPGNjNs0nrdAXz6P7PRMovzEb4=" }, - "r261579f0": { - "rev": "261579f08b2f8aa7959670df1e928c1c305a632c", - "hash": "sha256-fnnCC4JcUtp3i3rTVbKAzzH/6YX8ZHXzv86oC9o61Tg=" + "r1d339558": { + "rev": "1d339558acc7f2e21b8f9df094e43178c05139c0", + "hash": "sha256-trHB7x9QcLVChT+ONraqikPKJwppjx4Mn/9ydd6bgfQ=" }, - "r1eda2363": { - "rev": "1eda2363f9e79aaa5febe91d31b6756ae4f24f30", - "hash": "sha256-zQ+y78EaZ36yeCi/pk9v7W7M2t5yPLpEO0QXyxtKJ0g=" + "rd12f2ba5": { + "rev": "d12f2ba55e015a16f97e53c7314babd483e10ea3", + "hash": "sha256-ufpj+f6lc62AtBTjaWv1Zf02r/o0YQwH8hAmq8aXRNE=" }, - "rc8100f0f": { - "rev": "c8100f0f0d05c5185d58113e12a867ae0771a6c9", - "hash": "sha256-oTa8ZyNJH86rWRlq2+wOl6cc0MFm/yD0N3RK0/8t91Q=" + "r9f9c938a": { + "rev": "9f9c938af0affceee30eef308ed2596e1d7f53e0", + "hash": "sha256-odnwO/idLZc+H9TQL1fB8vV3VcI/DkdgoVfVs0veB3w=" }, - "r25cf1bb9": { - "rev": "25cf1bb965ba9ae0302cbc6de4ff4dd6cdbbc016", - "hash": "sha256-suA9B4DZyRrSKCSrJifvYbRC923GstqPr8qLzUPmyfk=" + "r82639e6f": { + "rev": "82639e6f5341a3129b7cb62a5a2dd9b65f3c91ef", + "hash": "sha256-Ryq0VoO1K8U2+0clK9lAVvzrhzln8pMUlYV2evuGgwM=" }, - "ra11277e1": { - "rev": "a11277e187e407d0ef403b8a60d9a32eaab7d301", - "hash": "sha256-7RsYw9E4fQgy5bdLviRIqLZE3/kbkOQmI+SCGgyCeuo=" + "re833a6df": { + "rev": "e833a6dfa2a89420d37070cd9b27688e37e83c8c", + "hash": "sha256-FWXVbDGOiyTC7igmTwxzhk4L/a/P80/fhOdwobVEwYU=" }, - "re491eeb6": { - "rev": "e491eeb610fcc69b98bc6d1ba08faf78655808f6", - "hash": "sha256-5Ju7KKWLJheH9E7aicjJEMCzrky1/6bhV8OsARsrK0U=" + "r378cca80": { + "rev": "378cca8016622e372a2da6cad0026ee12c426d6d", + "hash": "sha256-Sv4G8325ZpI9x0r8DFjanUtogttIWYmzdNA4gOPRALc=" }, - "rfb1c75ca": { - "rev": "fb1c75caf8ba5d45a0f2c52facd36e4ad9289549", - "hash": "sha256-A4qrMxsfBMpkTl+GbhIp6tfa4ArbwYUy+wdl3M01kMI=" + "r350257db": { + "rev": "350257db77b736385fdbad16308bef9be22d60cf", + "hash": "sha256-vHZKmyk1X8P+P7WMays+OatkXcjwt1tgcoN+JA/3KpU=" }, - "re1a860c3": { - "rev": "e1a860c3745c77cb83228dde1b73fa62eaf43930", - "hash": "sha256-hVVyDOiPrmYFZVOEVPH+gQDdpAJQQXMpslyhXwRIESs=" + "r62a4dcd2": { + "rev": "62a4dcd256a028918b17756f7fd3f95eaae5ab7e", + "hash": "sha256-5sbkiXtuy71ujJhncHAp0m4vbI9tQnW75iz1/oAx2rc=" }, - "rc1d9ac02": { - "rev": "c1d9ac02514a138129872a036e3f8a1074dcb8bd", - "hash": "sha256-C1+2oEyLY58IqeLD0G6kHs10cJvMt2AwfhMUEqb8Lt8=" + "r9edbc7ff": { + "rev": "9edbc7ff9f56dff801a49f5ecb15ee06718b995c", + "hash": "sha256-ReWBiMykRsIC6xJU3hRg5Mj6se1eRSdjD/kvgD6nKzw=" }, - "rdec5989b": { - "rev": "dec5989b793c56ad4dd32173bd2d8595ca78b398", - "hash": "sha256-IRlarsuNbK7hBJ6W8bXqbHEfk0K9Gqy7h1uHZ1xazhI=" + "r045ee419": { + "rev": "045ee41928e482d7e3022ff9d9c73ed2bab48b91", + "hash": "sha256-NPftv8mj9KLZ0BEo5uSezGY7kvmjRfApNVllCWr7Gbc=" }, - "ra055b938": { - "rev": "a055b93845a1b2a910919e21920e4bd1ce900841", - "hash": "sha256-ZjQC/pT8pdGMj1km4k9RPlMNB6FXkLStClfiazQJonI=" + "r74944287": { + "rev": "74944287e1ab95e091107c9f26ce46bd50e13043", + "hash": "sha256-ZbyjkLVsdhz76p8pPox9uC3YvCL6pjU590IaF7h2yfg=" }, - "r2bc9245e": { - "rev": "2bc9245eb4b50bd9e6b8bd0aa4ac94b91eda997a", - "hash": "sha256-Wn1rWoaCIfNZuouxt9FPV8L0akTkgXULG68SGNyYDQM=" + "rb65ce68c": { + "rev": "b65ce68c8f2c1e3e9d18b6ebf0f48905b5368a39", + "hash": "sha256-ZSCII2Qi5iIpLSidsrYEnKqrAwqJNw0xV8LHBDGY7RM=" }, - "r1385dbd5": { - "rev": "1385dbd51dc2eeba39076687a6c9e45c7dc8965c", - "hash": "sha256-wutjtx+JxOdWOVxdwSDosQVAQag/u3KAlQqpUBSPkyk=" + "r0a87c498": { + "rev": "0a87c4982c617799d48cad210945ec6429c13b8f", + "hash": "sha256-zFf1d0So61ij4BqnB/96kRqt6SYUsdKGnJNGveS90ms=" }, - "r39dd1e3c": { - "rev": "39dd1e3c904341ac14da80224d72a77d95501ad4", - "hash": "sha256-hyCIctgppjZmLquRQ7TfvOza9M5gUSPjkECeXIuhw/4=" + "r8d685ec8": { + "rev": "8d685ec867c4975013b11e72b280a1af850737f5", + "hash": "sha256-VsdQQ7zbl/xVrQgpBsAoAKhelmfn90ouH6haBAi7mXI=" }, - "re2a801f6": { - "rev": "e2a801f688dbdfac8fde90b849b1bf75f80b466c", - "hash": "sha256-me6iT8/l4uCeTPo0L6ID0GiUklFEiwR7JGOB+OhotLs=" + "rc67076d6": { + "rev": "c67076d653f7501136f7b208df4b011a7275e8f5", + "hash": "sha256-MALoEV07gCSnSZgivQDkzIU7/xokXxoQMp0pOev7Nyc=" }, - "r29223ac3": { - "rev": "29223ac349c144a4d0babc281644c0410dd1e313", - "hash": "sha256-0zOLcNJh7SMzI1r5AVdFpzZxH1Li9+m0rhXyIg+hiMQ=" + "r9b896cf1": { + "rev": "9b896cf148e692fca46d7f34d0e45d1c58764db3", + "hash": "sha256-hGf31gWcCFzhsREgESoY988gAeEUVxB1bJU5MbHnl/M=" }, - "r56fb43a2": { - "rev": "56fb43a204e57af68e00f4561c108a7004381aa3", - "hash": "sha256-CK3EhbxQxL0SR1lznYTbOGO4PVU0ajHyJ6lVi6OzJGY=" + "ra866ba5d": { + "rev": "a866ba5d704973e5678d744ebd10ffbee3e3d3a3", + "hash": "sha256-i5NP3rxLGGmtgatQbXLNcaV9uB/8i2BmosFHPrxLCsA=" }, - "ra6c42d68": { - "rev": "a6c42d6810ea5317fe8ed85704c097cd8f3513ca", - "hash": "sha256-tqgorwXUKb4wkTRD1OlMKNOp8LTDzyci5ulfaYHYGkQ=" + "r356a9a08": { + "rev": "356a9a0895bbda5e78f5627dd546d4f09c380166", + "hash": "sha256-RGFLQV1c/lmqoChsoxv27JrPWT8VW92yJXob5TLYHSY=" }, - "ra220a602": { - "rev": "a220a6024f66c123019b5c080f6bd8bcaf75448c", - "hash": "sha256-0R5EhwUi1Sc3hhwVhzCBAPxRhcftdmp2/FnwFckxlU0=" + "r1458b49a": { + "rev": "1458b49a9e53b0db0ad63e8ef3156214f1473d87", + "hash": "sha256-x3nEtHyzZPn7WxtsLnCs3fox2dHjJXa5RsLzR/2SsOI=" }, - "r962432c6": { - "rev": "962432c687f67f8df1aa6e3dd364fbc88fea4ed8", - "hash": "sha256-BPOeSCjPiLh3pY/07J0vqUGdj6529idZtc+LCKb2MuQ=" + "rde1d2881": { + "rev": "de1d2881aea4aa23ba580da752387e52a5fd3eb2", + "hash": "sha256-0KnJ1+ii8WUaVyQCgzb6re0ZBjJW4aLma9OUTf8pJVg=" }, - "r11acdc6a": { - "rev": "11acdc6abf13cc8139c30ac9455840a347793110", - "hash": "sha256-FPiV4a+MmC3UdBZPqQRu2vUe0v7w+ar6/p19f0YGS+Y=" + "r15cd8bf4": { + "rev": "15cd8bf433750187d6c8babc83abec83f6215eb3", + "hash": "sha256-zNBKpVbx7EHMdYcjHw0EuvAb1kiWnxt4/dyU06c9bGk=" }, - "r9cac8a6b": { - "rev": "9cac8a6b38c1cbd45c77aee108411d588da006fe", - "hash": "sha256-oVRzPR4OSpgifskilpke116E4mpx+9baXw6rfW/jegs=" + "r98b4cdba": { + "rev": "98b4cdba1e4ede26d845bcae8185ddb5b2feea93", + "hash": "sha256-MuQosdGCJejCzi0lWz8p7Dqgi2Q3VuhFUj3CutLxXIc=" }, - "re1d209d4": { - "rev": "e1d209d4432846d28c31d84f269f4edcb9a63509", - "hash": "sha256-K2/9RS+UHCkHiog+//Q99RFWxLVXASE62l8yhJ6JVjg=" + "rf1efbc8f": { + "rev": "f1efbc8f8be9ce2918eaf46c48f294cb214023b9", + "hash": "sha256-kev4zyibpHEbmuVIAF4gR9QXONQH9A3iDEr5D+RBuzI=" }, - "r66d274df": { - "rev": "66d274dfbab9e4f84599f06504987c418ca087d9", - "hash": "sha256-eppy21RtniwE5gpD0ff4B1Gd0xLCdwc71i2DP7Y3nt0=" + "re8434d30": { + "rev": "e8434d304cb10d2b52a426a13e6a1f852d63bba2", + "hash": "sha256-sqVazinRxRbwryjDUvHPv5jmyu15lXuIXyMxqz7PFLU=" }, - "rc6c0b650": { - "rev": "c6c0b650091e90e6206a361c14a73223f54d42c1", - "hash": "sha256-GirZs6NfiMvoXqDkW+J5zSK4NJJtI0rl2GOb+B+Hyeg=" + "r14d192e9": { + "rev": "14d192e930802135eadf57d1cd90165a94e3441a", + "hash": "sha256-7lYiZsgfjsaqo+6sQ7H3TaiS+dHgM4H8KqAM4LRLe5k=" }, - "r67422ed4": { - "rev": "67422ed4434116daa8898773692165ddd51a6ac2", - "hash": "sha256-7ScEX6ZqBl3PL+zn4bBBPFu5xxP1YswGQxh7g8+9VUc=" + "r2309f645": { + "rev": "2309f645e509507a1cc8f9845771110fcf986fd9", + "hash": "sha256-V24YX21Ze9KykwCMghKnuCXixYUUKZ7U1udi8I9mv88=" }, - "r84dc9bb6": { - "rev": "84dc9bb624b47bda0bf802ae9e04a6eecb40865c", - "hash": "sha256-iM2dQCZIemZZysm5tQ83THHsdv3SAl8g6bR2eV5jqqo=" + "rde196121": { + "rev": "de196121b05adea2f9b7e400271266495a40b0f4", + "hash": "sha256-TtgmEPl75KJ6wayrPoD+2rTPlCV+rAgGbppWofww0iU=" }, - "rd1e6d3b4": { - "rev": "d1e6d3b4af50c9490cc6210e2763b3c45ba14b07", - "hash": "sha256-Da2bMR7COJib9Y6GLpQmsTRt9oyDWZcbz3OkEExYvYo=" + "r5eeaf302": { + "rev": "5eeaf3029dab6b7264522c57a7a2acb461c0a434", + "hash": "sha256-LzLdeWyZ0/D7vicUO197AKi6QHr8qe/Su0IxXgPHbJE=" }, - "r6c98ebeb": { - "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", - "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" + "r3989c997": { + "rev": "3989c99706bf30054798ff82f1cb010e50e385f5", + "hash": "sha256-UnupFj0S9Oe9v4a2U2WUWQ3hleN/oFaZnCP+Il7TsEk=" + }, + "r2c8445c5": { + "rev": "2c8445c5f7515f8125f41aa1e3da2501b8b040d1", + "hash": "sha256-jncx5QcrmJs0t5qgCv7Wh4cs8gCbDNosjKPp6e1r9dk=" + }, + "r92de0b53": { + "rev": "92de0b53a799a8724865fe816200c1421381d128", + "hash": "sha256-4ZYn1Yh91ALqQ+bHdqV/sPK9t8pD1/4KfFvENjGq330=" + }, + "rc295935a": { + "rev": "c295935a9bf345acb597ffefb69f7e095c3eee72", + "hash": "sha256-QMfhNhx9P5qNbRyeIqmdxxqhiL84hz+04Q9RZE4tyd4=" + }, + "rc02c19e0": { + "rev": "c02c19e0d842f54d903a9b62316476f4b9c4e3f0", + "hash": "sha256-jtpyvtMRMRCG5vIyl+1QMqvTaUgyX9RR0EY7h7aS3lY=" + }, + "r3d15a94a": { + "rev": "3d15a94add73c195fa0e68250afae8c030818437", + "hash": "sha256-NECKcKEWsaPXOaVEvCJ2ElVTbK9I7QwB94DtntWKLy0=" + }, + "r8d4c8fc4": { + "rev": "8d4c8fc41be567bca17ce7c15304dc06539a060a", + "hash": "sha256-rO0KW9bLeZUlEZ99BlCH0v+FI43mCIcvLl5eupM5kzk=" + }, + "r468cde90": { + "rev": "468cde90ca58421d63f4dfeaebcf8bb3fccb4127", + "hash": "sha256-aXCE8KmtZDVud5v12eECS8kMInh1slqMwK5kc/diWD0=" + }, + "r71a3b826": { + "rev": "71a3b826636eee85c20f064ef318f0935416a479", + "hash": "sha256-WUb4HfQv9Tt3776inSUVB5zc5giAFXpHOYaYjM5HumU=" + }, + "r4e93cd48": { + "rev": "4e93cd487f0a7f447d194621a59018a88d246379", + "hash": "sha256-8OWFPnV+5Vk3LY6BpHIE7I3Bp6v+n3Z1vqXG4dtO70E=" + }, + "r52067828": { + "rev": "52067828463443821e175975d19085b2c8bf2f54", + "hash": "sha256-CDaSjRjV9ou3fM+Lmfwpiv/ylwlwHv0VUUTzLGpGh0A=" + }, + "r5799ebfe": { + "rev": "5799ebfe5f895ecd29fcd699789854fc1790d6cd", + "hash": "sha256-wB0haPGSwvPepfVCgb8ueqVAk9aRHp/Hme6hETyqMnY=" }, - "r2fcdd11f": { - "rev": "2fcdd11f6d33b667968a5bc5147e2ba83a2082b8", - "hash": "sha256-aEZ3/t6Jg3LH+ZYuaqrB/sK44d8nilVfUleJEvN/qKA=" + "rb27438e1": { + "rev": "b27438e1268d3ef645c6f8ce10c184bb7d57825d", + "hash": "sha256-TdochIfhmyaCs4cRaMIRU4HNLA9142HYuinBpUXHH+E=" }, - "r45b24641": { - "rev": "45b2464158379f48cec6e35a1ef503ddea1511a6", - "hash": "sha256-YLgAs3CzvTJ50C/VPUrflD2THBMLLNoEFEpOALrZQhY=" + "r1c2473eb": { + "rev": "1c2473ebae2411949027c950eea5261a3a8f7922", + "hash": "sha256-Z+xI0Rea5WuZnUinMF9FOdMVe5CtXvihAgoCzs9/r00=" }, - "r45db24b3": { - "rev": "45db24b36a030ec54464ea7a26c362f3c82305ee", - "hash": "sha256-dQhTNkyN+yVKpEWUSiaezfnktHr2EySScCANDcQjgq0=" + "r686d05aa": { + "rev": "686d05aaa57604b5d867f1d40e85f04759151ce1", + "hash": "sha256-e9LCleyoKgqmcHNnZMTEk3wA8iCTWrTHnBwwe9dhb8Q=" }, - "r7811fdc9": { - "rev": "7811fdc94b7ec146937e83f98d411157974ffa32", - "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" + "rc3c540b9": { + "rev": "c3c540b9a4d066476e8be372e0c5059979c8578e", + "hash": "sha256-teW60idbGmIwZYk/YEyeSfeDeZJ+bLGhasDB2b924wo=" }, - "r26468aea": { - "rev": "26468aea6483135b156fb03a5693c495dbad2e0f", - "hash": "sha256-a8r0bjKqsd/0FMhp5yR8iMU5LIC4ICV9cxsTIidWMUE=" + "r123eaaef": { + "rev": "123eaaef26abc278f53ae338e9c758eb01c70b08", + "hash": "sha256-6vAJ6bUZQKXFuiPEgPaaXhaLzynKe6hyqp2nO+RlXfc=" }, - "rf01108e4": { - "rev": "f01108e4761e1d4189cb134322c3cb01dc71ef87", - "hash": "sha256-jZ9T5/6t1ImeCDBAMzW0aSmT/NcLxbESYv/F+cBjIFY=" + "rbdc35b63": { + "rev": "bdc35b63617f78037768f4897d8835696f02181a", + "hash": "sha256-i7vQzzPr2SVvoq87gUVcnMRtaaeQc9+K89olB1ZYnZo=" }, - "rca2eba6a": { - "rev": "ca2eba6a5e6a1db7fc970b38c2975fb7bb7153fa", - "hash": "sha256-XVBOVn9ZuO9tobQ8TA6zDBwD/hxkMkcigGUpwn6Hnd8=" + "r9a836f78": { + "rev": "9a836f7840b965e66085f8380116a54076f44a4b", + "hash": "sha256-dbAExSW2fud0EaDItO+MyyOBPSJdKnyQymWCtUBbntU=" }, - "r12f0f4be": { - "rev": "12f0f4bec2a6db53a53748dd6001d1aacaae26ba", - "hash": "sha256-uj99vsXUoHicoysqcPOn/yJf1M7fTPL3gSlikNyzUJw=" + "r801a8010": { + "rev": "801a801024febe1a33add5ddaa719e257d97aba5", + "hash": "sha256-BvDaLePWJKXdVCSo8qY1dSeKH0rNz0Vo8+AV7k8HkPM=" }, - "r7c2b62e9": { - "rev": "7c2b62e93487b772990fddc1905f22d4cfaee4a4", - "hash": "sha256-FGpAeOQ4Sfd/kbKs/Ziv+H/UzN3yH4FmUnFE5afszU4=" + "rf2029899": { + "rev": "f2029899b2c1dcf3e3120876794da088f42ad351", + "hash": "sha256-L7NXMdHITp4aUXZFQeRp6F55DMCBkmqTPoZfN0ErCYc=" }, - "r8934b1ef": { - "rev": "8934b1ef0857bc08626a2206a6f5f718942c14fc", - "hash": "sha256-3haLXiXWipf27XCChJQ9UU76hjydoGAC/HS+8AftZd0=" + "r8ce0e1c1": { + "rev": "8ce0e1c14e48109773f1e94e5f8b020aa1e24dc5", + "hash": "sha256-N4MWyTJPgwQN+d1wv4s/rq/930dBaEudJDI6/GrybrI=" }, - "r77ef86d0": { - "rev": "77ef86d0431ec3ceea503b0c59888942fd35b035", - "hash": "sha256-DprfilhYcYUcQA4kDtvh6UNsntXJwTo7YDm16yduJ1M=" + "r9f426b60": { + "rev": "9f426b60fabf5e5fec0a0a05120de19289ef1fdf", + "hash": "sha256-jPJhMJPkPjTqRILCpyeDq+XBU9NFA8Sw5Izh78l50tk=" }, - "rb34976ca": { - "rev": "b34976cae99f8d1b864dbab31e20fc00d06acb09", - "hash": "sha256-QUeBGFNQJE9DHq/thfk3RsRMTUhwB2Z6LRN0SJYJsVo=" + "r3592aa30": { + "rev": "3592aa3009eb883f7e5431ad7ce08dc3ae979902", + "hash": "sha256-LkHwOGR3YmpVDEOmBZwXZEtaOyf7+m/7aVXmHMipDJE=" }, - "rd274b1ba": { - "rev": "d274b1bacdca36f3941bf78e43dc38acf676a1a8", - "hash": "sha256-FtJFZorlGqPBfkPgFbEztNvYHweFaRVeuAM8xOMleMk=" + "rde434576": { + "rev": "de434576d7412b95a8eb90d613fc9f01e2d7166b", + "hash": "sha256-nupZ+yTMYwLeARfszeXFLEaeeLBmeN73V9EUH4Hr84E=" }, - "r096ded9f": { - "rev": "096ded9f097b73a15956b04cd168c7cfe7e28f52", - "hash": "sha256-WL0ndihbDyZnT3dJmwDIZWilxNtjsoZTQCbQ9+hjofo=" + "r02397c7c": { + "rev": "02397c7c973e9dbdda0f4d610e91395b7a72d3c6", + "hash": "sha256-FCZeP2lgTsRo/cVI+ES090pYAaDi5Rom0TI8E8LvsD0=" }, - "r9b3ef1b3": { - "rev": "9b3ef1b3d34d09c40b999d05ca6a92c77a9345e3", - "hash": "sha256-LJF+ooOKaB0Zj+VoLMJO5HDilQKEZfWJSl92X+ZMZmE=" + "r65ad925f": { + "rev": "65ad925f51d879f8babd22ecb2ca4dc779b2cc24", + "hash": "sha256-8/54cNgeCzdm0bnswToe/d3XyixLls9Gv1s+Z/g5ydI=" }, - "r82f9853f": { - "rev": "82f9853fc7d7360ae44f1e1357a6422c5244bbd8", - "hash": "sha256-oppWaOb3gmQN5O+xtdCZJfbwc4GbFmuAJxZDp9e/GEY=" + "rf3165478": { + "rev": "f31654786c0e9c54c227b1e966faadc615780ef5", + "hash": "sha256-gHJLYi1TeYSzfE5DjB17Tt/2paE3Q8/iLcQgqLgguNg=" }, - "r9cffd74f": { - "rev": "9cffd74fdb65c69506a0ce1b19420a67ad0cb19e", - "hash": "sha256-xy0eVPmLnoV/K8S0q0vsKvMR0bjGw2q1HzCeYclQBJ4=" + "r908b1300": { + "rev": "908b1300ff4ed3cfc3c965d846560f2593a51491", + "hash": "sha256-cJs3RnYEI1lVEy5cmHN5EmULIDjZY4PgDjF0eGicZiM=" }, - "r7a6e828d": { - "rev": "7a6e828dc53ba9a56bd49915f2a0780d63af97d2", - "hash": "sha256-BloPVeQvY7wxvxx6IqFbuo5dt1ATbl2epcgG8PmVXQk=" + "r474ddf8b": { + "rev": "474ddf8ba95f30e69acea37d76b3e671d89381c3", + "hash": "sha256-T/FCRe7w8B6W7Xw+DMbj750CNKLbALm2EeSAPLgSvrU=" }, - "re23fe9b6": { - "rev": "e23fe9b6eecc10e4f9ea1f0027fea5eaee7bd6b6", - "hash": "sha256-jB5WXaxGKCqT9tuKwiMr68RMrQgp8ElbQ+WZB8PY8NQ=" + "r860cc73b": { + "rev": "860cc73bb2964457461a6f3cb5807dbd79256372", + "hash": "sha256-D1v3lfaL07pzn1p+tAIvflBtEw1seNUniBLdZMhIBs0=" }, - "r14a2f35b": { - "rev": "14a2f35b6e06756902eaa7e188a25895721055fc", - "hash": "sha256-wmbkh5Gh3ewKBNrLgeUPTUKBFrVy5J/vKMnckvFR2Aw=" + "r5fb362c6": { + "rev": "5fb362c66a57b4d1e300a1d56b461bbb69e8c8ae", + "hash": "sha256-gCuFIHQj9gQA2BqGB1VSEma4Brf/2IztMaaipJUPn88=" }, - "r1e8c35af": { - "rev": "1e8c35af5363c21f0f349b4e570dcccfb9ec3f74", - "hash": "sha256-inBz7hCoJjO/wFY8Rrvov+9lPO66zjWn4tUOwS+qLEI=" + "ra02b7435": { + "rev": "a02b7435ca52b81c7cce656d577c8423b1cc4bb3", + "hash": "sha256-lwOC5VETlv/Nq3+dR3XhBd8qnnMvgjH7HAb+60OgGTw=" }, - "r5af122c3": { - "rev": "5af122c3dfc163b5d1859f1f450756e8e320a142", - "hash": "sha256-q4fuH35u6WlmDweGFf7WOmOJyq3F6NeJe6B8oTWjutk=" + "rdd521945": { + "rev": "dd5219451c3ce26221762a15d867edf43b463bb2", + "hash": "sha256-SLWV9JkMwUC0lZ18D3Tt79gqQ/2vTIapxAwKU3Y2Cac=" }, - "r1b40d99d": { - "rev": "1b40d99d6a90d0039e9021adde5ad4de743cf0ad", - "hash": "sha256-2z2h71y5MyM5ExL/b8EzVVK4e88z6Q9vbui3Ju/4kpg=" + "r3f680b0e": { + "rev": "3f680b0eff18ddd6c878b92bffbc1b53fe6bd797", + "hash": "sha256-nt3xV1wO5svpgQk///eWTikcqOoaRIqIFwLqZhxGT2A=" }, - "rb7f5443c": { - "rev": "b7f5443cfc1298d77dfb9e6f2eea68035de521a4", - "hash": "sha256-ojt43tOnQRRLXZL9amoIDk1J7xncpMmiHf4qtgMQ2Po=" + "r5d3124a3": { + "rev": "5d3124a304df8c69d38a73619bf4eae05b9d5545", + "hash": "sha256-jmfIlhwWrHeDX1F0znwOlR7NznXyfisRG5RB5s1KQHU=" }, - "rcee4fe2b": { - "rev": "cee4fe2b78cfd2db8b4429b4fefd9831d3e63c04", - "hash": "sha256-4lTjjalDTNeotXLKPb+c3M+d4OFMEcd93nQwPMmxLJs=" + "ra4f8755f": { + "rev": "a4f8755f8e66b77ca2230f376bc5d5d54b28544e", + "hash": "sha256-z5G6N6vr0wUpvRLafOMHE5tLX2Aj2ipvfsTSScdb2oE=" }, - "r709ba6ee": { - "rev": "709ba6eef8544cb806350a8e1ef0816aece45a10", - "hash": "sha256-7sjgHby3m6pkEXgSx5ksOv2ZDN4xe1CDtpAC2bf3kRs=" + "r18b1b8b1": { + "rev": "18b1b8b1c4567190fe4a37262fdfba57aa446dc7", + "hash": "sha256-95x1QJTbAXQUXWAaLCXxNJrxH7P7E7mFvuOm2gtcxdk=" }, - "rfe17d192": { - "rev": "fe17d192e67b6bdc5483bf2af09311206ace2d36", - "hash": "sha256-zsr8C56+cuI3ALRzW5fy2Qc2DMHkhgscCwZO13bMqfk=" + "r235ee97b": { + "rev": "235ee97b469ca6761e5096ea829f4da032c591fe", + "hash": "sha256-slvLt9rpIdpkZWLhrdUogsz2rLMjuE99r3HXvrVo0p0=" }, - "r369fe288": { - "rev": "369fe288e29ce8b2b39fccfc08441bdd7100a28a", - "hash": "sha256-AtSM2HkyqcEG0eaOsweqBlVFcyo+l+jVfpzdcQLmCVE=" + "r3763efb5": { + "rev": "3763efb56b5282cf92d71c259576352555c1a8f8", + "hash": "sha256-KI3iryvJplRurCGgYMdD7ryUHBh/Vrajpzuxh2XKUnA=" }, - "r6ee4f9de": { - "rev": "6ee4f9de0016ad83223e7b5f1f18b968e6258189", - "hash": "sha256-2M7wfnwnzLd4z0JsmDylkd11fpWRid9/QmQ9vy5oqOs=" + "ra4851dd8": { + "rev": "a4851dd8c67a2b311403d67270e02e7296d31157", + "hash": "sha256-7cW4LQ3w0YgpY1WvY9c00VgFBmlZ+SyUTMgs8Df0e/E=" }, - "raaf59e8d": { - "rev": "aaf59e8d8d17308442d9211e670c7f9718362ceb", - "hash": "sha256-yZVXN5Ws4rmZu7gZffPsZ04rKwy0l8FTcm/eGU4imhg=" + "r2d7adaea": { + "rev": "2d7adaea91627b77b3d560d12703191fa5c434c0", + "hash": "sha256-ok7CxYZdi1uY5g4kGUhxaFi3Uj1EV5sH6r3B/O6pEBY=" + }, + "rfaac623b": { + "rev": "faac623b09d6b14fbb06fe5150016de78b359eea", + "hash": "sha256-x5THk9BRkFGcomeu0rY9IWiMVDGJyQKNYlnfz4nRtiA=" + }, + "rec6a4055": { + "rev": "ec6a4055437bd384a1dff3842c084eec49e203a8", + "hash": "sha256-gSwNYUaq2JRgBeUUo/QWqdRILrzd7pDne/Pvo6Q20mA=" + }, + "rbecb3ffc": { + "rev": "becb3ffccdecff83047285ebea20e5b85b2d65b1", + "hash": "sha256-jfv1Eztcgow3v+t4nGpAG4O7ztFi3a7+nKPOei5II7I=" + }, + "r38d17d34": { + "rev": "38d17d345c73a3ac0cb451fa0696fd8efabadc0d", + "hash": "sha256-zMIaNxiBjb1H/d9Qu7fXWW43/8T/Uc9626XTwfvGEQ0=" + }, + "rd4faa8d6": { + "rev": "d4faa8d63a06a5feff2e5b68695adf9bf8fd1f81", + "hash": "sha256-BtrreTatwvQMHW3DEzhaRqirYf6czUReaqgGskm81co=" + }, + "rcf4f615d": { + "rev": "cf4f615d706d54fca9323fb1595d88f7ee2d7517", + "hash": "sha256-2DGnYooj8D1+eF++1z8jvHxZqB8LcqwVCavdWgOMYKo=" + }, + "r6cbf2c09": { + "rev": "6cbf2c09f280fbf2190affee046783d0fe543113", + "hash": "sha256-lxWwe+UCPsQybZL9dCPUXlSs1maRlrkeWwmnVDXRlKg=" + }, + "re2d7f2d6": { + "rev": "e2d7f2d625257b2c250ea2f18d3f832add5b43bf", + "hash": "sha256-ZDGX6wKYBbK8B6IkaHOz9GbY2AVZmtPWXWdeFditXLw=" + }, + "rd7278ceb": { + "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", + "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" + }, + "r6c98ebeb": { + "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", + "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" }, - "r11f33412": { - "rev": "11f334121fd0d13830fefdf08041183da2d30ef3", - "hash": "sha256-mZ/MqMjDBVKzY69Fjl2KGcmK328ls+nSdjqsvuA0TSI=" + "r41754d58": { + "rev": "41754d58e549d45762f906ba9e0da6ccf28c7b3f", + "hash": "sha256-vFuLW2eNrvH4X4rwOi2wPSPoeG+qmfbnq8lsePgGMFo=" } } \ No newline at end of file -- cgit v1.3.1 From c1feb52a5a2cf307e2fedb5a3530a72d47970101 Mon Sep 17 00:00:00 2001 From: J08nY Date: Fri, 16 Aug 2024 00:04:49 +0200 Subject: Reorder BoringSSL versions properly. --- fetchReleases.py | 2 +- nix/boringssl_pkg_versions.json | 722 ++++++++++++++++++++-------------------- 2 files changed, 362 insertions(+), 362 deletions(-) diff --git a/fetchReleases.py b/fetchReleases.py index dc287fc..e6f03b5 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -243,7 +243,7 @@ def fetch_boringssl(): versions[f"r{abbrev_commit}"] = { "rev": rev, "hash": digest, - "sort": -i + "sort": i } serialize_versions(pkg, renders, versions) diff --git a/nix/boringssl_pkg_versions.json b/nix/boringssl_pkg_versions.json index d8fefc7..f9b7c4b 100644 --- a/nix/boringssl_pkg_versions.json +++ b/nix/boringssl_pkg_versions.json @@ -1,486 +1,486 @@ { - "r76bb1411": { - "rev": "76bb1411acf5cf6935586182a3a037d372ed1636", - "hash": "sha256-f3wfLZ8caYOETpvy8olsED+PwEFLUbYaayZNOcEvGB8=" + "r41754d58": { + "rev": "41754d58e549d45762f906ba9e0da6ccf28c7b3f", + "hash": "sha256-vFuLW2eNrvH4X4rwOi2wPSPoeG+qmfbnq8lsePgGMFo=" }, - "rd17d1dae": { - "rev": "d17d1dae84ecf76da3a924facdfe1d8c2d4ac578", - "hash": "sha256-nPKFto60FViG55WK87b87r55wYc3pi1rwUsOZTikAjg=" + "r6c98ebeb": { + "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", + "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" }, - "r2df010e4": { - "rev": "2df010e4f4eae6806cd1d855b63c3891116f065d", - "hash": "sha256-ohiRSNRSp8DhrcwVd3+w7OEIsLcddwSqonSeSUruIq0=" + "rd7278ceb": { + "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", + "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" }, - "r8d5f9da2": { - "rev": "8d5f9da2e36b593a098200bd332fd9e51f0bed54", - "hash": "sha256-YanXypsEr46jzSKJvNLEuNwlE3076vyyb5ZEROTbeLg=" + "re2d7f2d6": { + "rev": "e2d7f2d625257b2c250ea2f18d3f832add5b43bf", + "hash": "sha256-ZDGX6wKYBbK8B6IkaHOz9GbY2AVZmtPWXWdeFditXLw=" }, - "r0efa7592": { - "rev": "0efa7592e3fb2ae647518a82ab19679b7c933d99", - "hash": "sha256-fLF4sd2eRYUvpGTwHMOElRJ8mZXMYouwq+0a4WSJYl0=" + "r6cbf2c09": { + "rev": "6cbf2c09f280fbf2190affee046783d0fe543113", + "hash": "sha256-lxWwe+UCPsQybZL9dCPUXlSs1maRlrkeWwmnVDXRlKg=" }, - "r52940c49": { - "rev": "52940c494517b1256d9569da0c2aefd018518348", - "hash": "sha256-arL/WA6dFWrdKGE3hBN8E9RNj5jLsBIZKDCxAj3A0IQ=" + "rcf4f615d": { + "rev": "cf4f615d706d54fca9323fb1595d88f7ee2d7517", + "hash": "sha256-2DGnYooj8D1+eF++1z8jvHxZqB8LcqwVCavdWgOMYKo=" }, - "rf6d64efd": { - "rev": "f6d64efd1985d4668e084cabe03e41c3574b494f", - "hash": "sha256-JTxe75Z7ZZmJKz0L5qlRCEdPA5hvX/LEat9gkBEOXpI=" + "rd4faa8d6": { + "rev": "d4faa8d63a06a5feff2e5b68695adf9bf8fd1f81", + "hash": "sha256-BtrreTatwvQMHW3DEzhaRqirYf6czUReaqgGskm81co=" }, - "rd5c565a9": { - "rev": "d5c565a98d4d036db91d34810e39fb116bf38c56", - "hash": "sha256-fYNraa7yy6ZgOvrjs01ld7pfIWIOpDGeFKCkZ5lTrcs=" + "r38d17d34": { + "rev": "38d17d345c73a3ac0cb451fa0696fd8efabadc0d", + "hash": "sha256-zMIaNxiBjb1H/d9Qu7fXWW43/8T/Uc9626XTwfvGEQ0=" }, - "r2ddc461a": { - "rev": "2ddc461a3f319a3d704891bde0a819959b9437cc", - "hash": "sha256-QjZ9Ior1bbI8k3SeRpkILwcOiTkdRKbBUFJq3qZUDy8=" + "rbecb3ffc": { + "rev": "becb3ffccdecff83047285ebea20e5b85b2d65b1", + "hash": "sha256-jfv1Eztcgow3v+t4nGpAG4O7ztFi3a7+nKPOei5II7I=" }, - "rfc2d78dd": { - "rev": "fc2d78dd1e900e43be1812de1b1e1d4083267a54", - "hash": "sha256-8aR8nDOVgKhBKlgRNuvmhhEi+/w/aIi7pex7drxkclE=" + "rec6a4055": { + "rev": "ec6a4055437bd384a1dff3842c084eec49e203a8", + "hash": "sha256-gSwNYUaq2JRgBeUUo/QWqdRILrzd7pDne/Pvo6Q20mA=" }, - "rbf833c34": { - "rev": "bf833c346d532558a4c1c98940fa42e4e80a0a02", - "hash": "sha256-BlGzWt1dSoTUCJOI8Eis6BlMy1V2o2Nqufy3Mdz7xwU=" + "rfaac623b": { + "rev": "faac623b09d6b14fbb06fe5150016de78b359eea", + "hash": "sha256-x5THk9BRkFGcomeu0rY9IWiMVDGJyQKNYlnfz4nRtiA=" }, - "rddd5ba78": { - "rev": "ddd5ba78a949c5458aad9f7c3f19d214a2e8338e", - "hash": "sha256-BiVNiS+01LE4mk8ATUeie2+CgfBHGsGjEzVkC4dPvkA=" + "r2d7adaea": { + "rev": "2d7adaea91627b77b3d560d12703191fa5c434c0", + "hash": "sha256-ok7CxYZdi1uY5g4kGUhxaFi3Uj1EV5sH6r3B/O6pEBY=" }, - "r13a129d3": { - "rev": "13a129d301f4b2f9ab5d68c19902fc95c5dad89a", - "hash": "sha256-unIC3msCKL5UjGhsI+l9Z/uDCVx8dly+GDc7H7JOvz8=" + "ra4851dd8": { + "rev": "a4851dd8c67a2b311403d67270e02e7296d31157", + "hash": "sha256-7cW4LQ3w0YgpY1WvY9c00VgFBmlZ+SyUTMgs8Df0e/E=" }, - "rafd88c27": { - "rev": "afd88c27f2fe9f8f1a6d5b287cc16b1bc8f06198", - "hash": "sha256-YMzAFNv9rw2kD0pK38FMNQ7JW2XCXyxMM94qOCfzyK8=" + "r3763efb5": { + "rev": "3763efb56b5282cf92d71c259576352555c1a8f8", + "hash": "sha256-KI3iryvJplRurCGgYMdD7ryUHBh/Vrajpzuxh2XKUnA=" }, - "r6dd055d2": { - "rev": "6dd055d2eb39fe66e4b66bcb58eaa5692113caa0", - "hash": "sha256-R0PnUO1FdD+l/rBFoAfZAuHbfjZmcpd72sad3nxuRzI=" + "r235ee97b": { + "rev": "235ee97b469ca6761e5096ea829f4da032c591fe", + "hash": "sha256-slvLt9rpIdpkZWLhrdUogsz2rLMjuE99r3HXvrVo0p0=" }, - "r08ab59b8": { - "rev": "08ab59b8d7f0b173bf4179e5615a073993bcdd38", - "hash": "sha256-+f9XhKoUTgCtVt6jF21mByEk2MKf1p86pBo5etCXq/k=" + "r18b1b8b1": { + "rev": "18b1b8b1c4567190fe4a37262fdfba57aa446dc7", + "hash": "sha256-95x1QJTbAXQUXWAaLCXxNJrxH7P7E7mFvuOm2gtcxdk=" }, - "r01f8a8c2": { - "rev": "01f8a8c2d5327d0a3c89f36802f72f6278d574ae", - "hash": "sha256-sA2gcLtJsr4XAORmMK1KABFX1U+HFczPK1xVXszWDLU=" + "ra4f8755f": { + "rev": "a4f8755f8e66b77ca2230f376bc5d5d54b28544e", + "hash": "sha256-z5G6N6vr0wUpvRLafOMHE5tLX2Aj2ipvfsTSScdb2oE=" }, - "r055375ef": { - "rev": "055375ef2629d1547324113968f824a76879c927", - "hash": "sha256-wCHD4l/a2tIMLFXvprGUqZXpqofdqgTSS5HT+iiKumE=" + "r5d3124a3": { + "rev": "5d3124a304df8c69d38a73619bf4eae05b9d5545", + "hash": "sha256-jmfIlhwWrHeDX1F0znwOlR7NznXyfisRG5RB5s1KQHU=" }, - "r0a3663a6": { - "rev": "0a3663a64f00b6337ec80d78c8945f2c77c63dba", - "hash": "sha256-DxvOA1lcLILfiXF5uuVrWX9L1+ZjcNeJbtQo46gHWrk=" + "r3f680b0e": { + "rev": "3f680b0eff18ddd6c878b92bffbc1b53fe6bd797", + "hash": "sha256-nt3xV1wO5svpgQk///eWTikcqOoaRIqIFwLqZhxGT2A=" }, - "r06a6ed01": { - "rev": "06a6ed0170cc4e655e5655588e7c8e82c7fe28c5", - "hash": "sha256-So+OHLsm77WITjttixxOJ7w3RGHIz5ZRBLHE32Qh5Zc=" + "rdd521945": { + "rev": "dd5219451c3ce26221762a15d867edf43b463bb2", + "hash": "sha256-SLWV9JkMwUC0lZ18D3Tt79gqQ/2vTIapxAwKU3Y2Cac=" }, - "r1ffb4a42": { - "rev": "1ffb4a4283a7ac5e795bf7c145cf133fb8acbb53", - "hash": "sha256-FOSD1m310rVq3c5+4iwgKtvNailvGEKzSfTSzjPATAs=" + "ra02b7435": { + "rev": "a02b7435ca52b81c7cce656d577c8423b1cc4bb3", + "hash": "sha256-lwOC5VETlv/Nq3+dR3XhBd8qnnMvgjH7HAb+60OgGTw=" }, - "r1386aad1": { - "rev": "1386aad102bfcdadbb7e0911f141067f6d67966d", - "hash": "sha256-LFA92v7RRMNVdfzAiiCh1UdqT5Rxfm4+gk09JBiwGQg=" + "r5fb362c6": { + "rev": "5fb362c66a57b4d1e300a1d56b461bbb69e8c8ae", + "hash": "sha256-gCuFIHQj9gQA2BqGB1VSEma4Brf/2IztMaaipJUPn88=" }, - "rd363247f": { - "rev": "d363247f1eed9b84b22cf02720b030d409ef49a6", - "hash": "sha256-SOe63Oum1fie46XTAg+7ZMjORtzP37gtriDcy1fMpIw=" + "r860cc73b": { + "rev": "860cc73bb2964457461a6f3cb5807dbd79256372", + "hash": "sha256-D1v3lfaL07pzn1p+tAIvflBtEw1seNUniBLdZMhIBs0=" }, - "r02b1d195": { - "rev": "02b1d1953aa8cf44b887309b14496e235146b32f", - "hash": "sha256-mlaZyhbAi1TbuA2bGUNTYwy7UsDTFBjsqXXgJ5Wqmu8=" + "r474ddf8b": { + "rev": "474ddf8ba95f30e69acea37d76b3e671d89381c3", + "hash": "sha256-T/FCRe7w8B6W7Xw+DMbj750CNKLbALm2EeSAPLgSvrU=" }, - "r0a471910": { - "rev": "0a471910b41d6e5846b7874d9705c192b72dd8a3", - "hash": "sha256-2DJdzlwSni9AUqwkPIMynRtxmY6Ru4GNHbQ8tzAFg14=" + "r908b1300": { + "rev": "908b1300ff4ed3cfc3c965d846560f2593a51491", + "hash": "sha256-cJs3RnYEI1lVEy5cmHN5EmULIDjZY4PgDjF0eGicZiM=" }, - "r288ca7dc": { - "rev": "288ca7dcb44a177a1f3f7fa5be4f581edf1da668", - "hash": "sha256-6nrajlvKYMyCdA5ScOLoc8oPmnuObcayHNpxJcnPtiQ=" + "rf3165478": { + "rev": "f31654786c0e9c54c227b1e966faadc615780ef5", + "hash": "sha256-gHJLYi1TeYSzfE5DjB17Tt/2paE3Q8/iLcQgqLgguNg=" }, - "r57533465": { - "rev": "575334657fcb66a4861c9d125430b2aef60476a6", - "hash": "sha256-vHc4MxkQkbJ4FlwS47znQW+sMqIH2kW4OdGPcb4tn94=" + "r65ad925f": { + "rev": "65ad925f51d879f8babd22ecb2ca4dc779b2cc24", + "hash": "sha256-8/54cNgeCzdm0bnswToe/d3XyixLls9Gv1s+Z/g5ydI=" }, - "r666d16e2": { - "rev": "666d16e262bb333cdf9d0971a1221133b35dc474", - "hash": "sha256-xA/Adrp1IggXLZvaIvQhZuIu7tIkvEySufZDOP/umws=" + "r02397c7c": { + "rev": "02397c7c973e9dbdda0f4d610e91395b7a72d3c6", + "hash": "sha256-FCZeP2lgTsRo/cVI+ES090pYAaDi5Rom0TI8E8LvsD0=" }, - "r049fdfc7": { - "rev": "049fdfc7e0cd1e1390128459fb159265e5861420", - "hash": "sha256-HnviL88MBOK1sfcvEWzbDe240KkWVX1Pp2vf9KOciJU=" + "rde434576": { + "rev": "de434576d7412b95a8eb90d613fc9f01e2d7166b", + "hash": "sha256-nupZ+yTMYwLeARfszeXFLEaeeLBmeN73V9EUH4Hr84E=" }, - "r2eb28897": { - "rev": "2eb2889702d9c57b89cfcc38ce57541251b421fc", - "hash": "sha256-RHTU0BXNxyvJFn1137jb5oxOkMmcYRVEefxk2SKM+Y8=" + "r3592aa30": { + "rev": "3592aa3009eb883f7e5431ad7ce08dc3ae979902", + "hash": "sha256-LkHwOGR3YmpVDEOmBZwXZEtaOyf7+m/7aVXmHMipDJE=" }, - "r40e4ecb7": { - "rev": "40e4ecb793e057d3c8b01a489603d7f90bafe53c", - "hash": "sha256-gmFycsMeT/YNWfYInLXGchpjj+z9hp/C648TDK7HDM0=" + "r9f426b60": { + "rev": "9f426b60fabf5e5fec0a0a05120de19289ef1fdf", + "hash": "sha256-jPJhMJPkPjTqRILCpyeDq+XBU9NFA8Sw5Izh78l50tk=" }, - "r48eaa28a": { - "rev": "48eaa28a124e702edf373e212011cb283f0f0161", - "hash": "sha256-kl+C/REClp8E5R74VBUVL5HexZ1whLmnz/Gehi3nRlk=" + "r8ce0e1c1": { + "rev": "8ce0e1c14e48109773f1e94e5f8b020aa1e24dc5", + "hash": "sha256-N4MWyTJPgwQN+d1wv4s/rq/930dBaEudJDI6/GrybrI=" }, - "r380bc30f": { - "rev": "380bc30f0c048368b884ec9da90eeda2a28cb1e7", - "hash": "sha256-UvLSoas5SI+DS3Tptp78uIZ41dckrFhz3nIn+vexv4E=" + "rf2029899": { + "rev": "f2029899b2c1dcf3e3120876794da088f42ad351", + "hash": "sha256-L7NXMdHITp4aUXZFQeRp6F55DMCBkmqTPoZfN0ErCYc=" }, - "ra4f78775": { - "rev": "a4f78775b97928387704bd1ab780ee68365f4ee5", - "hash": "sha256-FL5nDp4KoA5aRXig+0n4vXVU/BObx9o+y1SEW/sBFuQ=" + "r801a8010": { + "rev": "801a801024febe1a33add5ddaa719e257d97aba5", + "hash": "sha256-BvDaLePWJKXdVCSo8qY1dSeKH0rNz0Vo8+AV7k8HkPM=" }, - "r2ccdf584": { - "rev": "2ccdf584aa3304e5c9aaa221cc1fd1368c62d096", - "hash": "sha256-wPvGh11clvLUlWibMcgbEahi0rmDJsqYqZl3pUJQtJo=" + "r9a836f78": { + "rev": "9a836f7840b965e66085f8380116a54076f44a4b", + "hash": "sha256-dbAExSW2fud0EaDItO+MyyOBPSJdKnyQymWCtUBbntU=" }, - "r02808ddc": { - "rev": "02808ddcaad2de63773f566835916bc0a1e36f87", - "hash": "sha256-5fyEPP3IuDzafoYrG9JlTQZ/UA5HfjRJBpN4cgrVxTU=" + "rbdc35b63": { + "rev": "bdc35b63617f78037768f4897d8835696f02181a", + "hash": "sha256-i7vQzzPr2SVvoq87gUVcnMRtaaeQc9+K89olB1ZYnZo=" }, - "rac97cc0e": { - "rev": "ac97cc0e515b802c537fe50efc6e2faa2c7b0a0b", - "hash": "sha256-VRqv+ekEL7lktXkSr/4iTBzqomd8iOrCATK3lFW06uo=" + "r123eaaef": { + "rev": "123eaaef26abc278f53ae338e9c758eb01c70b08", + "hash": "sha256-6vAJ6bUZQKXFuiPEgPaaXhaLzynKe6hyqp2nO+RlXfc=" }, - "reb7c3008": { - "rev": "eb7c3008cc85c9cfedca7690f147f5773483f941", - "hash": "sha256-iephAcVqFFmn/dpHGR6bFsjf2OZfPsnOhA8JqNyjamU=" + "rc3c540b9": { + "rev": "c3c540b9a4d066476e8be372e0c5059979c8578e", + "hash": "sha256-teW60idbGmIwZYk/YEyeSfeDeZJ+bLGhasDB2b924wo=" }, - "rd3192050": { - "rev": "d319205007c10ca27280496b2de9d7256dbd953d", - "hash": "sha256-JSWLhC5ZebuBOHX8Ax6mLdQj1bO9xN8OV5x9K78TW2g=" + "r686d05aa": { + "rev": "686d05aaa57604b5d867f1d40e85f04759151ce1", + "hash": "sha256-e9LCleyoKgqmcHNnZMTEk3wA8iCTWrTHnBwwe9dhb8Q=" }, - "r041dd68c": { - "rev": "041dd68cecd28bdaf5506d148df4634cd0c540af", - "hash": "sha256-2ZkPSH22Y/Uaa/IjzPPGNjNs0nrdAXz6P7PRMovzEb4=" + "r1c2473eb": { + "rev": "1c2473ebae2411949027c950eea5261a3a8f7922", + "hash": "sha256-Z+xI0Rea5WuZnUinMF9FOdMVe5CtXvihAgoCzs9/r00=" }, - "r1d339558": { - "rev": "1d339558acc7f2e21b8f9df094e43178c05139c0", - "hash": "sha256-trHB7x9QcLVChT+ONraqikPKJwppjx4Mn/9ydd6bgfQ=" + "rb27438e1": { + "rev": "b27438e1268d3ef645c6f8ce10c184bb7d57825d", + "hash": "sha256-TdochIfhmyaCs4cRaMIRU4HNLA9142HYuinBpUXHH+E=" }, - "rd12f2ba5": { - "rev": "d12f2ba55e015a16f97e53c7314babd483e10ea3", - "hash": "sha256-ufpj+f6lc62AtBTjaWv1Zf02r/o0YQwH8hAmq8aXRNE=" + "r5799ebfe": { + "rev": "5799ebfe5f895ecd29fcd699789854fc1790d6cd", + "hash": "sha256-wB0haPGSwvPepfVCgb8ueqVAk9aRHp/Hme6hETyqMnY=" }, - "r9f9c938a": { - "rev": "9f9c938af0affceee30eef308ed2596e1d7f53e0", - "hash": "sha256-odnwO/idLZc+H9TQL1fB8vV3VcI/DkdgoVfVs0veB3w=" + "r52067828": { + "rev": "52067828463443821e175975d19085b2c8bf2f54", + "hash": "sha256-CDaSjRjV9ou3fM+Lmfwpiv/ylwlwHv0VUUTzLGpGh0A=" }, - "r82639e6f": { - "rev": "82639e6f5341a3129b7cb62a5a2dd9b65f3c91ef", - "hash": "sha256-Ryq0VoO1K8U2+0clK9lAVvzrhzln8pMUlYV2evuGgwM=" + "r4e93cd48": { + "rev": "4e93cd487f0a7f447d194621a59018a88d246379", + "hash": "sha256-8OWFPnV+5Vk3LY6BpHIE7I3Bp6v+n3Z1vqXG4dtO70E=" }, - "re833a6df": { - "rev": "e833a6dfa2a89420d37070cd9b27688e37e83c8c", - "hash": "sha256-FWXVbDGOiyTC7igmTwxzhk4L/a/P80/fhOdwobVEwYU=" + "r71a3b826": { + "rev": "71a3b826636eee85c20f064ef318f0935416a479", + "hash": "sha256-WUb4HfQv9Tt3776inSUVB5zc5giAFXpHOYaYjM5HumU=" }, - "r378cca80": { - "rev": "378cca8016622e372a2da6cad0026ee12c426d6d", - "hash": "sha256-Sv4G8325ZpI9x0r8DFjanUtogttIWYmzdNA4gOPRALc=" + "r468cde90": { + "rev": "468cde90ca58421d63f4dfeaebcf8bb3fccb4127", + "hash": "sha256-aXCE8KmtZDVud5v12eECS8kMInh1slqMwK5kc/diWD0=" }, - "r350257db": { - "rev": "350257db77b736385fdbad16308bef9be22d60cf", - "hash": "sha256-vHZKmyk1X8P+P7WMays+OatkXcjwt1tgcoN+JA/3KpU=" + "r8d4c8fc4": { + "rev": "8d4c8fc41be567bca17ce7c15304dc06539a060a", + "hash": "sha256-rO0KW9bLeZUlEZ99BlCH0v+FI43mCIcvLl5eupM5kzk=" }, - "r62a4dcd2": { - "rev": "62a4dcd256a028918b17756f7fd3f95eaae5ab7e", - "hash": "sha256-5sbkiXtuy71ujJhncHAp0m4vbI9tQnW75iz1/oAx2rc=" + "r3d15a94a": { + "rev": "3d15a94add73c195fa0e68250afae8c030818437", + "hash": "sha256-NECKcKEWsaPXOaVEvCJ2ElVTbK9I7QwB94DtntWKLy0=" }, - "r9edbc7ff": { - "rev": "9edbc7ff9f56dff801a49f5ecb15ee06718b995c", - "hash": "sha256-ReWBiMykRsIC6xJU3hRg5Mj6se1eRSdjD/kvgD6nKzw=" + "rc02c19e0": { + "rev": "c02c19e0d842f54d903a9b62316476f4b9c4e3f0", + "hash": "sha256-jtpyvtMRMRCG5vIyl+1QMqvTaUgyX9RR0EY7h7aS3lY=" }, - "r045ee419": { - "rev": "045ee41928e482d7e3022ff9d9c73ed2bab48b91", - "hash": "sha256-NPftv8mj9KLZ0BEo5uSezGY7kvmjRfApNVllCWr7Gbc=" + "rc295935a": { + "rev": "c295935a9bf345acb597ffefb69f7e095c3eee72", + "hash": "sha256-QMfhNhx9P5qNbRyeIqmdxxqhiL84hz+04Q9RZE4tyd4=" }, - "r74944287": { - "rev": "74944287e1ab95e091107c9f26ce46bd50e13043", - "hash": "sha256-ZbyjkLVsdhz76p8pPox9uC3YvCL6pjU590IaF7h2yfg=" + "r92de0b53": { + "rev": "92de0b53a799a8724865fe816200c1421381d128", + "hash": "sha256-4ZYn1Yh91ALqQ+bHdqV/sPK9t8pD1/4KfFvENjGq330=" }, - "rb65ce68c": { - "rev": "b65ce68c8f2c1e3e9d18b6ebf0f48905b5368a39", - "hash": "sha256-ZSCII2Qi5iIpLSidsrYEnKqrAwqJNw0xV8LHBDGY7RM=" + "r2c8445c5": { + "rev": "2c8445c5f7515f8125f41aa1e3da2501b8b040d1", + "hash": "sha256-jncx5QcrmJs0t5qgCv7Wh4cs8gCbDNosjKPp6e1r9dk=" }, - "r0a87c498": { - "rev": "0a87c4982c617799d48cad210945ec6429c13b8f", - "hash": "sha256-zFf1d0So61ij4BqnB/96kRqt6SYUsdKGnJNGveS90ms=" + "r3989c997": { + "rev": "3989c99706bf30054798ff82f1cb010e50e385f5", + "hash": "sha256-UnupFj0S9Oe9v4a2U2WUWQ3hleN/oFaZnCP+Il7TsEk=" }, - "r8d685ec8": { - "rev": "8d685ec867c4975013b11e72b280a1af850737f5", - "hash": "sha256-VsdQQ7zbl/xVrQgpBsAoAKhelmfn90ouH6haBAi7mXI=" + "r5eeaf302": { + "rev": "5eeaf3029dab6b7264522c57a7a2acb461c0a434", + "hash": "sha256-LzLdeWyZ0/D7vicUO197AKi6QHr8qe/Su0IxXgPHbJE=" }, - "rc67076d6": { - "rev": "c67076d653f7501136f7b208df4b011a7275e8f5", - "hash": "sha256-MALoEV07gCSnSZgivQDkzIU7/xokXxoQMp0pOev7Nyc=" + "rde196121": { + "rev": "de196121b05adea2f9b7e400271266495a40b0f4", + "hash": "sha256-TtgmEPl75KJ6wayrPoD+2rTPlCV+rAgGbppWofww0iU=" }, - "r9b896cf1": { - "rev": "9b896cf148e692fca46d7f34d0e45d1c58764db3", - "hash": "sha256-hGf31gWcCFzhsREgESoY988gAeEUVxB1bJU5MbHnl/M=" + "r2309f645": { + "rev": "2309f645e509507a1cc8f9845771110fcf986fd9", + "hash": "sha256-V24YX21Ze9KykwCMghKnuCXixYUUKZ7U1udi8I9mv88=" }, - "ra866ba5d": { - "rev": "a866ba5d704973e5678d744ebd10ffbee3e3d3a3", - "hash": "sha256-i5NP3rxLGGmtgatQbXLNcaV9uB/8i2BmosFHPrxLCsA=" + "r14d192e9": { + "rev": "14d192e930802135eadf57d1cd90165a94e3441a", + "hash": "sha256-7lYiZsgfjsaqo+6sQ7H3TaiS+dHgM4H8KqAM4LRLe5k=" }, - "r356a9a08": { - "rev": "356a9a0895bbda5e78f5627dd546d4f09c380166", - "hash": "sha256-RGFLQV1c/lmqoChsoxv27JrPWT8VW92yJXob5TLYHSY=" + "re8434d30": { + "rev": "e8434d304cb10d2b52a426a13e6a1f852d63bba2", + "hash": "sha256-sqVazinRxRbwryjDUvHPv5jmyu15lXuIXyMxqz7PFLU=" }, - "r1458b49a": { - "rev": "1458b49a9e53b0db0ad63e8ef3156214f1473d87", - "hash": "sha256-x3nEtHyzZPn7WxtsLnCs3fox2dHjJXa5RsLzR/2SsOI=" + "rf1efbc8f": { + "rev": "f1efbc8f8be9ce2918eaf46c48f294cb214023b9", + "hash": "sha256-kev4zyibpHEbmuVIAF4gR9QXONQH9A3iDEr5D+RBuzI=" }, - "rde1d2881": { - "rev": "de1d2881aea4aa23ba580da752387e52a5fd3eb2", - "hash": "sha256-0KnJ1+ii8WUaVyQCgzb6re0ZBjJW4aLma9OUTf8pJVg=" + "r98b4cdba": { + "rev": "98b4cdba1e4ede26d845bcae8185ddb5b2feea93", + "hash": "sha256-MuQosdGCJejCzi0lWz8p7Dqgi2Q3VuhFUj3CutLxXIc=" }, "r15cd8bf4": { "rev": "15cd8bf433750187d6c8babc83abec83f6215eb3", "hash": "sha256-zNBKpVbx7EHMdYcjHw0EuvAb1kiWnxt4/dyU06c9bGk=" }, - "r98b4cdba": { - "rev": "98b4cdba1e4ede26d845bcae8185ddb5b2feea93", - "hash": "sha256-MuQosdGCJejCzi0lWz8p7Dqgi2Q3VuhFUj3CutLxXIc=" - }, - "rf1efbc8f": { - "rev": "f1efbc8f8be9ce2918eaf46c48f294cb214023b9", - "hash": "sha256-kev4zyibpHEbmuVIAF4gR9QXONQH9A3iDEr5D+RBuzI=" + "rde1d2881": { + "rev": "de1d2881aea4aa23ba580da752387e52a5fd3eb2", + "hash": "sha256-0KnJ1+ii8WUaVyQCgzb6re0ZBjJW4aLma9OUTf8pJVg=" }, - "re8434d30": { - "rev": "e8434d304cb10d2b52a426a13e6a1f852d63bba2", - "hash": "sha256-sqVazinRxRbwryjDUvHPv5jmyu15lXuIXyMxqz7PFLU=" + "r1458b49a": { + "rev": "1458b49a9e53b0db0ad63e8ef3156214f1473d87", + "hash": "sha256-x3nEtHyzZPn7WxtsLnCs3fox2dHjJXa5RsLzR/2SsOI=" }, - "r14d192e9": { - "rev": "14d192e930802135eadf57d1cd90165a94e3441a", - "hash": "sha256-7lYiZsgfjsaqo+6sQ7H3TaiS+dHgM4H8KqAM4LRLe5k=" + "r356a9a08": { + "rev": "356a9a0895bbda5e78f5627dd546d4f09c380166", + "hash": "sha256-RGFLQV1c/lmqoChsoxv27JrPWT8VW92yJXob5TLYHSY=" }, - "r2309f645": { - "rev": "2309f645e509507a1cc8f9845771110fcf986fd9", - "hash": "sha256-V24YX21Ze9KykwCMghKnuCXixYUUKZ7U1udi8I9mv88=" + "ra866ba5d": { + "rev": "a866ba5d704973e5678d744ebd10ffbee3e3d3a3", + "hash": "sha256-i5NP3rxLGGmtgatQbXLNcaV9uB/8i2BmosFHPrxLCsA=" }, - "rde196121": { - "rev": "de196121b05adea2f9b7e400271266495a40b0f4", - "hash": "sha256-TtgmEPl75KJ6wayrPoD+2rTPlCV+rAgGbppWofww0iU=" + "r9b896cf1": { + "rev": "9b896cf148e692fca46d7f34d0e45d1c58764db3", + "hash": "sha256-hGf31gWcCFzhsREgESoY988gAeEUVxB1bJU5MbHnl/M=" }, - "r5eeaf302": { - "rev": "5eeaf3029dab6b7264522c57a7a2acb461c0a434", - "hash": "sha256-LzLdeWyZ0/D7vicUO197AKi6QHr8qe/Su0IxXgPHbJE=" + "rc67076d6": { + "rev": "c67076d653f7501136f7b208df4b011a7275e8f5", + "hash": "sha256-MALoEV07gCSnSZgivQDkzIU7/xokXxoQMp0pOev7Nyc=" }, - "r3989c997": { - "rev": "3989c99706bf30054798ff82f1cb010e50e385f5", - "hash": "sha256-UnupFj0S9Oe9v4a2U2WUWQ3hleN/oFaZnCP+Il7TsEk=" + "r8d685ec8": { + "rev": "8d685ec867c4975013b11e72b280a1af850737f5", + "hash": "sha256-VsdQQ7zbl/xVrQgpBsAoAKhelmfn90ouH6haBAi7mXI=" }, - "r2c8445c5": { - "rev": "2c8445c5f7515f8125f41aa1e3da2501b8b040d1", - "hash": "sha256-jncx5QcrmJs0t5qgCv7Wh4cs8gCbDNosjKPp6e1r9dk=" + "r0a87c498": { + "rev": "0a87c4982c617799d48cad210945ec6429c13b8f", + "hash": "sha256-zFf1d0So61ij4BqnB/96kRqt6SYUsdKGnJNGveS90ms=" }, - "r92de0b53": { - "rev": "92de0b53a799a8724865fe816200c1421381d128", - "hash": "sha256-4ZYn1Yh91ALqQ+bHdqV/sPK9t8pD1/4KfFvENjGq330=" + "rb65ce68c": { + "rev": "b65ce68c8f2c1e3e9d18b6ebf0f48905b5368a39", + "hash": "sha256-ZSCII2Qi5iIpLSidsrYEnKqrAwqJNw0xV8LHBDGY7RM=" }, - "rc295935a": { - "rev": "c295935a9bf345acb597ffefb69f7e095c3eee72", - "hash": "sha256-QMfhNhx9P5qNbRyeIqmdxxqhiL84hz+04Q9RZE4tyd4=" + "r74944287": { + "rev": "74944287e1ab95e091107c9f26ce46bd50e13043", + "hash": "sha256-ZbyjkLVsdhz76p8pPox9uC3YvCL6pjU590IaF7h2yfg=" }, - "rc02c19e0": { - "rev": "c02c19e0d842f54d903a9b62316476f4b9c4e3f0", - "hash": "sha256-jtpyvtMRMRCG5vIyl+1QMqvTaUgyX9RR0EY7h7aS3lY=" + "r045ee419": { + "rev": "045ee41928e482d7e3022ff9d9c73ed2bab48b91", + "hash": "sha256-NPftv8mj9KLZ0BEo5uSezGY7kvmjRfApNVllCWr7Gbc=" }, - "r3d15a94a": { - "rev": "3d15a94add73c195fa0e68250afae8c030818437", - "hash": "sha256-NECKcKEWsaPXOaVEvCJ2ElVTbK9I7QwB94DtntWKLy0=" + "r9edbc7ff": { + "rev": "9edbc7ff9f56dff801a49f5ecb15ee06718b995c", + "hash": "sha256-ReWBiMykRsIC6xJU3hRg5Mj6se1eRSdjD/kvgD6nKzw=" }, - "r8d4c8fc4": { - "rev": "8d4c8fc41be567bca17ce7c15304dc06539a060a", - "hash": "sha256-rO0KW9bLeZUlEZ99BlCH0v+FI43mCIcvLl5eupM5kzk=" + "r62a4dcd2": { + "rev": "62a4dcd256a028918b17756f7fd3f95eaae5ab7e", + "hash": "sha256-5sbkiXtuy71ujJhncHAp0m4vbI9tQnW75iz1/oAx2rc=" }, - "r468cde90": { - "rev": "468cde90ca58421d63f4dfeaebcf8bb3fccb4127", - "hash": "sha256-aXCE8KmtZDVud5v12eECS8kMInh1slqMwK5kc/diWD0=" + "r350257db": { + "rev": "350257db77b736385fdbad16308bef9be22d60cf", + "hash": "sha256-vHZKmyk1X8P+P7WMays+OatkXcjwt1tgcoN+JA/3KpU=" }, - "r71a3b826": { - "rev": "71a3b826636eee85c20f064ef318f0935416a479", - "hash": "sha256-WUb4HfQv9Tt3776inSUVB5zc5giAFXpHOYaYjM5HumU=" + "r378cca80": { + "rev": "378cca8016622e372a2da6cad0026ee12c426d6d", + "hash": "sha256-Sv4G8325ZpI9x0r8DFjanUtogttIWYmzdNA4gOPRALc=" }, - "r4e93cd48": { - "rev": "4e93cd487f0a7f447d194621a59018a88d246379", - "hash": "sha256-8OWFPnV+5Vk3LY6BpHIE7I3Bp6v+n3Z1vqXG4dtO70E=" + "re833a6df": { + "rev": "e833a6dfa2a89420d37070cd9b27688e37e83c8c", + "hash": "sha256-FWXVbDGOiyTC7igmTwxzhk4L/a/P80/fhOdwobVEwYU=" }, - "r52067828": { - "rev": "52067828463443821e175975d19085b2c8bf2f54", - "hash": "sha256-CDaSjRjV9ou3fM+Lmfwpiv/ylwlwHv0VUUTzLGpGh0A=" + "r82639e6f": { + "rev": "82639e6f5341a3129b7cb62a5a2dd9b65f3c91ef", + "hash": "sha256-Ryq0VoO1K8U2+0clK9lAVvzrhzln8pMUlYV2evuGgwM=" }, - "r5799ebfe": { - "rev": "5799ebfe5f895ecd29fcd699789854fc1790d6cd", - "hash": "sha256-wB0haPGSwvPepfVCgb8ueqVAk9aRHp/Hme6hETyqMnY=" + "r9f9c938a": { + "rev": "9f9c938af0affceee30eef308ed2596e1d7f53e0", + "hash": "sha256-odnwO/idLZc+H9TQL1fB8vV3VcI/DkdgoVfVs0veB3w=" }, - "rb27438e1": { - "rev": "b27438e1268d3ef645c6f8ce10c184bb7d57825d", - "hash": "sha256-TdochIfhmyaCs4cRaMIRU4HNLA9142HYuinBpUXHH+E=" + "rd12f2ba5": { + "rev": "d12f2ba55e015a16f97e53c7314babd483e10ea3", + "hash": "sha256-ufpj+f6lc62AtBTjaWv1Zf02r/o0YQwH8hAmq8aXRNE=" }, - "r1c2473eb": { - "rev": "1c2473ebae2411949027c950eea5261a3a8f7922", - "hash": "sha256-Z+xI0Rea5WuZnUinMF9FOdMVe5CtXvihAgoCzs9/r00=" + "r1d339558": { + "rev": "1d339558acc7f2e21b8f9df094e43178c05139c0", + "hash": "sha256-trHB7x9QcLVChT+ONraqikPKJwppjx4Mn/9ydd6bgfQ=" }, - "r686d05aa": { - "rev": "686d05aaa57604b5d867f1d40e85f04759151ce1", - "hash": "sha256-e9LCleyoKgqmcHNnZMTEk3wA8iCTWrTHnBwwe9dhb8Q=" + "r041dd68c": { + "rev": "041dd68cecd28bdaf5506d148df4634cd0c540af", + "hash": "sha256-2ZkPSH22Y/Uaa/IjzPPGNjNs0nrdAXz6P7PRMovzEb4=" }, - "rc3c540b9": { - "rev": "c3c540b9a4d066476e8be372e0c5059979c8578e", - "hash": "sha256-teW60idbGmIwZYk/YEyeSfeDeZJ+bLGhasDB2b924wo=" + "rd3192050": { + "rev": "d319205007c10ca27280496b2de9d7256dbd953d", + "hash": "sha256-JSWLhC5ZebuBOHX8Ax6mLdQj1bO9xN8OV5x9K78TW2g=" }, - "r123eaaef": { - "rev": "123eaaef26abc278f53ae338e9c758eb01c70b08", - "hash": "sha256-6vAJ6bUZQKXFuiPEgPaaXhaLzynKe6hyqp2nO+RlXfc=" + "reb7c3008": { + "rev": "eb7c3008cc85c9cfedca7690f147f5773483f941", + "hash": "sha256-iephAcVqFFmn/dpHGR6bFsjf2OZfPsnOhA8JqNyjamU=" }, - "rbdc35b63": { - "rev": "bdc35b63617f78037768f4897d8835696f02181a", - "hash": "sha256-i7vQzzPr2SVvoq87gUVcnMRtaaeQc9+K89olB1ZYnZo=" + "rac97cc0e": { + "rev": "ac97cc0e515b802c537fe50efc6e2faa2c7b0a0b", + "hash": "sha256-VRqv+ekEL7lktXkSr/4iTBzqomd8iOrCATK3lFW06uo=" }, - "r9a836f78": { - "rev": "9a836f7840b965e66085f8380116a54076f44a4b", - "hash": "sha256-dbAExSW2fud0EaDItO+MyyOBPSJdKnyQymWCtUBbntU=" + "r02808ddc": { + "rev": "02808ddcaad2de63773f566835916bc0a1e36f87", + "hash": "sha256-5fyEPP3IuDzafoYrG9JlTQZ/UA5HfjRJBpN4cgrVxTU=" }, - "r801a8010": { - "rev": "801a801024febe1a33add5ddaa719e257d97aba5", - "hash": "sha256-BvDaLePWJKXdVCSo8qY1dSeKH0rNz0Vo8+AV7k8HkPM=" + "r2ccdf584": { + "rev": "2ccdf584aa3304e5c9aaa221cc1fd1368c62d096", + "hash": "sha256-wPvGh11clvLUlWibMcgbEahi0rmDJsqYqZl3pUJQtJo=" }, - "rf2029899": { - "rev": "f2029899b2c1dcf3e3120876794da088f42ad351", - "hash": "sha256-L7NXMdHITp4aUXZFQeRp6F55DMCBkmqTPoZfN0ErCYc=" + "ra4f78775": { + "rev": "a4f78775b97928387704bd1ab780ee68365f4ee5", + "hash": "sha256-FL5nDp4KoA5aRXig+0n4vXVU/BObx9o+y1SEW/sBFuQ=" }, - "r8ce0e1c1": { - "rev": "8ce0e1c14e48109773f1e94e5f8b020aa1e24dc5", - "hash": "sha256-N4MWyTJPgwQN+d1wv4s/rq/930dBaEudJDI6/GrybrI=" + "r380bc30f": { + "rev": "380bc30f0c048368b884ec9da90eeda2a28cb1e7", + "hash": "sha256-UvLSoas5SI+DS3Tptp78uIZ41dckrFhz3nIn+vexv4E=" }, - "r9f426b60": { - "rev": "9f426b60fabf5e5fec0a0a05120de19289ef1fdf", - "hash": "sha256-jPJhMJPkPjTqRILCpyeDq+XBU9NFA8Sw5Izh78l50tk=" + "r48eaa28a": { + "rev": "48eaa28a124e702edf373e212011cb283f0f0161", + "hash": "sha256-kl+C/REClp8E5R74VBUVL5HexZ1whLmnz/Gehi3nRlk=" }, - "r3592aa30": { - "rev": "3592aa3009eb883f7e5431ad7ce08dc3ae979902", - "hash": "sha256-LkHwOGR3YmpVDEOmBZwXZEtaOyf7+m/7aVXmHMipDJE=" + "r40e4ecb7": { + "rev": "40e4ecb793e057d3c8b01a489603d7f90bafe53c", + "hash": "sha256-gmFycsMeT/YNWfYInLXGchpjj+z9hp/C648TDK7HDM0=" }, - "rde434576": { - "rev": "de434576d7412b95a8eb90d613fc9f01e2d7166b", - "hash": "sha256-nupZ+yTMYwLeARfszeXFLEaeeLBmeN73V9EUH4Hr84E=" + "r2eb28897": { + "rev": "2eb2889702d9c57b89cfcc38ce57541251b421fc", + "hash": "sha256-RHTU0BXNxyvJFn1137jb5oxOkMmcYRVEefxk2SKM+Y8=" }, - "r02397c7c": { - "rev": "02397c7c973e9dbdda0f4d610e91395b7a72d3c6", - "hash": "sha256-FCZeP2lgTsRo/cVI+ES090pYAaDi5Rom0TI8E8LvsD0=" + "r049fdfc7": { + "rev": "049fdfc7e0cd1e1390128459fb159265e5861420", + "hash": "sha256-HnviL88MBOK1sfcvEWzbDe240KkWVX1Pp2vf9KOciJU=" }, - "r65ad925f": { - "rev": "65ad925f51d879f8babd22ecb2ca4dc779b2cc24", - "hash": "sha256-8/54cNgeCzdm0bnswToe/d3XyixLls9Gv1s+Z/g5ydI=" + "r666d16e2": { + "rev": "666d16e262bb333cdf9d0971a1221133b35dc474", + "hash": "sha256-xA/Adrp1IggXLZvaIvQhZuIu7tIkvEySufZDOP/umws=" }, - "rf3165478": { - "rev": "f31654786c0e9c54c227b1e966faadc615780ef5", - "hash": "sha256-gHJLYi1TeYSzfE5DjB17Tt/2paE3Q8/iLcQgqLgguNg=" + "r57533465": { + "rev": "575334657fcb66a4861c9d125430b2aef60476a6", + "hash": "sha256-vHc4MxkQkbJ4FlwS47znQW+sMqIH2kW4OdGPcb4tn94=" }, - "r908b1300": { - "rev": "908b1300ff4ed3cfc3c965d846560f2593a51491", - "hash": "sha256-cJs3RnYEI1lVEy5cmHN5EmULIDjZY4PgDjF0eGicZiM=" + "r288ca7dc": { + "rev": "288ca7dcb44a177a1f3f7fa5be4f581edf1da668", + "hash": "sha256-6nrajlvKYMyCdA5ScOLoc8oPmnuObcayHNpxJcnPtiQ=" }, - "r474ddf8b": { - "rev": "474ddf8ba95f30e69acea37d76b3e671d89381c3", - "hash": "sha256-T/FCRe7w8B6W7Xw+DMbj750CNKLbALm2EeSAPLgSvrU=" + "r0a471910": { + "rev": "0a471910b41d6e5846b7874d9705c192b72dd8a3", + "hash": "sha256-2DJdzlwSni9AUqwkPIMynRtxmY6Ru4GNHbQ8tzAFg14=" }, - "r860cc73b": { - "rev": "860cc73bb2964457461a6f3cb5807dbd79256372", - "hash": "sha256-D1v3lfaL07pzn1p+tAIvflBtEw1seNUniBLdZMhIBs0=" + "r02b1d195": { + "rev": "02b1d1953aa8cf44b887309b14496e235146b32f", + "hash": "sha256-mlaZyhbAi1TbuA2bGUNTYwy7UsDTFBjsqXXgJ5Wqmu8=" }, - "r5fb362c6": { - "rev": "5fb362c66a57b4d1e300a1d56b461bbb69e8c8ae", - "hash": "sha256-gCuFIHQj9gQA2BqGB1VSEma4Brf/2IztMaaipJUPn88=" + "rd363247f": { + "rev": "d363247f1eed9b84b22cf02720b030d409ef49a6", + "hash": "sha256-SOe63Oum1fie46XTAg+7ZMjORtzP37gtriDcy1fMpIw=" }, - "ra02b7435": { - "rev": "a02b7435ca52b81c7cce656d577c8423b1cc4bb3", - "hash": "sha256-lwOC5VETlv/Nq3+dR3XhBd8qnnMvgjH7HAb+60OgGTw=" + "r1386aad1": { + "rev": "1386aad102bfcdadbb7e0911f141067f6d67966d", + "hash": "sha256-LFA92v7RRMNVdfzAiiCh1UdqT5Rxfm4+gk09JBiwGQg=" }, - "rdd521945": { - "rev": "dd5219451c3ce26221762a15d867edf43b463bb2", - "hash": "sha256-SLWV9JkMwUC0lZ18D3Tt79gqQ/2vTIapxAwKU3Y2Cac=" + "r1ffb4a42": { + "rev": "1ffb4a4283a7ac5e795bf7c145cf133fb8acbb53", + "hash": "sha256-FOSD1m310rVq3c5+4iwgKtvNailvGEKzSfTSzjPATAs=" }, - "r3f680b0e": { - "rev": "3f680b0eff18ddd6c878b92bffbc1b53fe6bd797", - "hash": "sha256-nt3xV1wO5svpgQk///eWTikcqOoaRIqIFwLqZhxGT2A=" + "r06a6ed01": { + "rev": "06a6ed0170cc4e655e5655588e7c8e82c7fe28c5", + "hash": "sha256-So+OHLsm77WITjttixxOJ7w3RGHIz5ZRBLHE32Qh5Zc=" }, - "r5d3124a3": { - "rev": "5d3124a304df8c69d38a73619bf4eae05b9d5545", - "hash": "sha256-jmfIlhwWrHeDX1F0znwOlR7NznXyfisRG5RB5s1KQHU=" + "r0a3663a6": { + "rev": "0a3663a64f00b6337ec80d78c8945f2c77c63dba", + "hash": "sha256-DxvOA1lcLILfiXF5uuVrWX9L1+ZjcNeJbtQo46gHWrk=" }, - "ra4f8755f": { - "rev": "a4f8755f8e66b77ca2230f376bc5d5d54b28544e", - "hash": "sha256-z5G6N6vr0wUpvRLafOMHE5tLX2Aj2ipvfsTSScdb2oE=" + "r055375ef": { + "rev": "055375ef2629d1547324113968f824a76879c927", + "hash": "sha256-wCHD4l/a2tIMLFXvprGUqZXpqofdqgTSS5HT+iiKumE=" }, - "r18b1b8b1": { - "rev": "18b1b8b1c4567190fe4a37262fdfba57aa446dc7", - "hash": "sha256-95x1QJTbAXQUXWAaLCXxNJrxH7P7E7mFvuOm2gtcxdk=" + "r01f8a8c2": { + "rev": "01f8a8c2d5327d0a3c89f36802f72f6278d574ae", + "hash": "sha256-sA2gcLtJsr4XAORmMK1KABFX1U+HFczPK1xVXszWDLU=" }, - "r235ee97b": { - "rev": "235ee97b469ca6761e5096ea829f4da032c591fe", - "hash": "sha256-slvLt9rpIdpkZWLhrdUogsz2rLMjuE99r3HXvrVo0p0=" + "r08ab59b8": { + "rev": "08ab59b8d7f0b173bf4179e5615a073993bcdd38", + "hash": "sha256-+f9XhKoUTgCtVt6jF21mByEk2MKf1p86pBo5etCXq/k=" }, - "r3763efb5": { - "rev": "3763efb56b5282cf92d71c259576352555c1a8f8", - "hash": "sha256-KI3iryvJplRurCGgYMdD7ryUHBh/Vrajpzuxh2XKUnA=" + "r6dd055d2": { + "rev": "6dd055d2eb39fe66e4b66bcb58eaa5692113caa0", + "hash": "sha256-R0PnUO1FdD+l/rBFoAfZAuHbfjZmcpd72sad3nxuRzI=" }, - "ra4851dd8": { - "rev": "a4851dd8c67a2b311403d67270e02e7296d31157", - "hash": "sha256-7cW4LQ3w0YgpY1WvY9c00VgFBmlZ+SyUTMgs8Df0e/E=" + "rafd88c27": { + "rev": "afd88c27f2fe9f8f1a6d5b287cc16b1bc8f06198", + "hash": "sha256-YMzAFNv9rw2kD0pK38FMNQ7JW2XCXyxMM94qOCfzyK8=" }, - "r2d7adaea": { - "rev": "2d7adaea91627b77b3d560d12703191fa5c434c0", - "hash": "sha256-ok7CxYZdi1uY5g4kGUhxaFi3Uj1EV5sH6r3B/O6pEBY=" + "r13a129d3": { + "rev": "13a129d301f4b2f9ab5d68c19902fc95c5dad89a", + "hash": "sha256-unIC3msCKL5UjGhsI+l9Z/uDCVx8dly+GDc7H7JOvz8=" }, - "rfaac623b": { - "rev": "faac623b09d6b14fbb06fe5150016de78b359eea", - "hash": "sha256-x5THk9BRkFGcomeu0rY9IWiMVDGJyQKNYlnfz4nRtiA=" + "rddd5ba78": { + "rev": "ddd5ba78a949c5458aad9f7c3f19d214a2e8338e", + "hash": "sha256-BiVNiS+01LE4mk8ATUeie2+CgfBHGsGjEzVkC4dPvkA=" }, - "rec6a4055": { - "rev": "ec6a4055437bd384a1dff3842c084eec49e203a8", - "hash": "sha256-gSwNYUaq2JRgBeUUo/QWqdRILrzd7pDne/Pvo6Q20mA=" + "rbf833c34": { + "rev": "bf833c346d532558a4c1c98940fa42e4e80a0a02", + "hash": "sha256-BlGzWt1dSoTUCJOI8Eis6BlMy1V2o2Nqufy3Mdz7xwU=" }, - "rbecb3ffc": { - "rev": "becb3ffccdecff83047285ebea20e5b85b2d65b1", - "hash": "sha256-jfv1Eztcgow3v+t4nGpAG4O7ztFi3a7+nKPOei5II7I=" + "rfc2d78dd": { + "rev": "fc2d78dd1e900e43be1812de1b1e1d4083267a54", + "hash": "sha256-8aR8nDOVgKhBKlgRNuvmhhEi+/w/aIi7pex7drxkclE=" }, - "r38d17d34": { - "rev": "38d17d345c73a3ac0cb451fa0696fd8efabadc0d", - "hash": "sha256-zMIaNxiBjb1H/d9Qu7fXWW43/8T/Uc9626XTwfvGEQ0=" + "r2ddc461a": { + "rev": "2ddc461a3f319a3d704891bde0a819959b9437cc", + "hash": "sha256-QjZ9Ior1bbI8k3SeRpkILwcOiTkdRKbBUFJq3qZUDy8=" }, - "rd4faa8d6": { - "rev": "d4faa8d63a06a5feff2e5b68695adf9bf8fd1f81", - "hash": "sha256-BtrreTatwvQMHW3DEzhaRqirYf6czUReaqgGskm81co=" + "rd5c565a9": { + "rev": "d5c565a98d4d036db91d34810e39fb116bf38c56", + "hash": "sha256-fYNraa7yy6ZgOvrjs01ld7pfIWIOpDGeFKCkZ5lTrcs=" }, - "rcf4f615d": { - "rev": "cf4f615d706d54fca9323fb1595d88f7ee2d7517", - "hash": "sha256-2DGnYooj8D1+eF++1z8jvHxZqB8LcqwVCavdWgOMYKo=" + "rf6d64efd": { + "rev": "f6d64efd1985d4668e084cabe03e41c3574b494f", + "hash": "sha256-JTxe75Z7ZZmJKz0L5qlRCEdPA5hvX/LEat9gkBEOXpI=" }, - "r6cbf2c09": { - "rev": "6cbf2c09f280fbf2190affee046783d0fe543113", - "hash": "sha256-lxWwe+UCPsQybZL9dCPUXlSs1maRlrkeWwmnVDXRlKg=" + "r52940c49": { + "rev": "52940c494517b1256d9569da0c2aefd018518348", + "hash": "sha256-arL/WA6dFWrdKGE3hBN8E9RNj5jLsBIZKDCxAj3A0IQ=" }, - "re2d7f2d6": { - "rev": "e2d7f2d625257b2c250ea2f18d3f832add5b43bf", - "hash": "sha256-ZDGX6wKYBbK8B6IkaHOz9GbY2AVZmtPWXWdeFditXLw=" + "r0efa7592": { + "rev": "0efa7592e3fb2ae647518a82ab19679b7c933d99", + "hash": "sha256-fLF4sd2eRYUvpGTwHMOElRJ8mZXMYouwq+0a4WSJYl0=" }, - "rd7278ceb": { - "rev": "d7278cebad5b8eda0901246f2215344cffece4f4", - "hash": "sha256-QzrhYKnZKtV9SFwMPW2Axvw9mg1HKg3m5XqOKsDPLGA=" + "r8d5f9da2": { + "rev": "8d5f9da2e36b593a098200bd332fd9e51f0bed54", + "hash": "sha256-YanXypsEr46jzSKJvNLEuNwlE3076vyyb5ZEROTbeLg=" }, - "r6c98ebeb": { - "rev": "6c98ebeb8cf24c7be5d462ded7e60d88b2ceccec", - "hash": "sha256-BnD/HKW/2dz7AJz4B3iFvjx6ZTuItR2IyHgAGzexvCI=" + "r2df010e4": { + "rev": "2df010e4f4eae6806cd1d855b63c3891116f065d", + "hash": "sha256-ohiRSNRSp8DhrcwVd3+w7OEIsLcddwSqonSeSUruIq0=" }, - "r41754d58": { - "rev": "41754d58e549d45762f906ba9e0da6ccf28c7b3f", - "hash": "sha256-vFuLW2eNrvH4X4rwOi2wPSPoeG+qmfbnq8lsePgGMFo=" + "rd17d1dae": { + "rev": "d17d1dae84ecf76da3a924facdfe1d8c2d4ac578", + "hash": "sha256-nPKFto60FViG55WK87b87r55wYc3pi1rwUsOZTikAjg=" + }, + "r76bb1411": { + "rev": "76bb1411acf5cf6935586182a3a037d372ed1636", + "hash": "sha256-f3wfLZ8caYOETpvy8olsED+PwEFLUbYaayZNOcEvGB8=" } } \ No newline at end of file -- cgit v1.3.1 From 209a4f83eb43fa20a0f95f957a824a67d02c0214 Mon Sep 17 00:00:00 2001 From: J08nY Date: Fri, 16 Aug 2024 00:41:04 +0200 Subject: Attempt to fix submodule build. --- standalone/build.gradle.kts | 12 +- .../ectester/standalone/libs/BoringsslLib.java | 2 +- .../cz/crcs/ectester/standalone/libs/IppcpLib.java | 2 +- .../crcs/ectester/standalone/libs/LibresslLib.java | 2 +- .../crcs/ectester/standalone/libs/MbedTLSLib.java | 2 +- .../ectester/standalone/libs/NativeECLibrary.java | 24 +- .../crcs/ectester/standalone/libs/jni/Makefile.ext | 241 +++++++++++++++++++++ 7 files changed, 260 insertions(+), 25 deletions(-) create mode 100644 standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext diff --git a/standalone/build.gradle.kts b/standalone/build.gradle.kts index c58be6a..c8baa36 100644 --- a/standalone/build.gradle.kts +++ b/standalone/build.gradle.kts @@ -11,8 +11,14 @@ repositories { } dependencies { - val wolfcryptLibPath = System.getenv("WOLFCRYPT_LIB_PATH") + "/wolfcrypt-jni.jar"; - implementation(files(wolfcryptLibPath)) + // First see if Nix gave us a path, then try the ext build, then the bundled. + if (System.getenv("WOLFCRYPT_LIB_PATH") != null) { + implementation(files(System.getenv("WOLFCRYPT_LIB_PATH") + "/wolfcrypt-jni.jar")); + } else if (file("$rootDir/ext/wolfcrypt-jni/lib/wolfcrypt-jni.jar").exists()) { + implementation(files("$rootDir/ext/wolfcrypt-jni/lib/wolfcrypt-jni.jar")) + } else { + implementation(files("$rootDir/ext/wolfcrypt-jni.jar")) + } implementation(project(":common")) testImplementation(platform("org.junit:junit-bom:5.10.2")) @@ -102,7 +108,7 @@ tasks.register("libs") { if (osdetector.os == "windows") { commandLine("makefile.bat", "/c", libName) } else if (osdetector.os == "linux") { - commandLine("make", "-k", "-B", libName) + commandLine("make", "-f", "Makefile.ext", "-k", "-B", libName) } } diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java index 5d30d81..06e6b4a 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/BoringsslLib.java @@ -8,7 +8,7 @@ import java.util.Set; */ public class BoringsslLib extends NativeECLibrary { public BoringsslLib() { - super("BoringSSL", "boringssl_provider"); + super("BoringSSL", "boringssl_provider", "lib_boringssl.so"); } @Override diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java index a1c58ce..fa51585 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/IppcpLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class IppcpLib extends NativeECLibrary { public IppcpLib() { - super("IPPCP", "ippcp_provider"); + super("IPPCP", "ippcp_provider", "lib_ippcp.so"); } @Override diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java index 0911119..e53399c 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/LibresslLib.java @@ -8,7 +8,7 @@ import java.util.Set; */ public class LibresslLib extends NativeECLibrary { public LibresslLib() { - super("LibreSSL", "libressl_provider"); + super("LibreSSL", "libressl_provider", "lib_libressl.so"); } @Override diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java index 038dbe8..efc8cad 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/MbedTLSLib.java @@ -9,7 +9,7 @@ import java.util.Set; public class MbedTLSLib extends NativeECLibrary { public MbedTLSLib() { - super("mbedTLS", "mbedtls_provider"); + super("mbedTLS", "mbedtls_provider", "lib_mbedtls.so"); } @Override diff --git a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NativeECLibrary.java b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NativeECLibrary.java index fb4e430..210a6e9 100644 --- a/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NativeECLibrary.java +++ b/standalone/src/main/java/cz/crcs/ectester/standalone/libs/NativeECLibrary.java @@ -38,25 +38,13 @@ public abstract class NativeECLibrary extends ProviderECLibrary { return false; } - /* Load the requirements, if they are bundled, write them in and load them. */ - try { - for (String requirement : requriements) { - if (requirement.endsWith(suffix)) { - /* The requirement is bundled, write it */ - Path reqPath = libReqDir.resolve(requirement); - found = FileUtil.write(ECTesterStandalone.LIB_RESOURCE_DIR + requirement, reqPath); - if (!found) { - return false; - } - System.load(reqPath.toString()); - } else { - System.loadLibrary(requirement); - } + /* Load the requirements, if they are bundled, write them in. */ + for (String requirement : requriements) { + if (requirement.endsWith(suffix)) { + /* The requirement is bundled, write it */ + Path reqPath = libReqDir.resolve(requirement); + FileUtil.write(ECTesterStandalone.LIB_RESOURCE_DIR + requirement, reqPath); } - } catch (UnsatisfiedLinkError ule) { - System.err.println(resource); - ule.printStackTrace(); - return false; } System.load(libPath.toString()); diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext new file mode 100644 index 0000000..16a93ff --- /dev/null +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext @@ -0,0 +1,241 @@ +############################################################################### +## General CC setup. + +CC?=gcc +CXX?=g++ + +LFLAGS+=-fPIC -shared -L "$(JNI_LIBDIR)" -L "$(JNI_LIBDIR)/server" #-ljsig -ljvm +CFLAGS+=-fPIC -I"$(JNI_INCLUDEDIR)" -I"$(JNI_PLATFORMINCLUDEDIR)" -I. -Wno-deprecated-declarations +CXXFLAGS+=-fPIC -I"$(JNI_INCLUDEDIR)" -I"$(JNI_PLATFORMINCLUDEDIR)" -I. -Wno-deprecated-declarations + +DEBUG ?= 0 +PROJECT_ROOT_PATH ?= ../../../../../../../../../.. + +ifeq ($(DEBUG), 1) + CFLAGS+=-g -O0 -Wall + LFLAGS+=-g + CXXFLAGS+=-g -O0 -Wall +else + CFLAGS+=-O2 + LFLAGS+=-O2 + CXXFLAGS+=-O2 +endif + +############################################################################### +## Java JNI setup. + +ifeq ($(JAVA_HOME),) + ifeq ($(OS),Windows_NT) + which = $(shell where $1) + else + which = $(shell which $1) + endif + JAVAC ?= $(realpath $(call which,javac)) + JAVA_HOME = $(abspath $(dir $(JAVAC))..) +endif + +ifneq ($(JAVA_HOME),) + JNI_INCLUDEDIR ?= $(JAVA_HOME)/include + JNI_LIBDIR ?= $(JAVA_HOME)/lib +endif + +ifeq ($(JNI_INCLUDEDIR),) + $(error "Could not determine JNI include dir. Try specifying either JAVA_HOME or JNI_INCLUDEDIR.") +endif + +ifeq ($(JNI_LIBDIR),) + $(error "Could not determine JNI lib dir. Try specifying either JAVA_HOME or JNI_LIBDIR.") +endif + +TARGETTRIPLET := $(shell $(CC) -dumpmachine) + +ifeq ($(JNI_PLATFORM),) + ifeq ($(findstring mingw,$(TARGETTRIPLET)),mingw) + JNI_PLATFORM:= win32 + else + ifeq ($(findstring linux,$(TARGETTRIPLET)),linux) + JNI_PLATFORM:= linux + endif + endif +endif + +JNI_PLATFORMINCLUDEDIR ?= $(JNI_INCLUDEDIR)/$(JNI_PLATFORM) + +############################################################################### +## Targets. + +all: tomcrypt botan cryptopp openssl boringssl gcrypt mbedtls ippcp nettle libressl + +# Common utils +c_utils.o: c_utils.c + $(CC) $(CFLAGS) -c $< + +lib_timing.so: c_timing.c + $(CC) -o $@ -shared $(CFLAGS) -Wl,-soname,lib_timing.so $< + +prng.o: prng/prng.c + $(CC) $(CFLAGS) -c $< + +lib_prng.so: c_prng.c + $(CC) -o $@ -shared -Wl,-soname,lib_prng.so $(CFLAGS) $< + +c_preload.o: c_preload.c + $(CC) $(CFLAGS) -c $< + +lib_preload.so: c_preload.o prng.o + $(CC) -o $@ -shared $(CFLAGS) -ldl -Wl,-soname,lib_preload.so $^ + +lib_csignals.so: c_signals.c + $(CC) -o $@ -shared $(CFLAGS) -pthread -lpthread -Wl,-soname,lib_csignals.so $< + +lib_cppsignals.so: cpp_signals.cpp + $(CC) -o $@ -shared $(CFLAGS) -pthread -lpthread -Wl,-soname,lib_cppsignals.so $< + +cpp_utils.o: cpp_utils.cpp + $(CXX) $(CXXFLAGS) -c $< + + +clibs: lib_timing.so lib_csignals.so lib_preload.so lib_prng.so + +cpplibs: lib_timing.so lib_cppsignals.so lib_preload.so lib_prng.so + +# OpenSSL shim +openssl: openssl_provider.so + +openssl_provider.so: openssl.o c_utils.o | clibs + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs openssl) -l:lib_timing.so -l:lib_csignals.so + +openssl.o: openssl.c + $(CC) $(shell pkg-config --cflags openssl) $(CFLAGS) -c $< + + +# BoringSSL shim +boringssl: boringssl_provider.so + +lib_boringssl.so: + cp $(PROJECT_ROOT_PATH)/ext/boringssl/build/crypto/libcrypto.so lib_boringssl.so + patchelf --set-soname lib_boringssl.so lib_boringssl.so + +boringssl_provider.so: boringssl.o c_utils.o | clibs lib_boringssl.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_boringssl.so -l:lib_timing.so -l:lib_csignals.so + +boringssl.o: boringssl.c + $(CC) -I$(PROJECT_ROOT_PATH)/ext/boringssl/include/ $(CFLAGS) -c $< + + +# libgcrypt shim +gcrypt: gcrypt_provider.so + +gcrypt_provider.so: gcrypt.o c_utils.o | clibs + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -pthread -lpthread $(shell libgcrypt-config --libs) -l:lib_timing.so -l:lib_csignals.so + +gcrypt.o: gcrypt.c + $(CC) $(shell libgcrypt-config --cflags) $(CFLAGS) -c $< + + +# Libtomcrypt shim +tomcrypt: tomcrypt_provider.so + +tomcrypt_provider.so: tomcrypt.o c_utils.o | clibs + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. -ltommath $(shell pkg-config --libs libtomcrypt) -l:lib_timing.so -l:lib_csignals.so + +tomcrypt.o: tomcrypt.c + $(CC) -DLTM_DESC $(shell pkg-config --cflags libtomcrypt) $(CFLAGS) -c $< + + +# Botan-2 shim +botan: botan_provider.so + +botan_provider.so: botan.o cpp_utils.o | cpplibs + $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs botan-2) -l:lib_timing.so -l:lib_cppsignals.so + +botan.o: botan.cpp + $(CXX) $(shell pkg-config --cflags botan-2) $(CXXFLAGS) -c $< + + +# Crypto++ shim +CRYPTOPP_NAME := "libcrypto++" +ifeq ($(shell pkg-config --exists $(CRYPTOPP_NAME); echo $$?),1) + CRYPTOPP_NAME := "libcryptopp" +endif +cryptopp: cryptopp_provider.so + +cryptopp_provider.so: cryptopp.o cpp_utils.o | cpplibs + $(CXX) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs $(CRYPTOPP_NAME)) -l:lib_timing.so -l:lib_cppsignals.so + +cryptopp.o: cryptopp.cpp + $(CXX) $(shell pkg-config --cflags $(CRYPTOPP_NAME)) $(CXXFLAGS) -c $< + + +# mbedTLS shim +mbedtls: mbedtls_provider.so + +lib_mbedtls.so: + cp $(PROJECT_ROOT_PATH)/ext/mbedtls/build/library/libmbedcrypto.so lib_mbedtls.so + patchelf --set-soname lib_mbedtls.so lib_mbedtls.so + +mbedtls_provider.so: mbedtls.o c_utils.o | clibs lib_mbedtls.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_mbedtls.so -l:lib_timing.so -l:lib_csignals.so + +mbedtls.o: mbedtls.c + $(CC) -I$(PROJECT_ROOT_PATH)/ext/mbedtls/build/include/ $(CFLAGS) -c $< + + +# Intel Performance Primitives crypto shim +ippcp: ippcp_provider.so + +lib_ippcp.so: + cp $(PROJECT_ROOT_PATH)/ext/ipp-crypto/build/.build/RELEASE/lib/libippcp.so lib_ippcp.so + patchelf --set-soname lib_ippcp.so lib_ippcp.so + +ippcp_provider.so: ippcp.o c_utils.o | clibs lib_ippcp.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_ippcp.so -l:lib_timing.so -l:lib_csignals.so + +ippcp.o: ippcp.c + $(CC) -I$(PROJECT_ROOT_PATH)/ext/ipp-crypto/build/.build/RELEASE/include/ $(CFLAGS) -c $< + + +# Nettle shim +nettle: nettle_provider.so + +nettle_provider.so: nettle.o c_utils.o | clibs + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. $(shell pkg-config --libs nettle) -l:lib_timing.so -l:lib_csignals.so $(shell pkg-config --libs hogweed) -lgmp + +nettle.o: nettle.c + $(CC) $(shell pkg-config --cflags nettle) $(shell pkg-config --libs hogweed) -lgmp $(CFLAGS) -c $< + + +# LibreSSL shim +libressl: libressl_provider.so + +lib_libressl.so: + cp $(PROJECT_ROOT_PATH)/ext/libressl/build/crypto/libcrypto.so lib_libressl.so + patchelf --set-soname lib_libressl.co lib_libressl.so + +libressl_provider.so: libressl.o c_utils.o | clibs lib_libressl.so + $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_libressl.so -l:lib_timing.so -l:lib_csignals.so + +libressl.o: libressl.c + $(CC) -I$(PROJECT_ROOT_PATH)/ext/libressl/build/include/ $(CFLAGS) -c $< + + +help: + @echo "# This makefile builds the JNI shims necessary to test native libraries." + @echo "# Targets:" + @echo " - openssl" + @echo " - boringssl" + @echo " - gcrypt" + @echo " - tomcrypt" + @echo " - botan" + @echo " - cryptopp" + @echo " - mbedtls" + @echo " - ippcp" + @echo " - nettle" + @echo " - libressl" + + +clean: + rm -rf *.o + rm -rf *.so + +.PHONY: all help clean openssl boringssl gcrypt tomcrypt botan cryptopp mbedtls ippcp nettle libressl -- cgit v1.3.1 From 87db8e07e9de7e704b4bdbf5e7c63d6142697520 Mon Sep 17 00:00:00 2001 From: J08nY Date: Fri, 16 Aug 2024 01:22:28 +0200 Subject: Fix LibreSSl old build. --- .../main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext index 16a93ff..948988b 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/Makefile.ext @@ -210,7 +210,7 @@ libressl: libressl_provider.so lib_libressl.so: cp $(PROJECT_ROOT_PATH)/ext/libressl/build/crypto/libcrypto.so lib_libressl.so - patchelf --set-soname lib_libressl.co lib_libressl.so + patchelf --set-soname lib_libressl.so lib_libressl.so libressl_provider.so: libressl.o c_utils.o | clibs lib_libressl.so $(CC) $(LFLAGS) -o $@ -Wl,-rpath,'$$ORIGIN/lib' $^ -L. lib_libressl.so -l:lib_timing.so -l:lib_csignals.so -- cgit v1.3.1 From 6e01272878080749c23a7644055456a44b0fd9e4 Mon Sep 17 00:00:00 2001 From: J08nY Date: Sat, 17 Aug 2024 13:04:13 +0200 Subject: Fallback to newest version assumption in shims. --- .../resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp | 7 +++++++ .../main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c | 8 ++++++++ 2 files changed, 15 insertions(+) diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp index a7eb6a6..25e1ba4 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/cryptopp.cpp @@ -95,6 +95,13 @@ using CryptoPP::Integer; static jclass provider_class; static std::unique_ptr rng = std::make_unique(); +// Fallback to newest +#if !(defined(ECTESTER_CRYPTOPP_MAJOR) && defined(ECTESTER_CRYPTOPP_MINOR) && defined(ECTESTER_CRYPTOPP_PATCH)) +#define ECTESTER_CRYPTOPP_MAJOR 99 +#define ECTESTER_CRYPTOPP_MINOR 99 +#define ECTESTER_CRYPTOPP_PATCH 99 +#endif + JNIEXPORT jobject JNICALL Java_cz_crcs_ectester_standalone_libs_CryptoppLib_createProvider(JNIEnv *env, jobject self) { /* Create the custom provider. */ diff --git a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c index e017f4d..8b7fbbb 100644 --- a/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c +++ b/standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/mbedtls.c @@ -21,6 +21,14 @@ static mbedtls_entropy_context fixed_entropy; static jclass provider_class; +// Fallback to newest +#if !(defined(ECTESTER_MBEDTLS_MAJOR) && defined(ECTESTER_MBEDTLS_MINOR) && defined(ECTESTER_MBEDTLS_PATCH)) +#define ECTESTER_MBEDTLS_MAJOR 99 +#define ECTESTER_MBEDTLS_MINOR 99 +#define ECTESTER_MBEDTLS_PATCH 99 +#endif + + #if VERSION_LT(MBEDTLS, 3, 0, 0) #define MBEDTLS_PRIVATE(member) member #else -- cgit v1.3.1 From a707a34044a1988d35c0610371534b3a688e3405 Mon Sep 17 00:00:00 2001 From: J08nY Date: Sat, 17 Aug 2024 13:33:41 +0200 Subject: Fix default BoringSSL build. --- flake.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/flake.nix b/flake.nix index 7df4847..668cd57 100644 --- a/flake.nix +++ b/flake.nix @@ -45,6 +45,7 @@ url = "https://boringssl.googlesource.com/boringssl"; inherit rev hash; }; + env.NIX_CFLAGS_COMPILE = "-Wno-error=stringop-overflow -Wno-error=array-parameter=2 -Wno-error=maybe-uninitialized"; postFixup = '' cp $out/lib/libcrypto.a $out/lib/lib_boringssl.a ''; -- cgit v1.3.1 From 3a8ccf8ea501e433e57e3406beec4bb19691bb04 Mon Sep 17 00:00:00 2001 From: J08nY Date: Sat, 17 Aug 2024 14:13:18 +0200 Subject: More BoringSSL builds. --- flake.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 668cd57..cc36fb7 100644 --- a/flake.nix +++ b/flake.nix @@ -45,7 +45,7 @@ url = "https://boringssl.googlesource.com/boringssl"; inherit rev hash; }; - env.NIX_CFLAGS_COMPILE = "-Wno-error=stringop-overflow -Wno-error=array-parameter=2 -Wno-error=maybe-uninitialized"; + env.NIX_CFLAGS_COMPILE = "-Wno-error=stringop-overflow -Wno-error=array-parameter=2 -Wno-error=maybe-uninitialized -Wno-error=ignored-attributes"; postFixup = '' cp $out/lib/libcrypto.a $out/lib/lib_boringssl.a ''; -- cgit v1.3.1 From fe92e1e383719c393f3933446abf7e202ae2f77a Mon Sep 17 00:00:00 2001 From: J08nY Date: Sat, 17 Aug 2024 14:48:36 +0200 Subject: Add Nix info to README. --- README.md | 81 ++++++++++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 57 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index 379f05f..3061407 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ cryptographic libraries. It consists of four separate parts: - The ECTester applet, a JavaCard applet that provides the testing interface - The ECTesterReader app, a reader app that works with the applet - - The ECTesterStandalone app, which works with software libraries + - The ECTesterStandalone app, which tests software cryptographic libraries - Jupyter notebooks for analysis and visualization of data from the apps For more information on ECC support on JavaCards see the [GitHub page](https://crocs-muni.github.io/ECTester/), with results, tables and docs. @@ -50,10 +50,9 @@ git submodule update --init --recursive # To initialize submodules (JavaCa The applet comes in several flavors, targeting JavaCard `2.2.1`, `2.2.2` and `3.0.5`. The `2.2.2` and later flavors support extended length APDUs which are necessary for some commands to work properly. -The `:standalone:libs` task invokes a Makefile in `standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni`, which tries to build the -C/C++ shim libraries required for ECTester to test the actual native cryptographic libraries from Java. -The Makefile uses pkg-config to locate the libraries installed, thus if non-standard location of the tested libraries is -used, the Makefile or your pkg-config needs some changes to work. +To build the standalone part, which involves numerous cryptographic libraries, one has two options. + - Install these cryptographic libraries system-wide and let the build use those. + - Use [Nix](https://nixos.org/) to build the tool part with given library versions. See the section on [setup](#setup-1) of standalone library testing for more details. @@ -309,6 +308,48 @@ For more information on ECC libraries see [LIBS](docs/LIBS.md). ### Setup +ECTester interfaces with native libraries by using custom shim libraries that expose the functionality via the +[Java Native Interface](https://en.wikipedia.org/wiki/Java_Native_Interface), these can be found in the +[standalone/src/main/java/cz/crcs/ectester/standalone/libs/jni](standalone/src/main/java/cz/crcs/ectester/standalone/libs/jni) directory along with a Makefile +(Makefile.bat for Windows). The shim library will depend on the native library, and have a name like +`boringssl_provider.so`, `botan_provider.so`, `cryptopp_provider.so` and `openssl_provider.so`. +The Makefile has a target for every library that it supports that builds its shim, see the `help` +target for more info. + +However, building these shims and in general the target libraries can be tricky to do so reliably across +systems and setups. Thus ECTester offers two ways of doing so. + + - The first way is to install the libraries system-wide and rely on pkg-config to find proper configuration + for the shims and link them dynamically. + - The second way is to use [Nix](https://nixos.org/) to build the given versions of the libraries and shims and + link them statically. + +#### Nix + +Install [Nix](https://nixos.org/download/), then to build: + +```shell +# To build a library in a given version run (example OpenSSL 3.3.1): +nix build ".#lib.openssl.v331" +# To build a shim using a given version of a library (example mbedTLS 3.5): +nix build ".#shim.mbedtls.v35" +# To build ECTesterStandalone.jar with a given version of a library (example libgcrypt 1.9.4): +nix build ".#gcrypt.v194" +# The available versions of the libraries are in the nix/*_pkg_versions.json files. +# The "default" version always points to the most recent version. +``` + +Each of the build steps above puts (symlinks really) its results into `./result` directory. +However, subsequent builds then replace that with their own results. To run ECTesterStandalone +with a given library version and arguments do: + +```shell +# This runs the default test-suite agains LibreSSL 3.9.2 +nix run ".#libressl.v392" --- test default LibreSSL +``` + +#### Gradle + ```shell ./gradlew :standalone:libs # To build the native library shims. ./gradlew :standalone:uberJar # To build the standalone tool (jar) -> "standalone/build/libs/ECTesterStandalone.jar" @@ -324,16 +365,22 @@ successfully or that the actual native library couldn't be found and loaded on r build errors during the ant run in the `libs-try` step, for the latter, if the library is in an non-standard location specifying `LD_LIBRARY_PATH` will help load it. Consulting the next sections should help solve both. -#### Native - -ECTester interfaces with native libraries by using custom shim libraries that expose the functionality via the [Java Native Interface](https://en.wikipedia.org/wiki/Java_Native_Interface), these can be found in the [standalone/src/main/java/cz/crcs/ectester/standalone/libs/jni](standalone/src/main/java/cz/crcs/ectester/standalone/libs/jni) directory along with a Makefile (Makefile.bat for Windows). The shim library will depend on the native library, and have a name like `boringssl_provider.so`, `botan_provider.so`, `cryptopp_provider.so` and `openssl_provider.so`. The Makefile has a target for every library that it supports that builds its shim, see the `help` target for more info. The Makefile is automatically ran when the `:standalone:libs` gradle task is triggered, so if all is setup correctly, you do not need to deal with the Makefile while building. +The `:standalone:libs` task invokes the Makefile, which tries to build the +C/C++ shim libraries required for ECTester to test the actual native cryptographic libraries from Java. +The Makefile uses pkg-config to locate the libraries installed, thus if non-standard location of the tested libraries is +used, the Makefile or your pkg-config needs some changes to work. -There are two important environmental variables that should be set in your environment. First, you should set `JAVA_HOME` which should point to your JDK. The tooling uses `JAVA_HOME` to locate native Java library headers, like `jni.h`. Second, ECTester uses pkg-config to locate the native libraries, if your pkg-config files are in an unusual place the pkg-config command would not find them by default, you should set `PKG_CONFIG_PATH` to the directory containing the `*.pc` files. If pkg-config files are unavailable for the library you are trying to test, you will need to change the Makefile manually to apply the correct options to the commands (CFLAGS, include options, linker options...). +There are two important environmental variables that should be set in your environment. First, you should set +`JAVA_HOME` which should point to your JDK. The tooling uses `JAVA_HOME` to locate native Java library headers, +like `jni.h`. Second, ECTester uses pkg-config to locate the native libraries, if your pkg-config files are in an +unusual place the pkg-config command would not find them by default, you should set `PKG_CONFIG_PATH` to the directory +containing the `*.pc` files. If pkg-config files are unavailable for the library you are trying to test, you will need +to change the Makefile manually to apply the correct options to the commands (CFLAGS, include options, linker options...). Below you can see how a full build with all the libraries currently supported on Linux looks ``` > cd standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni -> make +> make -f Makefile.ext cc -DLTM_DESC -fPIC -I"/usr/lib/jvm/java-21-openjdk/include" -I"/usr/lib/jvm/java-21-openjdk/include/linux" -I. -Wno-deprecated-declarations -O2 -c tomcrypt.c cc -fPIC -I"/usr/lib/jvm/java-21-openjdk/include" -I"/usr/lib/jvm/java-21-openjdk/include/linux" -I. -Wno-deprecated-declarations -O2 -c c_utils.c cc -o lib_timing.so -shared -fPIC -I"/usr/lib/jvm/java-21-openjdk/include" -I"/usr/lib/jvm/java-21-openjdk/include/linux" -I. -Wno-deprecated-declarations -O2 -Wl,-soname,lib_timing.so c_timing.c @@ -421,20 +468,6 @@ on `LD_LIBRARY_PATH`. Consult the GitHub CI [build script](.github/workflows/build.yml) for an example that runs on Ubuntu 22.04. -#### Java - -OpenJDK JRE is required to test ECDH on Windows properly, as Oracle JRE requires the Java Cryptography Providers -for certain classes (such as a [KeyAgreement](https://docs.oracle.com/javase/8/docs/api/javax/crypto/KeyAgreement.html)) -to be signed by keys that are signed by their JCA Code Signing Authority. ECTester internally uses Java Cryptography Provider -API to expose and test native libraries. - -Installing the Java Cryptography Extension Unlimited Strength policy files is necessary to do testing -(for Java 8) with quite a lot of practical key sizes, they are available for download: - - - [Java 8](http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html) - -To install, place them in `${java.home}/jre/lib/security/`. - ### Examples Snippet below shows how the `list-libs` command for well, listing currently supported libraries, behaves if all supported libraries are present (on Linux). -- cgit v1.3.1 From 94e821a54d33aee5aef62f328ec3d50dd6867c9e Mon Sep 17 00:00:00 2001 From: quapka Date: Sat, 17 Aug 2024 16:15:34 +0200 Subject: By default build ECTester with default, aka newest fetched, libraries --- flake.nix | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index cc36fb7..42ba837 100644 --- a/flake.nix +++ b/flake.nix @@ -683,6 +683,15 @@ } ); + + defaultVersion = + # Default version is the last one, aka the newest that we fetched + libName: + let + versions = builtins.fromJSON (builtins.readFile ./nix/${libName}_pkg_versions.json); + in + pkgs.lib.lists.last (pkgs.lib.attrsets.attrValues versions); + loadVersions = { libName, function }: let @@ -707,7 +716,18 @@ in { packages = rec { - default = openssl.default; + default = buildECTesterStandalone { + # FIXME tomcrypt is missing! + botan = defaultVersion "botan"; + cryptopp = defaultVersion "cryptopp"; + openssl = defaultVersion "openssl"; + boringssl = defaultVersion "boringssl"; + gcrypt = defaultVersion "gcrypt"; + mbedtls = defaultVersion "mbedtls"; + ippcp = defaultVersion "ippcp"; + nettle = defaultVersion "nettle"; + libressl = defaultVersion "libressl"; + }; tomcrypt = loadVersions { libName = "tomcrypt"; function = buildECTesterStandalone; -- cgit v1.3.1 From 8d54fae02136eea7706d3b1d8b3547a61df7bd19 Mon Sep 17 00:00:00 2001 From: J08nY Date: Sat, 17 Aug 2024 16:29:34 +0200 Subject: Remove old devShell. --- flake.nix | 84 --------------------------------------------------------------- 1 file changed, 84 deletions(-) diff --git a/flake.nix b/flake.nix index 42ba837..a675910 100644 --- a/flake.nix +++ b/flake.nix @@ -915,90 +915,6 @@ }; }; - devShells.default = - with pkgs; - mkShell rec { - nativeBuildInputs = [ pkg-config ]; - - preConfigure = '' - cp ${boringssl}/lib/lib_boringssl.a standalone/src/main/resources/cz/crcs/ectester/standalone/libs/jni/ - ''; - - buildInputs = [ - # # gradle2nix - # libresslShim - gdb - ant - jdk17 - pkg-config - global-platform-pro - gradle - # libraries to test - (opensslBuilder { }) - libressl - # glibc - boringssl - libtomcrypt - libtommath - botan2 - cryptopp - - # libraries' dependencies - cmake - ninja - gawk - automake - go - gtest - libunwind - autoconf - libb64 - - # clang - libgcrypt - libgpg-error - mbedtls - nasm - libtool - perl - - wolfssl - nettle - # libressl - - customPkgs.ipp-crypto - - gmp - libgpg-error - wget - libconfig - ]; - - LD_LIBRARY_PATH = - with pkgs; - pkgs.lib.makeLibraryPath [ - libtommath - libtomcrypt - botan2 - cryptopp - (opensslBuilder { }) - boringssl - libgcrypt - libgpg-error - nettle - gmp - libgpg-error - libconfig - wolfcryptjni - ]; - - BORINGSSL_CFLAGS = "${boringssl.dev.outPath}/include"; - WOLFCRYPT_LIB_PATH = "${wolfcryptjni}/lib"; - - IPP_CRYPTO_HEADER = "${customPkgs.ipp-crypto.dev}/include"; - IPP_CRYPTO_LIB = "${customPkgs.ipp-crypto}/lib/"; - - }; } ); } -- cgit v1.3.1