1{
2 lib,
3 buildNpmPackage,
4 fetchFromGitHub,
5 npm-lockfile-fix,
6}:
7
8buildNpmPackage rec {
9 pname = "pm2";
10 version = "6.0.8";
11
12 src = fetchFromGitHub {
13 owner = "Unitech";
14 repo = "pm2";
15 rev = "v${version}";
16 hash = "sha256-roSHLJsDeNAa9z9O/hgy9P4ho5zeLz1+w0a8U0Ix2ao=";
17
18 # Requested patch upstream: https://github.com/Unitech/pm2/pull/5985
19 postFetch = ''
20 ${lib.getExe npm-lockfile-fix} $out/package-lock.json
21 '';
22 };
23
24 npmDepsHash = "sha256-6xUGO1vrzU5pi33ZaiRB6L5gY8p7ES93effyGdhsV5o=";
25
26 dontNpmBuild = true;
27
28 meta = {
29 changelog = "https://github.com/Unitech/pm2/blob/${src.rev}/CHANGELOG.md";
30 description = "Node.js production process manager with a built-in load balancer";
31 homepage = "https://github.com/Unitech/pm2";
32 license = lib.licenses.agpl3Only;
33 mainProgram = "pm2";
34 maintainers = with lib.maintainers; [ jeremyschlatter ];
35 };
36}