aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fetchReleases.py30
-rw-r--r--flake.nix14
-rw-r--r--nix/ippcp_pkg_versions.nix77
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")
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