diff --git a/pkgs/by-name/sp/spade/package.nix b/pkgs/by-name/sp/spade/package.nix index 9248568deae2..00ec70d1c543 100644 --- a/pkgs/by-name/sp/spade/package.nix +++ b/pkgs/by-name/sp/spade/package.nix @@ -2,6 +2,9 @@ , rustPlatform , fetchFromGitLab , stdenv +, nix-update +, writeScript +, git }: rustPlatform.buildRustPackage rec { @@ -25,6 +28,18 @@ rustPlatform.buildRustPackage rec { }; }; + # rust + gitlab is a rare combo + passthru.updateScript = [ + (writeScript "update-spade" '' + VERSION="$( + ${lib.getExe git} ls-remote --tags --sort -version:refname ${lib.escapeShellArg src.gitRepoUrl} \ + | cut -f2 | grep ^refs/tags/v | cut -d/ -f3- | cut -c2- \ + | sort --version-sort --reverse | head -n1 + )" + exec ${lib.getExe nix-update} --version "$VERSION" "$@" + '') + ]; + meta = with lib; { description = "A better hardware description language"; homepage = "https://gitlab.com/spade-lang/spade";