about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2023-01-09 15:47:44 +0100
committerGitHub <noreply@github.com>2023-01-09 15:47:44 +0100
commit880d36a1805ae17a5388c64e8f5133b6340ee687 (patch)
tree33a6915927d8b45393129d3d6caf5ff116839ddb
parentb3a5d24a968a50091b548055791815eaa4223b57 (diff)
parent9957ee5fd689792ff18194bec2a4bc7f4db70d61 (diff)
Merge pull request #205226 from wegank/darwin-sdk-sh
-rwxr-xr-xpkgs/os-specific/darwin/apple-source-releases/generate-sdk-packages.sh20
1 files changed, 14 insertions, 6 deletions
diff --git a/pkgs/os-specific/darwin/apple-source-releases/generate-sdk-packages.sh b/pkgs/os-specific/darwin/apple-source-releases/generate-sdk-packages.sh
index d7c3fc89c525b..418a1d625d6ae 100755
--- a/pkgs/os-specific/darwin/apple-source-releases/generate-sdk-packages.sh
+++ b/pkgs/os-specific/darwin/apple-source-releases/generate-sdk-packages.sh
@@ -1,8 +1,16 @@
 #!/usr/bin/env nix-shell
-#!nix-shell -i bash -p curl
+#!nix-shell -i bash -p curl jq
 
-# usage:
-#   generate-sdk-packages.sh macos 11.0.1
+usage() {
+    cat <<EOF
+usage: $0 macos 11.0.1
+EOF
+}
+
+if [ "$#" != 2 ]; then
+    usage
+    exit 1
+fi
 
 cd $(dirname "$0")
 
@@ -16,14 +24,14 @@ outfile="$sdkName.nix"
 {"
 
 parse_line() {
-    readarray -t -d$'\t' package <<<$2
+    readarray -t -d$'-' package < <(printf "%s" $2)
     local pname=${package[0]} version=${package[1]}
 
     if [ -d $pname ]; then
-        sha256=$(nix-prefetch-url "https://opensource.apple.com/tarballs/$pname/$pname-$version.tar.gz")
+        sha256=$(nix-prefetch-url "https://github.com/apple-oss-distributions/$pname/archive/refs/tags/$pname-$version.tar.gz")
         >>$outfile echo "$pname = applePackage' \"$pname\" \"$version\" \"$sdkName\" \"$sha256\" {};"
     fi
 }
-readarray -s1 -c1 -C parse_line < <(curl -sS "https://opensource.apple.com/text/${sdkName//./}.txt")
+readarray -s1 -c1 -C parse_line < <(curl -sSL "https://github.com/apple-oss-distributions/distribution-${1//-/_}/raw/${sdkName//./}/release.json" | jq -r ".projects[].tag")
 
 >>$outfile echo '}'