ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / go / goatcounter / package.nix
bloba19bf73d31000a49e8720d8e920df5e13677dfcd
2   lib,
3   buildGoModule,
4   fetchFromGitHub,
5   testers,
6   goatcounter,
7   nixosTests,
8 }:
10 buildGoModule rec {
11   pname = "goatcounter";
12   version = "2.5.0";
14   src = fetchFromGitHub {
15     owner = "arp242";
16     repo = "goatcounter";
17     rev = "v${version}";
18     hash = "sha256-lwiLk/YYxX4QwSDjpU/mAikumGXYMzleRzmPjZGruZU=";
19   };
21   vendorHash = "sha256-YAb3uBWQc6hWzF1Z5cAg8RzJQSJV+6dkppfczKS832s=";
22   subPackages = [ "cmd/goatcounter" ];
23   modRoot = ".";
25   # Derived from the upstream build scripts:
26   #
27   # `-trimpath` is used, which `allowGoReference` sets
28   allowGoReference = true;
29   # Flags set in the upstream build.
30   ldflags = [
31     "-s"
32     "-w"
33     "-X zgo.at/goatcounter/v2.Version=${src.rev}"
34   ];
36   passthru.tests = {
37     moduleTest = nixosTests.goatcounter;
38     version = testers.testVersion {
39       package = goatcounter;
40       command = "goatcounter version";
41       version = "v${version}";
42     };
43   };
45   meta = {
46     description = "Easy web analytics. No tracking of personal data";
47     changelog = "https://github.com/arp242/goatcounter/releases/tag/${src.rev}";
48     longDescription = ''
49       GoatCounter is an open source web analytics platform available as a hosted
50       service (free for non-commercial use) or self-hosted app. It aims to offer easy
51       to use and meaningful privacy-friendly web analytics as an alternative to
52       Google Analytics or Matomo.
53     '';
54     homepage = "https://github.com/arp242/goatcounter";
55     license = lib.licenses.eupl12;
56     maintainers = with lib.maintainers; [ tylerjl ];
57     mainProgram = "goatcounter";
58   };