gn: add update script

Signed-off-by: Marcin Serwin <marcin@serwin.dev>

+23
+2
pkgs/by-name/gn/gn/package.nix
··· 77 77 78 78 setupHook = ./setup-hook.sh; 79 79 80 + passthru.updateScript = ./update.sh; 81 + 80 82 meta = { 81 83 description = "Meta-build system that generates build files for Ninja"; 82 84 mainProgram = "gn";
+21
pkgs/by-name/gn/gn/update.sh
··· 1 + #!/usr/bin/env nix-shell 2 + #!nix-shell -i bash -p jq curl common-updater-scripts 3 + 4 + set -ex 5 + 6 + rev=$( 7 + curl --location "https://raw.githubusercontent.com/NixOS/nixpkgs/refs/heads/master/pkgs/applications/networking/browsers/chromium/info.json" \ 8 + | jq -r ".chromium.deps.gn.rev" 9 + ) 10 + 11 + commit_time=$( 12 + curl "https://gn.googlesource.com/gn/+/$rev?format=json" \ 13 + | sed "s/)]}'//" \ 14 + | jq -r ".committer.time" \ 15 + | awk '{print $2, $3, $5, $4 $6}' 16 + ) 17 + 18 + commit_date=$(TZ= date --date "$commit_time" --iso-8601) 19 + version="0-unstable-$commit_date" 20 + 21 + update-source-version --rev="$rev" --version-key="version" "gn" "$version"