sqlite_orm: 1.9 -> 1.9.1 (#379250)
[NixPkgs.git] / pkgs / by-name / wo / workout-tracker / package.nix
blob6b9f726735fd05acc2535182535dc1e7e43f06dc
2   lib,
3   buildGoModule,
4   buildNpmPackage,
5   fetchFromGitHub,
6   nix-update-script,
7   nixosTests,
8   ...
9 }:
10 let
11   pname = "workout-tracker";
12   version = "2.0.3";
14   src = fetchFromGitHub {
15     owner = "jovandeginste";
16     repo = "workout-tracker";
17     tag = "v${version}";
18     hash = "sha256-DJOYjKujb6mmqJcYhzPLv1uYgAIWW4hdH/gILlqkJXQ=";
19   };
21   assets = buildNpmPackage {
22     pname = "${pname}-assets";
23     inherit version src;
24     npmDepsHash = "sha256-/OBIRiLwUtXVmmg44FYqV0BptxQTg8bDuNMTj8IYwG0=";
25     dontNpmBuild = true;
26     makeCacheWritable = true;
27     postPatch = ''
28       rm Makefile
29     '';
30     installPhase = ''
31       runHook preInstall
32       cp -r . "$out"
33       runHook postInstall
34     '';
35   };
37 buildGoModule {
38   inherit pname version src;
40   vendorHash = null;
42   postPatch = ''
43     ln -s ${assets}/node_modules ./node_modules
44     make build-dist
45   '';
47   ldflags = [
48     "-s"
49     "-w"
50     "-X main.buildTime=1970-01-01T00:00:00Z"
51     "-X main.gitCommit=v${version}"
52     "-X main.gitRef=v${version}"
53     "-X main.gitRefName=v${version}"
54   ];
56   passthru.updateScript = nix-update-script { };
58   passthru.tests = {
59     inherit (nixosTests) workout-tracker;
60   };
62   meta = {
63     changelog = "https://github.com/jovandeginste/workout-tracker/releases/tag/v${version}";
64     description = "Workout tracking web application for personal use";
65     homepage = "https://github.com/jovandeginste/workout-tracker";
66     license = lib.licenses.mit;
67     mainProgram = "workout-tracker";
68     maintainers = with lib.maintainers; [
69       bhankas
70       sikmir
71     ];
72   };