diff --git a/pkgs/servers/monitoring/fusion-inventory/default.nix b/pkgs/servers/monitoring/fusion-inventory/default.nix new file mode 100644 index 00000000000..8b3f902b00c --- /dev/null +++ b/pkgs/servers/monitoring/fusion-inventory/default.nix @@ -0,0 +1,67 @@ +{ stdenv, fetchurl, gnused, buildPerlPackage, perl, perlPackages +}: + +buildPerlPackage rec { + version = "2.3.18"; + name = "FusionInventory-Agent-${version}"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GROUSSE/${name}.tar.gz"; + sha256 = "543d96fa61b8f2a2bc599fe9f694f19d1f2094dc5506bc514d00b8a445bc5401"; + }; + + patches = [ ./remove_software_test.patch ]; + + postPatch = '' + patchShebangs bin + ''; + + buildTools = []; + buildInputs = with perlPackages; [ + CGI + DataStructureUtil + FileCopyRecursive + HTTPProxy + HTTPServerSimple + HTTPServerSimpleAuthen + IOCapture + IOSocketSSL + IPCRun + JSON + LWPProtocolhttps + NetSNMP + TestCompile + TestDeep + TestException + TestMockModule + TestMockObject + TestNoWarnings + ]; + propagatedBuildInputs = with perlPackages; [ + FileWhich + LWP + NetIP + TextTemplate + UNIVERSALrequire + XMLTreePP + ]; + + installPhase = '' + mkdir -p $out + + cp -r bin $out + cp -r lib $out + + for cur in $out/bin/*; do + sed -e "s|./lib|$out/lib|" -i "$cur" + done + ''; + + outputs = [ "out" ]; + + meta = with stdenv.lib; { + homepage = http://www.fusioninventory.org; + description = "FusionInventory unified Agent for UNIX, Linux, Windows and MacOSX"; + license = stdenv.lib.licenses.gpl2; + maintainers = [ maintainers.phile314 ]; + }; +} diff --git a/pkgs/servers/monitoring/fusion-inventory/remove_software_test.patch b/pkgs/servers/monitoring/fusion-inventory/remove_software_test.patch new file mode 100644 index 00000000000..ba6fd54eb18 --- /dev/null +++ b/pkgs/servers/monitoring/fusion-inventory/remove_software_test.patch @@ -0,0 +1,25 @@ +diff --git a/t/apps/agent.t b/t/apps/agent.t +index c0f6fc52f..c83837d70 100755 +--- a/t/apps/agent.t ++++ b/t/apps/agent.t +@@ -12,7 +12,7 @@ use XML::TreePP; + use FusionInventory::Agent::Tools; + use FusionInventory::Test::Utils; + +-plan tests => 34; ++plan tests => 33; + + my ($content, $out, $err, $rc); + +@@ -72,11 +72,6 @@ subtest "first inventory execution and content" => sub { + }; + + ok( +- exists $content->{REQUEST}->{CONTENT}->{SOFTWARES}, +- 'inventory has software' +-); +- +-ok( + exists $content->{REQUEST}->{CONTENT}->{ENVS}, + 'inventory has environment variables' + ); diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d406141c41d..42d29de1d76 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -11369,6 +11369,8 @@ with pkgs; openssl = openssl_1_0_2; }; + fusionInventory = callPackage ../servers/monitoring/fusion-inventory { }; + gatling = callPackage ../servers/http/gatling { }; glabels = callPackage ../applications/graphics/glabels { }; diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix index ed78f67739e..91cd9fc0575 100644 --- a/pkgs/top-level/perl-packages.nix +++ b/pkgs/top-level/perl-packages.nix @@ -549,6 +549,19 @@ let self = _self // overrides; _self = with self; { }; }; + AuthenSimple = buildPerlPackage rec { + name = "Authen-Simple-0.5"; + src = fetchurl { + url = "mirror://cpan/authors/id/C/CH/CHANSEN/${name}.tar.gz"; + sha256 = "02cddab47f8bf1a1cbd4c9bf8d258f6d05111499c33f8315e7244812f72613aa"; + }; + propagatedBuildInputs = [ ClassAccessor ClassDataInheritable CryptPasswdMD5 ParamsValidate ]; + meta = { + description = "Simple Authentication"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + autobox = buildPerlPackage rec { name = "autobox-2.84"; src = fetchurl { @@ -3177,6 +3190,19 @@ let self = _self // overrides; _self = with self; { }; }; + DataStructureUtil = buildPerlPackage rec { + name = "Data-Structure-Util-0.16"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AN/ANDYA/${name}.tar.gz"; + sha256 = "9cd42a13e65cb15f3a76296eb9a134da220168ec747c568d331a50ae7a2ddbc6"; + }; + buildInputs = [ TestPod ]; + meta = { + description = "Change nature of data within a structure"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + DataTaxi = buildPerlPackage { name = "Data-Taxi-0.96"; propagatedBuildInputs = [DebugShowStuff]; @@ -6824,6 +6850,20 @@ let self = _self // overrides; _self = with self; { buildInputs = [ TestMore ]; }; + HTTPProxy = buildPerlPackage rec { + name = "HTTP-Proxy-0.304"; + src = fetchurl { + url = "mirror://cpan/authors/id/B/BO/BOOK/${name}.tar.gz"; + sha256 = "b05290534ec73625c21a0565fc35170890dab163843d95331c292c23f504c69d"; + }; + buildInputs = [ HTMLParser ]; + propagatedBuildInputs = [ HTTPDaemon HTTPDate HTTPMessage LWP ]; + meta = { + description = "A pure Perl HTTP proxy"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + HTTPRequestAsCGI = buildPerlPackage rec { name = "HTTP-Request-AsCGI-1.2"; src = fetchurl { @@ -6857,6 +6897,18 @@ let self = _self // overrides; _self = with self; { }; }; + HTTPServerSimpleAuthen = buildPerlPackage rec { + name = "HTTP-Server-Simple-Authen-0.04"; + src = fetchurl { + url = "mirror://cpan/authors/id/M/MI/MIYAGAWA/${name}.tar.gz"; + sha256 = "2dddc8ab9dc8986980151e4ba836a6bbf091f45cf195be1768ebdb4a993ed59b"; + }; + propagatedBuildInputs = [ AuthenSimple HTTPServerSimple ]; + meta = { + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + HTTPServerSimpleMason = buildPerlPackage { name = "HTTP-Server-Simple-Mason-0.14"; src = fetchurl { @@ -6995,6 +7047,17 @@ let self = _self // overrides; _self = with self; { }; }; + IOCapture = buildPerlPackage rec { + name = "IO-Capture-0.05"; + src = fetchurl { + url = "mirror://cpan/authors/id/R/RE/REYNOLDS/${name}.tar.gz"; + sha256 = "c2c15a254ca74fb8c57d25d7b6cbcaff77a3b4fb5695423f1f80bb423abffea9"; + }; + meta = { + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + IOCaptureOutput = buildPerlPackage rec { name = "IO-CaptureOutput-1.1104"; src = fetchurl { @@ -13314,6 +13377,20 @@ let self = _self // overrides; _self = with self; { }; }; + TestCompile = buildPerlPackage rec { + name = "Test-Compile-v1.3.0"; + src = fetchurl { + url = "mirror://cpan/authors/id/E/EG/EGILES/${name}.tar.gz"; + sha256 = "77527e9477ac5260443c756367a7f7bc3d8f6c6ebbc561b0b2fb3f79303bad33"; + }; + buildInputs = [ ModuleBuild ]; + propagatedBuildInputs = [ UNIVERSALrequire ]; + meta = { + description = "Check whether Perl files compile correctly"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + TestCPANMeta = buildPerlPackage { name = "Test-CPAN-Meta-0.23"; src = fetchurl { @@ -15852,6 +15929,19 @@ let self = _self // overrides; _self = with self; { }; }; + XMLTreePP = buildPerlPackage rec { + name = "XML-TreePP-0.43"; + src = fetchurl { + url = "mirror://cpan/authors/id/K/KA/KAWASAKI/${name}.tar.gz"; + sha256 = "7fbe2d6430860059894aeeebf75d4cacf1bf8d7b75294eb87d8e1502f81bd760"; + }; + propagatedBuildInputs = [ LWP ]; + meta = { + description = "Pure Perl implementation for parsing/writing XML documents"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; + XMLTwig = buildPerlPackage rec { name = "XML-Twig-3.49"; src = fetchurl {