1{
2 lib,
3 stdenv,
4 rustPlatform,
5 fetchFromGitHub,
6 pkg-config,
7 openssl,
8 testers,
9 nix-update-script,
10 couchbase-shell,
11}:
12
13rustPlatform.buildRustPackage rec {
14 pname = "couchbase-shell";
15 version = "1.1.0";
16
17 src = fetchFromGitHub {
18 owner = "couchbaselabs";
19 repo = "couchbase-shell";
20 rev = "v${version}";
21 hash = "sha256-wqOU94rPqIO128uL9iyVzWcAgqnDUPUy1+Qq1hSkvHA=";
22 };
23
24 cargoHash = "sha256-tlVOro9u4ypgJ5yqjEzjfvrGXVCYe6DN6bg/3NhipR4=";
25
26 nativeBuildInputs = [
27 pkg-config
28 ];
29
30 buildInputs = [
31 openssl
32 ];
33
34 # tests need couchbase server
35 doCheck = false;
36
37 passthru = {
38 tests.version = testers.testVersion {
39 package = couchbase-shell;
40 };
41 updateScript = nix-update-script { };
42 };
43
44 meta = {
45 description = "Shell for Couchbase Server and Cloud";
46 homepage = "https://couchbase.sh/";
47 license = lib.licenses.asl20;
48 maintainers = with lib.maintainers; [ petrkozorezov ];
49 mainProgram = "cbsh";
50 platforms = lib.platforms.linux;
51 };
52}