diff options
Diffstat (limited to 'pkgs/development/rocm-modules/6/update.nix')
-rw-r--r-- | pkgs/development/rocm-modules/6/update.nix | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/development/rocm-modules/6/update.nix b/pkgs/development/rocm-modules/6/update.nix new file mode 100644 index 000000000000..4d531e6bb176 --- /dev/null +++ b/pkgs/development/rocm-modules/6/update.nix @@ -0,0 +1,33 @@ +{ lib +, writeScript +}: + +{ name ? "" +, owner ? "" +, repo ? "" +, page ? "releases/latest" +, filter ? ".tag_name | split(\"-\") | .[1]" +}: + +let + pname = + if lib.hasPrefix "rocm-llvm-" name + then "llvm.${lib.removePrefix "rocm-llvm-" name}" + else name; + + updateScript = writeScript "update.sh" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl jq common-updater-scripts + version="$(curl ''${GITHUB_TOKEN:+-u ":$GITHUB_TOKEN"} \ + -sL "https://api.github.com/repos/${owner}/${repo}/${page}" | jq '${filter}' --raw-output)" + + IFS='.' read -a version_arr <<< "$version" + + if (( ''${version_arr[0]} > 6 )); then + echo "'rocmPackages_6.${pname}' is already at it's maximum allowed version.''\nAny further upgrades should go into 'rocmPackages_X.${pname}'." 1>&2 + exit 1 + fi + + update-source-version rocmPackages_6.${pname} "$version" --ignore-same-hash + ''; +in [ updateScript ] |