about summary refs log tree commit diff
path: root/pkgs/development/rocm-modules/update-script/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/rocm-modules/update-script/default.nix')
-rw-r--r--pkgs/development/rocm-modules/update-script/default.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/pkgs/development/rocm-modules/update-script/default.nix b/pkgs/development/rocm-modules/update-script/default.nix
new file mode 100644
index 0000000000000..1d2b268a34b6b
--- /dev/null
+++ b/pkgs/development/rocm-modules/update-script/default.nix
@@ -0,0 +1,27 @@
+{ runtimeShell
+, writeScript
+}:
+
+{ name ? ""
+, owner ? ""
+, repo ? ""
+, page ? "releases?per_page=1"
+, filter ? ".[0].tag_name | split(\"-\") | .[1]"
+}:
+
+let
+  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[*]}" == 2 ]; then
+      version="''${version}.0"
+    fi
+
+    update-source-version ${name} "$version" --ignore-same-hash
+  '';
+in [ updateScript ]