diff options
author | aszlig <aszlig@redmoonstudios.org> | 2013-06-14 14:41:16 +0200 |
---|---|---|
committer | aszlig <aszlig@redmoonstudios.org> | 2013-06-14 17:50:36 +0200 |
commit | 777351bce483dbe76694e2d570ac8995e8770ed9 (patch) | |
tree | da2654f71d6ce8613c7c5f3a24b28ad42ba6084a /pkgs | |
parent | 872fb3e2ff081f5947f41efa24acf67e5372c5a7 (diff) | |
download | nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.tar nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.tar.gz nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.tar.bz2 nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.tar.lz nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.tar.xz nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.tar.zst nixlib-777351bce483dbe76694e2d570ac8995e8770ed9.zip |
chromium/updater: Avoid downgrading versions.
Previously we have just checked for equality. When going back in history, that way if the history is somewhat out-of-sync, we could end up "updating" to an older version, which we definitely don't want. Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Diffstat (limited to 'pkgs')
-rwxr-xr-x | pkgs/applications/networking/browsers/chromium/update.sh | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/pkgs/applications/networking/browsers/chromium/update.sh b/pkgs/applications/networking/browsers/chromium/update.sh index 5c89c8e492ac..0c4881bb3962 100755 --- a/pkgs/applications/networking/browsers/chromium/update.sh +++ b/pkgs/applications/networking/browsers/chromium/update.sh @@ -42,6 +42,17 @@ sha_insert() ver_sha_table="$ver_sha_table $version:$sha256"; } +get_newest_ver() +{ + versions="$(for v in $@; do echo "$v"; done)"; + if oldest="$(echo "$versions" | sort -V 2> /dev/null | tail -n1)"; + then + echo "$oldest"; + else + echo "$versions" | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tail -n1; + fi; +} + if [ -e "$output_file" ]; then get_sha256() @@ -54,7 +65,7 @@ then echo -n "Checking if $oldver ($channel) is up to date..." >&2; - if [ "x$version" != "x$oldver" ]; + if [ "x$(get_newest_ver "$version" "$oldver")" != "x$oldver" ]; then echo " no, getting sha256 for new version $version:" >&2; sha256="$(nix-prefetch-url "$url")" || return 1; |