uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
67
pkgs/development/compilers/adoptopenjdk-bin/generate-sources.py
Executable file
67
pkgs/development/compilers/adoptopenjdk-bin/generate-sources.py
Executable file
|
|
@ -0,0 +1,67 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell --pure -i python3 -p "python3.withPackages (ps: with ps; [ requests ])"
|
||||
|
||||
import json
|
||||
import re
|
||||
import requests
|
||||
import sys
|
||||
|
||||
releases = ("openjdk8", "openjdk11", "openjdk13", "openjdk14", "openjdk15", "openjdk16")
|
||||
oses = ("mac", "linux")
|
||||
types = ("jre", "jdk")
|
||||
impls = ("hotspot", "openj9")
|
||||
|
||||
arch_to_nixos = {
|
||||
"x64": ("x86_64",),
|
||||
"aarch64": ("aarch64",),
|
||||
"arm": ("armv6l", "armv7l"),
|
||||
"ppc64le": ("powerpc64le",),
|
||||
}
|
||||
|
||||
def get_sha256(url):
|
||||
resp = requests.get(url)
|
||||
if resp.status_code != 200:
|
||||
print("error: could not fetch checksum from url {}: code {}".format(url, resp.code), file=sys.stderr)
|
||||
sys.exit(1)
|
||||
return resp.text.strip().split(" ")[0]
|
||||
|
||||
def generate_sources(release, assets):
|
||||
out = {}
|
||||
for asset in assets:
|
||||
if asset["os"] not in oses: continue
|
||||
if asset["binary_type"] not in types: continue
|
||||
if asset["openjdk_impl"] not in impls: continue
|
||||
if asset["heap_size"] != "normal": continue
|
||||
if asset["architecture"] not in arch_to_nixos: continue
|
||||
|
||||
# examples: 11.0.1+13, 8.0.222+10
|
||||
version, build = asset["version_data"]["semver"].split("+")
|
||||
|
||||
type_map = out.setdefault(asset["os"], {})
|
||||
impl_map = type_map.setdefault(asset["binary_type"], {})
|
||||
arch_map = impl_map.setdefault(asset["openjdk_impl"], {
|
||||
"packageType": asset["binary_type"],
|
||||
"vmType": asset["openjdk_impl"],
|
||||
})
|
||||
|
||||
for nixos_arch in arch_to_nixos[asset["architecture"]]:
|
||||
arch_map[nixos_arch] = {
|
||||
"url": asset["binary_link"],
|
||||
"sha256": get_sha256(asset["checksum_link"]),
|
||||
"version": version,
|
||||
"build": build,
|
||||
}
|
||||
|
||||
return out
|
||||
|
||||
out = {}
|
||||
for release in releases:
|
||||
resp = requests.get("https://api.adoptopenjdk.net/v2/latestAssets/releases/" + release)
|
||||
if resp.status_code != 200:
|
||||
print("error: could not fetch data for release {} (code {})".format(release, resp.code), file=sys.stderr)
|
||||
sys.exit(1)
|
||||
out[release] = generate_sources(release, resp.json())
|
||||
|
||||
with open("sources.json", "w") as f:
|
||||
json.dump(out, f, indent=2, sort_keys=True)
|
||||
f.write('\n')
|
||||
Loading…
Add table
Add a link
Reference in a new issue