ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
61 lines
1.5 KiB
Nix
61 lines
1.5 KiB
Nix
{ stdenv
|
|
, lib
|
|
, buildGoModule
|
|
, fetchFromGitHub
|
|
, makeWrapper
|
|
, nixosTests
|
|
, systemd
|
|
}:
|
|
|
|
buildGoModule rec {
|
|
version = "2.9.5";
|
|
pname = "grafana-loki";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "grafana";
|
|
repo = "loki";
|
|
rev = "v${version}";
|
|
hash = "sha256-+X9ODzyIaeizLItUqorDdvgpIOPML+MzgwmyKbes9dA=";
|
|
};
|
|
|
|
vendorHash = null;
|
|
|
|
subPackages = [
|
|
# TODO split every executable into its own package
|
|
"cmd/loki"
|
|
"cmd/loki-canary"
|
|
"clients/cmd/promtail"
|
|
"cmd/logcli"
|
|
];
|
|
|
|
tags = ["promtail_journal_enabled"];
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
buildInputs = lib.optionals stdenv.isLinux [ systemd.dev ];
|
|
|
|
preFixup = lib.optionalString stdenv.isLinux ''
|
|
wrapProgram $out/bin/promtail \
|
|
--prefix LD_LIBRARY_PATH : "${lib.getLib systemd}/lib"
|
|
'';
|
|
|
|
passthru.tests = { inherit (nixosTests) loki; };
|
|
|
|
ldflags = let t = "github.com/grafana/loki/pkg/util/build"; in [
|
|
"-s"
|
|
"-w"
|
|
"-X ${t}.Version=${version}"
|
|
"-X ${t}.BuildUser=nix@nixpkgs"
|
|
"-X ${t}.BuildDate=unknown"
|
|
"-X ${t}.Branch=unknown"
|
|
"-X ${t}.Revision=unknown"
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "Like Prometheus, but for logs";
|
|
mainProgram = "promtail";
|
|
license = with licenses; [ agpl3Only asl20 ];
|
|
homepage = "https://grafana.com/oss/loki/";
|
|
changelog = "https://github.com/grafana/loki/releases/tag/v${version}";
|
|
maintainers = with maintainers; [ willibutz globin mmahut emilylange ] ++ teams.helsinki-systems.members;
|
|
};
|
|
}
|