base16-schemes: unstable-2024-06-21 -> unstable-2024-11-12
[NixPkgs.git] / pkgs / by-name / gr / graphite-cli / package.nix
blobe905851bcd994b2196fa081868b4f051249d26b4
1 { lib
2 , buildNpmPackage
3 , fetchurl
4 , git
5 , installShellFiles
6 }:
8 buildNpmPackage rec {
9   pname = "graphite-cli";
10   version = "1.4.6";
12   src = fetchurl {
13     url = "https://registry.npmjs.org/@withgraphite/graphite-cli/-/graphite-cli-${version}.tgz";
14     hash = "sha256-RXVGy46DL+fxXIErCssspLeSh/iySLTzUCqQY2YNEVc=";
15   };
17   npmDepsHash = "sha256-I5WXcdDWBbfc+y7Tdh6UCi/WfHvHx75OAqtQsXujzSM=";
19   postPatch = ''
20     ln -s ${./package-lock.json} package-lock.json
21   '';
23   nativeBuildInputs = [
24     git
25     installShellFiles
26   ];
28   dontNpmBuild = true;
30   postInstall = ''
31     installShellCompletion --cmd gt \
32       --bash <($out/bin/gt completion) \
33       --fish <(GT_PAGER= $out/bin/gt fish) \
34       --zsh <(ZSH_NAME=zsh $out/bin/gt completion)
35   '';
37   passthru.updateScript = ./update.sh;
39   meta = {
40     changelog = "https://graphite.dev/docs/cli-changelog";
41     description = "CLI that makes creating stacked git changes fast & intuitive";
42     downloadPage = "https://www.npmjs.com/package/@withgraphite/graphite-cli";
43     homepage = "https://graphite.dev/docs/graphite-cli";
44     license = lib.licenses.unfree; # no license specified
45     mainProgram = "gt";
46     maintainers = with lib.maintainers; [ diegs ];
47   };