diff options
Diffstat (limited to 'pkgs/by-name/sp/spade/package.nix')
-rw-r--r-- | pkgs/by-name/sp/spade/package.nix | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/pkgs/by-name/sp/spade/package.nix b/pkgs/by-name/sp/spade/package.nix index 9248568deae20..2781a6440de92 100644 --- a/pkgs/by-name/sp/spade/package.nix +++ b/pkgs/by-name/sp/spade/package.nix @@ -2,17 +2,20 @@ , rustPlatform , fetchFromGitLab , stdenv +, nix-update +, writeScript +, git }: rustPlatform.buildRustPackage rec { pname = "spade"; - version = "0.7.0"; + version = "0.8.0"; src = fetchFromGitLab { owner = "spade-lang"; repo = "spade"; rev = "v${version}"; - hash = "sha256-oJfOgWobjt+DAVdP465E8iLMJCdqhs0vzJJFgRqVAP8="; + hash = "sha256-J3AdXuN1WLKFED9YeBly68umPlx05Wl+mhT2YbBsJVk="; # only needed for vatch, which contains test data fetchSubmodules = true; }; @@ -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"; |