1{
2 stdenvNoCC,
3 lib,
4 fetchFromGitHub,
5 makeWrapper,
6 php83,
7 nixosTests,
8}:
9
10stdenvNoCC.mkDerivation rec {
11 pname = "icingaweb2";
12 version = "2.12.4";
13
14 src = fetchFromGitHub {
15 owner = "Icinga";
16 repo = "icingaweb2";
17 rev = "v${version}";
18 hash = "sha256-Ds1SxNQ3WAhY79SWl1ZIQUl2Pb8bZlHISRaSEe+Phos=";
19 };
20
21 nativeBuildInputs = [ makeWrapper ];
22
23 installPhase = ''
24 mkdir -p $out/share
25 cp -ra application bin etc library modules public $out
26 cp -ra doc $out/share
27
28 wrapProgram $out/bin/icingacli --prefix PATH : "${lib.makeBinPath [ php83 ]}"
29 '';
30
31 passthru.tests = { inherit (nixosTests) icingaweb2; };
32
33 meta = with lib; {
34 description = "Webinterface for Icinga 2";
35 longDescription = ''
36 A lightweight and extensible web interface to keep an eye on your environment.
37 Analyse problems and act on them.
38 '';
39 homepage = "https://www.icinga.com/products/icinga-web-2/";
40 license = licenses.gpl2Plus;
41 teams = [ teams.helsinki-systems ];
42 mainProgram = "icingacli";
43 platforms = platforms.all;
44 };
45}