Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / applications / version-management / git-cinnabar / default.nix
blobca6a0165f1d0b4edfd3c18ca90837eab39d97f7d
1 { stdenv
2 , lib
3 , fetchFromGitHub
4 , cargo
5 , pkg-config
6 , rustPlatform
7 , bzip2
8 , curl
9 , zlib
10 , zstd
11 , libiconv
12 , CoreServices
15 stdenv.mkDerivation (finalAttrs: {
16   pname = "git-cinnabar";
17   version = "0.6.2";
19   src = fetchFromGitHub {
20     owner = "glandium";
21     repo = "git-cinnabar";
22     rev = finalAttrs.version;
23     hash = "sha256-1Y4zd4rYNRatemDXRMkQQwBJdkfOGfDWk9QBvJOgi7s=";
24     fetchSubmodules = true;
25   };
27   nativeBuildInputs = [
28     cargo
29     pkg-config
30     rustPlatform.cargoSetupHook
31   ];
33   buildInputs = [
34     bzip2
35     curl
36     zlib
37     zstd
38   ] ++ lib.optionals stdenv.isDarwin [
39     libiconv
40     CoreServices
41   ];
43   cargoDeps = rustPlatform.fetchCargoTarball {
44     inherit (finalAttrs) src;
45     hash = "sha256-p85AS2DukUzEbW9UGYmiF3hpnZvPrZ2sRaeA9dU8j/8=";
46   };
48   ZSTD_SYS_USE_PKG_CONFIG = true;
50   enableParallelBuilding = true;
52   installPhase = ''
53     runHook preInstall
55     mkdir -p $out/bin
56     install -v target/release/git-cinnabar $out/bin
57     ln -sv git-cinnabar $out/bin/git-remote-hg
59     runHook postInstall
60   '';
62   meta = {
63     description = "git remote helper to interact with mercurial repositories";
64     homepage = "https://github.com/glandium/git-cinnabar";
65     license = lib.licenses.gpl2Only;
66     maintainers = with lib.maintainers; [ qyliss ];
67     platforms = lib.platforms.all;
68   };