1{
2 lib,
3 rustPlatform,
4 fetchFromGitHub,
5 nix-update-script,
6 protobuf,
7 pkg-config,
8 openssl,
9}:
10let
11 pname = "teller";
12 version = "2.0.7";
13 date = "2024-05-19";
14in
15rustPlatform.buildRustPackage {
16 inherit pname version;
17
18 src = fetchFromGitHub {
19 owner = "tellerops";
20 repo = "teller";
21 rev = "v${version}";
22 hash = "sha256-CI74nMMTIPwjJfy7ASR19V6EbYZ62NoAOxlP3Xt2BuI=";
23 };
24
25 cargoHash = "sha256-PSa4EEDEFdFpfYPG5M5wMwfq3WSqMw5d8a+mKgBzCFw=";
26
27 nativeBuildInputs = [
28 protobuf
29 pkg-config
30 ];
31
32 buildInputs = [
33 openssl
34 ];
35
36 doCheck = false;
37
38 doInstallCheck = true;
39 installCheckPhase = ''
40 $out/bin/teller --version 2>&1 | grep ${version};
41 '';
42
43 passthru.updateScript = nix-update-script { };
44
45 meta = with lib; {
46 homepage = "https://github.com/tellerops/teller/";
47 description = "Cloud native secrets management for developers";
48 mainProgram = "teller";
49 license = licenses.asl20;
50 maintainers = with maintainers; [
51 cameronraysmith
52 wahtique
53 ];
54 };
55}