biglybt: 3.5.0.0 -> 3.6.0.0
[NixPkgs.git] / pkgs / servers / monitoring / grafana-image-renderer / default.nix
blob659387d52e0ee2464bed6dc2979179a0a6309b18
1 { lib, mkYarnPackage, fetchFromGitHub, fetchYarnDeps, nodejs, runtimeShell }:
3 # Notes for the upgrade:
4 # * Download the tarball of the new version to use.
5 # * Replace new `package.json` here.
6 # * Update `version`+`hash` and rebuild.
8 mkYarnPackage rec {
9   pname = "grafana-image-renderer";
10   version = "3.10.2";
12   src = fetchFromGitHub {
13     owner = "grafana";
14     repo = "grafana-image-renderer";
15     rev = "v${version}";
16     hash = "sha256-GL9uJV4/j3tcD9DMoBuO/59OsfG+njc2FH1Bt3VP7K8=";
17   };
19   offlineCache = fetchYarnDeps {
20     yarnLock = src + "/yarn.lock";
21     hash = "sha256-xgaaIY5Jy8JTSJVGHwPOYgh+fASSPiyoUcmLN516jic=";
22   };
24   packageJSON = ./package.json;
26   buildPhase = ''
27     runHook preBuild
29     pushd deps/renderer
30     yarn run build
31     popd
33     runHook postBuild
34   '';
36   dontInstall = true;
38   distPhase = ''
39     runHook preDist
41     shopt -s extglob
43     pushd deps/renderer
44     install_path="$out/libexec/grafana-image-renderer"
45     mkdir -p $install_path
46     cp -R ../../node_modules $install_path
47     cp -R ./!(node_modules) $install_path
48     popd
50     mkdir -p $out/bin
51     cat >$out/bin/grafana-image-renderer <<EOF
52     #! ${runtimeShell}
53     ${nodejs}/bin/node $install_path/build/app.js \$@
54     EOF
55     chmod +x $out/bin/grafana-image-renderer
57     runHook postDist
58   '';
60   meta = with lib; {
61     homepage = "https://github.com/grafana/grafana-image-renderer";
62     description = "A Grafana backend plugin that handles rendering of panels & dashboards to PNGs using headless browser (Chromium/Chrome)";
63     mainProgram = "grafana-image-renderer";
64     license = licenses.asl20;
65     maintainers = with maintainers; [ ma27 ];
66     platforms = platforms.all;
67   };