1{
2 lib,
3 buildGoModule,
4 fetchFromGitHub,
5}:
6
7buildGoModule rec {
8 pname = "etcd";
9 version = "3.4.28";
10
11 src = fetchFromGitHub {
12 owner = "etcd-io";
13 repo = "etcd";
14 rev = "v${version}";
15 hash = "sha256-M0iD05Wk3pC56kGKeIb0bfMUpy9idMKin0+DYhBo/cw=";
16 };
17
18 vendorHash = "sha256-DbDIz/cbXqYHaGqNqP+wYpuiaFiZYElRXmQwBXnCbMk=";
19
20 buildPhase = ''
21 patchShebangs .
22 ./build
23 ./functional/build
24 '';
25
26 doCheck = false;
27
28 installPhase = ''
29 install -Dm755 bin/* bin/functional/cmd/* -t $out/bin
30 '';
31
32 meta = with lib; {
33 description = "Distributed reliable key-value store for the most critical data of a distributed system";
34 license = licenses.asl20;
35 homepage = "https://etcd.io/";
36 maintainers = with maintainers; [ offline ];
37 };
38}