diff --git a/pkgs/servers/monitoring/munin/default.nix b/pkgs/servers/monitoring/munin/default.nix
new file mode 100644
index 00000000000..b8e45adbf9c
--- /dev/null
+++ b/pkgs/servers/monitoring/munin/default.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchurl, perl, perlPackages, makeWrapper, which }:
+
+# TODO: split into server/node derivations
+
+stdenv.mkDerivation rec {
+  version = "2.0.14";
+  name = "munin-${version}";
+
+  src = fetchurl {
+    url = "https://github.com/munin-monitoring/munin/archive/${version}.tar.gz";
+    md5 = "f43f54cb38a64f6f1388c9cbac0395ee";
+  };
+
+  buildInputs = [ 
+    makeWrapper
+    which
+    perlPackages.ModuleBuild
+  ];
+
+  propagatedBuildInputs = [
+    perl
+    perlPackages.HTMLTemplate
+    perlPackages.NetSSLeay
+    perlPackages.NetServer
+    perlPackages.Log4Perl
+    #perlPackages.TimeHiRes
+    # TODO: Net::SNMP
+  ];
+
+  makeFlags="PERL=${perl}/bin/perl DESTDIR=$(out) PREFIX=$(out)";
+
+  preBuild = ''
+    sed -i '/CHECKUSER/d' Makefile
+    sed -i '/CHOWN/d' Makefile
+    sed -i '/CHECKGROUP/d' Makefile
+    substituteInPlace "Makefile" \
+      --replace "/usr/pwd" "pwd"
+  '';
+
+  postFixup = ''
+    if test -e $out/nix-support/propagated-native-build-inputs; then
+        ln -s $out/nix-support/propagated-native-build-inputs $out/nix-support/propagated-user-env-packages
+    fi
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Munin is a networked resource monitoring tool that can help analyze resource trends and 'what just happened to kill our performance?' problems";
+    homepage = http://munin-monitoring.org/;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.iElectric ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 47363ff43ef..fd7b09dd4fd 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5631,6 +5631,8 @@ let
     gdSupport = true;
   };
 
+  munin = callPackage ../servers/monitoring/munin { };
+
   nagiosPluginsOfficial = callPackage ../servers/monitoring/nagios/plugins/official { };
 
   net_snmp = callPackage ../servers/monitoring/net-snmp { };
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 104755ada99..4a2ca4655c3 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3007,6 +3007,14 @@ rec {
     };
   };
 
+  Log4Perl = buildPerlPackage rec {
+    name = "Log-Log4perl-1.41";
+    src = fetchurl {
+      url = "mirror://cpan/modules/by-module/Log/${name}.tar.gz";
+      sha256 = "0dajkgvlwsb4zdw6x3fil2n5phypq829dmqf8l9s88g9smms2a2i";
+    };
+  };
+
   LWP = buildPerlPackage {
     name = "libwww-perl-6.04";
     src = fetchurl {