diff options
| -rw-r--r-- | fetchReleases.py | 30 | ||||
| -rw-r--r-- | flake.nix | 14 | ||||
| -rw-r--r-- | nix/ippcp_pkg_versions.nix | 77 |
3 files changed, 120 insertions, 1 deletions
diff --git a/fetchReleases.py b/fetchReleases.py index 0945c43..4d4c0c7 100644 --- a/fetchReleases.py +++ b/fetchReleases.py @@ -190,6 +190,34 @@ def fetch_mbedtls(): 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) + + 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() @@ -209,6 +237,8 @@ def main(): fetch_gcrypt() case "mbedtls": fetch_mbedtls() + case "ippcp": + fetch_ippcp() case _: print("Unknown library") @@ -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 |
