X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=default.nix;h=9dd553c1daeff173caec40288e0876149a1ffa63;hb=9106eaf4633b3500cac2d83df47363e3e894b404;hp=c2fe492c626ed84e583b8e9fc1db3303b9499f87;hpb=d0f8088176b96b41bb7fe5911b9a224883b4b9f1;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/default.nix b/default.nix index c2fe492..9dd553c 100644 --- a/default.nix +++ b/default.nix @@ -1,6 +1,21 @@ with import {}; let nixpkgs = import {}; + postHook = '' + header() { + echo -ne "\033[1;36m" + echo -n "$1" + echo -e "\033[0m" + } + + echoCmd() { + printf "\033[1;34m%s:\033[0m" "$1" + shift + printf ' %q' "$@" + echo + } + ''; + fetchedGithub = path: let json = lib.importJSON path; @@ -122,9 +137,77 @@ let sha256 = "13yrkcmvh5h5fwnai61sbmqkrjyisz08n62pq0ada2lyyqf7g6b9"; }; }; + + mtop = buildPerlPackage rec { + name = "mtop-${version}"; + version = "0.6.6"; + src = fetchurl { + url = "http://downloads.sourceforge.net/project/mtop/mtop/v${version}/mtop-${version}.tar.gz"; + sha256 = "0x0x5300b1j9i0xxk8rsrki0pspyzj2vylhzv8qg3l6j26aw0zrf"; + }; + outputs = ["out"]; + buildInputs = [ perlPackages.DBI perlPackages.DBDmysql perlPackages.Curses ]; + + postInstall = '' + cd "$out" + preConfigure || true + ''; + meta = with stdenv.lib; { + description = "MySQL top (monitor and examine slow queries)"; + homepage = http://mtop.sourceforge.net/; + license = licenses.gpl3; + maintainers = with maintainers; [ { name = "Marc Prewitt"; email = "mprewitt@chelsea.net"; } ]; + platforms = platforms.unix; + }; + }; + + tiv = buildPerlPackage rec { + name = "tiv-${version}"; + version = "2015"; + src = fetchurl { + url = "http://xyne.archlinux.ca/projects/tiv/src/tiv-${version}.tar.xz"; + sha256 = "1vq073v7z7vmcd57lhs4rf4jasji69cpjgkz4dykp94a77p1qq90"; + }; + outputs = ["out"]; + buildInputs = [ perlPackages.PerlMagick ]; + perlPreHookScript = ./hooks/tiv_builder.sh; + perlPreHook = '' + source ${perlPreHookScript} + ''; + installPhase = '' + install -Dm755 tiv "$out/bin/tiv" + ''; + }; + + cnagios = stdenv.mkDerivation (fetchedGithub ./fetched/cnagios.json // rec { + configureFlags = [ + "--with-etc-dir=/etc/cnagios" + "--with-var-dir=/var/lib/naemon" + "--with-nagios-data=4" + ]; + + prePatch = '' + sed -i -e "s/-lcurses/-lncurses/" Makefile.in + ''; + installPhase = '' + install -dm755 $out/share/doc/cnagios + install -Dm644 cnagiosrc $out/share/doc/cnagios/ + install -Dm644 cnagios.help $out/share/doc/cnagios/ + install -Dm644 cnagios.pl $out/share/doc/cnagios/ + install -dm755 $out/bin + install -Dm755 cnagios $out/bin/ + ''; + propagatedBuildInputs = [ perl ncurses ]; + }); + + nagios-cli = python2Packages.buildPythonApplication (fetchedGithub ./fetched/nagios-cli.json); + +# https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh +# https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks in { inherit nix-prefetch-scripts; + inherit nix-generate-from-cpan; inherit ledger; inherit taskwarrior vit timewarrior; inherit weboob; @@ -144,7 +227,13 @@ in inherit pass; inherit ranger; inherit profanity; - inherit weechat; + inherit weechat irssi; inherit note terminal_velocity; + inherit mtop; + inherit tiv; + inherit cnagios nagios-cli; + inherit abook khard khal; + inherit graphicsmagick; + inherit youtube-dl; #inherit nixos; }