{ lib, go, buildGoPackage, fetchFromGitHub }: buildGoPackage rec { pname = "prometheus"; version = "2.13.1"; goPackagePath = "github.com/prometheus/prometheus"; src = fetchFromGitHub { rev = "v${version}"; owner = "prometheus"; repo = "prometheus"; sha256 = "055qliv683b87dwj7pkprdpjgyp6s4s3cwvpbsl1gxidhlr4y69b"; }; buildFlagsArray = let t = "${goPackagePath}/vendor/github.com/prometheus/common/version"; in '' -ldflags= -X ${t}.Version=${version} -X ${t}.Revision=unknown -X ${t}.Branch=unknown -X ${t}.BuildUser=nix@nixpkgs -X ${t}.BuildDate=unknown -X ${t}.GoVersion=${lib.getVersion go} ''; preInstall = '' mkdir -p "$bin/share/doc/prometheus" "$bin/etc/prometheus" cp -a $src/documentation/* $bin/share/doc/prometheus cp -a $src/console_libraries $src/consoles $bin/etc/prometheus ''; doCheck = true; meta = with lib; { description = "Service monitoring system and time series database"; homepage = "https://prometheus.io"; license = licenses.asl20; maintainers = with maintainers; [ benley fpletz globin willibutz ]; platforms = platforms.unix; }; }