diff --git a/flake.nix b/flake.nix index b8bc49d2..b3dc8db6 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 00000000..b0be7d73 --- /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="; }; + }; +}