{ writeShellApplication, gnugrep, gnused, nix-prefetch-svn, subversion, }: writeShellApplication { name = "sword-updater"; runtimeInputs = [ gnugrep gnused nix-prefetch-svn subversion ]; text = '' url="https://www.crosswire.org/svn/sword/trunk" old_rev="$(grep "${./flake.nix}" -e "rev = " | sed -E -e 's/.*"(.*)".*/\1/')" echo "OLD_REV=$old_rev" new_rev="$(svn info "$url" --show-item revision)" echo "NEW_REV=$new_rev" if [ "$new_rev" == "$old_rev" ]; then exit 0 else echo "DO_UPDATE=1" fi hash="$(nix-prefetch-svn \ "$url" \ "$new_rev" \ )" echo "HASH=$hash" sed -i flake.nix \ -e "s/rev = \"$old_rev\"/rev = \"$new_rev\"/" ''; }