diff options
author | Tim Steinbach <tim@nequissimus.com> | 2020-11-03 11:16:05 -0500 |
---|---|---|
committer | Tim Steinbach <tim@nequissimus.com> | 2020-11-03 11:39:06 -0500 |
commit | d92254fbebc909465fc5c394bf54201ea3242165 (patch) | |
tree | ec377934911e2c2c1004e6453d3d08715026cd94 /pkgs/development/tools/build-managers/sbt | |
parent | f290e0ec6bb805a5858f8d9eaa14126da52efd22 (diff) | |
download | nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.tar nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.tar.gz nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.tar.bz2 nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.tar.lz nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.tar.xz nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.tar.zst nixpkgs-d92254fbebc909465fc5c394bf54201ea3242165.zip |
sbt: Add update script
Diffstat (limited to 'pkgs/development/tools/build-managers/sbt')
-rw-r--r-- | pkgs/development/tools/build-managers/sbt/default.nix | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix index 2ff15d68871..7cddc1acf73 100644 --- a/pkgs/development/tools/build-managers/sbt/default.nix +++ b/pkgs/development/tools/build-managers/sbt/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, jre, autoPatchelfHook, zlib }: +{ stdenv, fetchurl, jre, autoPatchelfHook, zlib, writeScript, common-updater-scripts, git, nixfmt, nix, coreutils, gnused }: stdenv.mkDerivation rec { pname = "sbt"; @@ -34,4 +34,22 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ nequissimus ]; platforms = platforms.unix; }; + + passthru.updateScript = writeScript "update.sh" '' + #!${stdenv.shell} + set -o errexit + PATH=${stdenv.lib.makeBinPath [ common-updater-scripts git nixfmt nix coreutils gnused ]} + + oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion sbt" | tr -d '"')" + latestTag="$(git -c 'versionsort.suffix=-' ls-remote --exit-code --refs --sort='version:refname' --tags git@github.com:sbt/sbt.git '*.*.*' | tail --lines=1 | cut --delimiter='/' --fields=3 | sed 's|^v||g')" + + if [ ! "$oldVersion" = "$latestTag" ]; then + update-source-version sbt "$latestTag" --version-key=version --print-changes + nixpkgs="$(git rev-parse --show-toplevel)" + default_nix="$nixpkgs/pkgs/development/tools/build-managers/sbt/default.nix" + nixfmt "$default_nix" + else + echo "sbt is already up-to-date" + fi + ''; } |