Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 50 lines 1.3 kB view raw
1#!/usr/bin/env nix-shell 2#! nix-shell -i bash -p nix jq curl 3 4CHANNEL_URL="https://dl.google.com/dl/cloudsdk/channels/rapid" 5BASE_URL="$CHANNEL_URL/downloads/google-cloud-sdk" 6 7PACKAGE_DIR=$(dirname -- "$0") 8 9VERSION=$(curl "https://storage.googleapis.com/storage/v1/b/cloud-sdk-release/o?delimiter=/&startOffset=google-cloud-sdk-${UPDATE_NIX_OLD_VERSION}&endOffset=google-cloud-sdk-9" | jq --raw-output '.items[-1].name | scan("\\d+\\.\\d+\\.\\d+")') 10 11function genMainSrc() { 12 local url="${BASE_URL}-${VERSION}-${1}-${2}.tar.gz" 13 local sha256 14 sha256=$(nix-prefetch-url "$url") 15 echo " {" 16 echo " url = \"${url}\";" 17 echo " sha256 = \"${sha256}\";" 18 echo " };" 19} 20 21{ 22 cat <<EOF 23# DO NOT EDIT! This file is generated automatically by update.sh 24{ }: 25{ 26 version = "${VERSION}"; 27 googleCloudSdkPkgs = { 28EOF 29 30 echo -n " x86_64-linux =" 31 genMainSrc "linux" "x86_64" 32 33 echo -n " x86_64-darwin =" 34 genMainSrc "darwin" "x86_64" 35 36 echo -n " aarch64-linux =" 37 genMainSrc "linux" "arm" 38 39 echo -n " aarch64-darwin =" 40 genMainSrc "darwin" "arm" 41 42 echo -n " i686-linux =" 43 genMainSrc "linux" "x86" 44 45 echo " };" 46 echo "}" 47 48} > "${PACKAGE_DIR}/data.nix" 49 50curl "${CHANNEL_URL}/components-v${VERSION}.json" -w "\n" > "${PACKAGE_DIR}/components.json"