1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 bzip2,
6 cmake,
7 cli11,
8 yaml-cpp,
9 nlohmann_json,
10 zstd,
11 reproc,
12 spdlog,
13 tl-expected,
14 libmamba,
15 python3,
16 versionCheckHook,
17}:
18stdenv.mkDerivation rec {
19 pname = "mamba-cpp";
20 version = "2.1.1";
21
22 src = fetchFromGitHub {
23 owner = "mamba-org";
24 repo = "mamba";
25 tag = version;
26 hash = "sha256-JBwdfYM7J5R7HZyw5kVXwu4FlZUd2QPrsTaGuXnyAJI=";
27 };
28
29 nativeBuildInputs = [ cmake ];
30
31 buildInputs = [
32 python3
33 reproc
34 spdlog
35 nlohmann_json
36 tl-expected
37 zstd
38 bzip2
39 cli11
40 yaml-cpp
41 libmamba
42 ];
43
44 cmakeFlags = [
45 (lib.cmakeBool "BUILD_MAMBA" true)
46 (lib.cmakeBool "BUILD_SHARED" true)
47 (lib.cmakeBool "BUILD_LIBMAMBA" false)
48 ];
49
50 nativeInstallCheckInputs = [ versionCheckHook ];
51
52 meta = with lib; {
53 description = "Reimplementation of the conda package manager";
54 homepage = "https://github.com/mamba-org/mamba";
55 license = licenses.bsd3;
56 platforms = platforms.linux ++ platforms.darwin;
57 maintainers = with maintainers; [ klchen0112 ];
58 mainProgram = "mamba";
59 };
60}