diff --git a/pkgs/development/tools/unityhub/default.nix b/pkgs/development/tools/unityhub/default.nix index af67ba03bcd4..c0ebebbfca37 100644 --- a/pkgs/development/tools/unityhub/default.nix +++ b/pkgs/development/tools/unityhub/default.nix @@ -119,6 +119,8 @@ stdenv.mkDerivation rec { runHook postInstall ''; + passthru.updateScript = ./update.sh; + meta = with lib; { description = "Official Unity3D app to download and manage Unity Projects and installations"; homepage = "https://unity3d.com/"; diff --git a/pkgs/development/tools/unityhub/update.sh b/pkgs/development/tools/unityhub/update.sh new file mode 100755 index 000000000000..646652aa6fc4 --- /dev/null +++ b/pkgs/development/tools/unityhub/update.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env nix-shell +#!nix-shell -i bash -p curl common-updater-scripts +# set -euo pipefail + +new_version="$(curl https://hub-dist.unity3d.com/artifactory/hub-debian-prod-local/dists/stable/main/binary-amd64/Packages --silent | sed -nE "s/^Version: ([0-9]+\.[0-9]+\.[0-9]+)$/\1/p" | sort -V | tail -n 1)" +old_version="$(sed -nE 's/^\s*version = "([0-9]+\.[0-9]+\.[0-9]+)";$/\1/p' ./default.nix)" + +if [[ "$new_version" == "$old_version" ]]; then + echo "Up to date" + exit 0 +fi + +update-source-version unityhub "$new_version"