mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-22 06:53:01 +00:00
common-updater-scripts: move destructive changes further in the script
We can check some things before the modifications take place.
This commit is contained in:
parent
65543d1031
commit
e4a0953ac7
@ -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!"
|
||||
|
Loading…
Reference in New Issue
Block a user