about summary refs log tree commit diff
path: root/pkgs/misc/lilypond/update.sh
blob: e9c3f48805afb2cb8eed41866cca1ea5c2d85ea0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env nix-shell
#!nix-shell -I nixpkgs=./. -i bash -p curl gnused nix

set -euo pipefail

if [ $# -gt 0 ] && [ "$1" = "unstable" ]; then
    ATTR="lilypond-unstable"
    FILE="$(dirname "${BASH_SOURCE[@]}")/unstable.nix"
    QUERY="VERSION_DEVEL="
else
    ATTR="lilypond"
    FILE="$(dirname "${BASH_SOURCE[@]}")/default.nix"
    QUERY="VERSION_STABLE="
fi

# update version
PREV=$(nix eval --raw -f default.nix $ATTR.version)
NEXT=$(curl -s 'https://gitlab.com/lilypond/lilypond/-/raw/master/VERSION' | grep "$QUERY" | cut -d= -f2)
sed -i "s|$PREV|$NEXT|" "$FILE"
echo "[{\"commitMessage\":\"$ATTR: $PREV -> $NEXT\"}]"

# update hash
PREV=$(nix eval --raw -f default.nix $ATTR.src.outputHash)
NEXT=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 $(nix eval --raw -f default.nix $ATTR.src.url)))
sed -i "s|$PREV|$NEXT|" "$FILE"