diff --git a/pkgs/common-updater/scripts/update-source-version b/pkgs/common-updater/scripts/update-source-version index f152877e098..7fb5e413a26 100755 --- a/pkgs/common-updater/scripts/update-source-version +++ b/pkgs/common-updater/scripts/update-source-version @@ -117,21 +117,6 @@ else die "Couldn't figure out where out where to patch in new version in '$attr'!" fi -# Replace new version -sed -i.bak "$nixFile" -re "$pattern" -if cmp -s "$nixFile" "$nixFile.bak"; then - die "Failed to replace version '$oldVersion' to '$newVersion' in '$attr'!" -fi - -# Replace new URL -if [[ -n "$newUrl" ]]; then - sed -i "$nixFile" -re "s|\"$oldUrlEscaped\"|\"$newUrl\"|" - - if cmp -s "$nixFile" "$nixFile.bak"; then - die "Failed to replace source URL '$oldUrl' to '$newUrl' in '$attr'!" - fi -fi - if [[ "$oldHash" =~ ^(sha256|sha512)[:-] ]]; then # Handle the possible SRI-style hash attribute (in the form ${type}${separator}${hash}) # True SRI uses dash as a separator and only supports base64, whereas Nix’s SRI-style format uses a colon and supports all the same encodings like regular hashes (16/32/64). @@ -159,6 +144,21 @@ if [[ -n "$sri" ]]; then tempHash="$(nix to-sri --type "$oldHashAlgo" "$tempHash")" fi +# Replace new version +sed -i.bak "$nixFile" -re "$pattern" +if cmp -s "$nixFile" "$nixFile.bak"; then + die "Failed to replace version '$oldVersion' to '$newVersion' in '$attr'!" +fi + +# Replace new URL +if [[ -n "$newUrl" ]]; then + sed -i "$nixFile" -re "s|\"$oldUrlEscaped\"|\"$newUrl\"|" + + if cmp -s "$nixFile" "$nixFile.bak"; then + die "Failed to replace source URL '$oldUrl' to '$newUrl' in '$attr'!" + fi +fi + sed -i "$nixFile" -re "s|\"$oldHash\"|\"$tempHash\"|" if cmp -s "$nixFile" "$nixFile.bak"; then die "Failed to replace source hash of '$attr' to a temporary hash!"