diff options
| author | Doron Behar <doron.behar@gmail.com> | 2022-09-01 05:44:43 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-09-01 05:44:43 +0000 |
| commit | 374d334335781dd04d4783f7de31fe0fe97b2e4b (patch) | |
| tree | f700d5536c00bad166aa17ce0d96a771e1b61dca | |
| parent | Merge pull request #189214 from NixOS/backport-189203-to-release-22.05 (diff) | |
| parent | zoom-us: 5.11.{1.8356,3.3882} -> 5.11.{9.10046,10.4400} (diff) | |
| download | nixpkgs-374d334335781dd04d4783f7de31fe0fe97b2e4b.tar.gz | |
Merge pull request #188940 from kini/backport-188774-to-release-22.05
8 files changed, 42 insertions, 42 deletions
diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/arm64-darwin-sha.nix b/pkgs/applications/networking/instant-messengers/zoom-us/arm64-darwin-sha.nix deleted file mode 100644 index 9b4a21cb7d28..000000000000 --- a/pkgs/applications/networking/instant-messengers/zoom-us/arm64-darwin-sha.nix +++ /dev/null @@ -1 +0,0 @@ -"0cwplzza8vv4nzxf35i2p4gfnna4dpgp0ddqbpdxl8cxrikq5rji" diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/arm64-darwin-version.nix b/pkgs/applications/networking/instant-messengers/zoom-us/arm64-darwin-version.nix deleted file mode 100644 index 4fd4c471b3cf..000000000000 --- a/pkgs/applications/networking/instant-messengers/zoom-us/arm64-darwin-version.nix +++ /dev/null @@ -1 +0,0 @@ -"5.11.1.8356" diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix index a8fd025a88ad..7b5c737d7c67 100644 --- a/pkgs/applications/networking/instant-messengers/zoom-us/default.nix +++ b/pkgs/applications/networking/instant-messengers/zoom-us/default.nix @@ -44,24 +44,26 @@ let throwSystem = throw "Unsupported system: ${system}"; # Zoom versions are released at different times for each platform - version = { - aarch64-darwin =import ./arm64-darwin-version.nix; - x86_64-darwin = import ./x86_64-darwin-version.nix; - x86_64-linux = import ./x86_64-linux-version.nix; - }.${system} or throwSystem; + # and often with different versions. We write them on three lines + # like this (rather than using {}) so that the updater script can + # find where to edit them. + versions.aarch64-darwin = "5.11.9.10046"; + versions.x86_64-darwin = "5.11.9.10046"; + versions.x86_64-linux = "5.11.10.4400"; srcs = { aarch64-darwin = fetchurl { - url = "https://zoom.us/client/${version}/Zoom.pkg?archType=arm64"; - sha256 = import ./arm64-darwin-sha.nix; + url = "https://zoom.us/client/${versions.aarch64-darwin}/zoomusInstallerFull.pkg?archType=arm64"; + name = "zoomusInstallerFull.pkg"; + hash = "sha256-Z+K811azMRnhptZ1UvM+o5IgE0F4p9BrntJC9IgPU7U="; }; x86_64-darwin = fetchurl { - url = "https://zoom.us/client/${version}/Zoom.pkg"; - sha256 = import ./x86_64-darwin-sha.nix; + url = "https://zoom.us/client/${versions.x86_64-darwin}/zoomusInstallerFull.pkg"; + hash = "sha256-7U7qT3xlm5LqcJByMWxhZnqs6XBzylEGhqTNUgiaXJY="; }; x86_64-linux = fetchurl { - url = "https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz"; - sha256 = import ./x86_64-linux-sha.nix; + url = "https://zoom.us/client/${versions.x86_64-linux}/zoom_x86_64.pkg.tar.xz"; + hash = "sha256-Pi1MtuCHzkQACamsNOIS6pbM03L1CmyosbpdrYVNCkQ="; }; }; @@ -109,7 +111,7 @@ let in stdenv.mkDerivation rec { pname = "zoom"; - inherit version; + version = versions.${system} or throwSystem; src = srcs.${system} or throwSystem; diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/update.sh b/pkgs/applications/networking/instant-messengers/zoom-us/update.sh index 6d9b50252d12..3684f057a08c 100755 --- a/pkgs/applications/networking/instant-messengers/zoom-us/update.sh +++ b/pkgs/applications/networking/instant-messengers/zoom-us/update.sh @@ -1,30 +1,34 @@ #!/usr/bin/env nix-shell -#!nix-shell -i bash -p curl pup +#!nix-shell -i bash -p common-updater-scripts curl jq set -eu -o pipefail -dirname="$(dirname "$0")" +scriptDir=$(cd "${BASH_SOURCE[0]%/*}" && pwd) +nixpkgs=$(realpath "$scriptDir"/../../../../..) -uname="$(uname)" +echo >&2 "=== Obtaining version data from https://zoom.us/rest/download ..." +linux_data=$(curl -Ls 'https://zoom.us/rest/download?os=linux' | jq .result.downloadVO) +mac_data=$(curl -Ls 'https://zoom.us/rest/download?os=mac' | jq .result.downloadVO) -if [[ "$uname" == "Linux" ]]; then - version="$(curl -Ls https://zoom.us/download\?os\=linux | \ - pup '.linux-ver-text text{}' | \ - awk -F'[ ().]' '{printf $2"."$3"."$4"."$6"\n"}')" - printf '"%s"\n' ${version} > $dirname/x86_64-linux-version.nix - printf '"%s"\n' \ - $(nix-prefetch-url https://zoom.us/client/${version}/zoom_x86_64.pkg.tar.xz) > \ - $dirname/x86_64-linux-sha.nix -elif [[ $uname == "Darwin" ]]; then - # The 1st line might be empty - # 2nd line is the version of the conference room application - version="$(curl -Ls https://zoom.us/download\?os\=mac | \ - pup '.ver text{}' | \ - sed '/^$/d' |\ - head -1 | \ - awk -F'[ ().]' '{printf $2"."$3"."$4"."$6"\n"}')" - printf '"%s"\n' ${version} > "$dirname/$(uname -m)-darwin-version.nix" - printf '"%s"\n' \ - $(nix-prefetch-url "https://zoom.us/client/${version}/Zoom.pkg?archType=$(uname -m)") > \ - "$dirname/$(uname -m)-darwin-sha.nix" -fi +version_aarch64_darwin=$(jq -r .zoomArm64.version <<<"$mac_data") +version_x86_64_darwin=$(jq -r .zoom.version <<<"$mac_data") +version_x86_64_linux=$(jq -r .zoom.version <<<"$linux_data") + +echo >&2 "=== Downloading packages and computing hashes..." +# We precalculate the hashes before calling update-source-version +# because it attempts to calculate each architecture's package's hash +# by running `nix-build --system <architecture> -A zoom-us.src` which +# causes cross compiling headaches; using nix-prefetch-url with +# hard-coded URLs is simpler. Keep these URLs in sync with the ones +# in default.nix where `srcs` is defined. +hash_aarch64_darwin=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "https://zoom.us/client/${version_aarch64_darwin}/zoomusInstallerFull.pkg?archType=arm64")) +hash_x86_64_darwin=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "https://zoom.us/client/${version_x86_64_darwin}/zoomusInstallerFull.pkg")) +hash_x86_64_linux=$(nix hash to-sri --type sha256 $(nix-prefetch-url --type sha256 "https://zoom.us/client/${version_x86_64_linux}/zoom_x86_64.pkg.tar.xz")) + +echo >&2 "=== Updating default.nix ..." +# update-source-version expects to be at the root of nixpkgs +(cd "$nixpkgs" && update-source-version zoom-us "$version_aarch64_darwin" $hash_aarch64_darwin --system=aarch64-darwin --version-key=versions.aarch64-darwin) +(cd "$nixpkgs" && update-source-version zoom-us "$version_x86_64_darwin" $hash_x86_64_darwin --system=x86_64-darwin --version-key=versions.x86_64-darwin) +(cd "$nixpkgs" && update-source-version zoom-us "$version_x86_64_linux" $hash_x86_64_linux --system=x86_64-linux --version-key=versions.x86_64-linux) + +echo >&2 "=== Done!" diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-darwin-sha.nix b/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-darwin-sha.nix deleted file mode 100644 index a5ef33d28b56..000000000000 --- a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-darwin-sha.nix +++ /dev/null @@ -1 +0,0 @@ -"12s4z80n1qk1vcp5vppabj6fxanm4q7pjj7mggalmjbj6984fsza" diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-darwin-version.nix b/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-darwin-version.nix deleted file mode 100644 index 4fd4c471b3cf..000000000000 --- a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-darwin-version.nix +++ /dev/null @@ -1 +0,0 @@ -"5.11.1.8356" diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-linux-sha.nix b/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-linux-sha.nix deleted file mode 100644 index c50424c7a5b0..000000000000 --- a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-linux-sha.nix +++ /dev/null @@ -1 +0,0 @@ -"1ir5akl4vrzb0b5s37s2viqisvf4sylw8rfnfj434h1q0gqz79sc" diff --git a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-linux-version.nix b/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-linux-version.nix deleted file mode 100644 index e776017ccb04..000000000000 --- a/pkgs/applications/networking/instant-messengers/zoom-us/x86_64-linux-version.nix +++ /dev/null @@ -1 +0,0 @@ -"5.11.1.3595" |
