diff options
author | Janik <80165193+Janik-Haag@users.noreply.github.com> | 2024-02-10 13:51:14 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-10 13:51:14 +0100 |
commit | 9496b27011a3706d0afbc3320dc0dd16683b212d (patch) | |
tree | f166a5dfa6f9c6c84b6935c96ae7e5d0e029e171 | |
parent | f1da446b0c969c7becd16461450db95ea08acaa1 (diff) | |
parent | a3dd9749f9cbe70543e2e2b1c172d225233070eb (diff) |
Merge pull request #279640 from Croissong/init-updatecli
updatecli: init at 0.70.0
-rw-r--r-- | maintainers/maintainer-list.nix | 9 | ||||
-rw-r--r-- | pkgs/by-name/up/updatecli/package.nix | 60 |
2 files changed, 69 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index e14b96b067d82..354fd2b8d8aea 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3954,6 +3954,15 @@ githubId = 6821729; github = "criyle"; }; + croissong = { + email = "jan.moeller0@pm.me"; + name = "Jan Möller"; + github = "Croissong"; + githubId = 4162215; + keys = [{ + fingerprint = "CE97 9DEE 904C 26AA 3716 78C2 96A4 38F9 EE72 572F"; + }]; + }; crschnick = { email = "crschnick@xpipe.io"; name = "Christopher Schnick"; diff --git a/pkgs/by-name/up/updatecli/package.nix b/pkgs/by-name/up/updatecli/package.nix new file mode 100644 index 0000000000000..327c6b51bf814 --- /dev/null +++ b/pkgs/by-name/up/updatecli/package.nix @@ -0,0 +1,60 @@ +{ lib +, go +, buildGoModule +, fetchFromGitHub +, nix-update-script +, installShellFiles +}: + +buildGoModule rec { + pname = "updatecli"; + version = "0.70.0"; + + src = fetchFromGitHub { + owner = "updatecli"; + repo = pname; + rev = "v${version}"; + hash = "sha256-MQoi/HvJqGCYzQLNsJul/7N3MXkV1X5d48InUSIWT8o="; + }; + + vendorHash = "sha256-RjyVlj66CbkQlzXkdP6ZWf+cNVjOgoPdskQefv9bNoo="; + + # tests require network access + doCheck = false; + + CGO_ENABLED = 0; + + ldflags = [ + "-s" + "-w" + "-X github.com/updatecli/updatecli/pkg/core/version.BuildTime=unknown" + ''-X "github.com/updatecli/updatecli/pkg/core/version.GoVersion=go version go${lib.getVersion go}"'' + "-X github.com/updatecli/updatecli/pkg/core/version.Version=${version}" + ]; + + passthru.updateScript = nix-update-script { }; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = '' + installShellCompletion --cmd updatecli \ + --bash <($out/bin/updatecli completion bash) \ + --fish <($out/bin/updatecli completion fish) \ + --zsh <($out/bin/updatecli completion zsh) + + $out/bin/updatecli man > updatecli.1 + installManPage updatecli.1 + ''; + + meta = with lib; { + description = "A Declarative Dependency Management tool"; + longDescription = '' + Updatecli is a command-line tool used to define and apply update strategies. + ''; + homepage = "https://www.updatecli.io"; + changelog = "https://github.com/updatecli/updatecli/releases/tag/v${version}"; + license = licenses.asl20; + mainProgram = "updatecli"; + maintainers = with maintainers; [ croissong ]; + }; +} |