summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/os-specific/linux/tiptop/default.nix36
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 38 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/tiptop/default.nix b/pkgs/os-specific/linux/tiptop/default.nix
new file mode 100644
index 00000000000..b1b230b8ba7
--- /dev/null
+++ b/pkgs/os-specific/linux/tiptop/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, fetchpatch, libxml2, ncurses, bison, flex }:
+
+stdenv.mkDerivation rec {
+  name = "tiptop-${version}";
+  version = "2.3";
+
+  src = fetchurl {
+    url = "${meta.homepage}/releases/${name}.tar.gz";
+    sha256 = "1jhqmcgx664ygayw471cg05bxc4ikxn35ccyiswymjhanicfj1rz";
+  };
+
+  patches = [(fetchpatch {
+    name = "reproducibility.patch";
+    url = "http://anonscm.debian.org/cgit/collab-maint/tiptop.git/plain/debian/"
+      + "patches/0001-fix-reproducibility-of-build-process.patch?id=c777d0d5803";
+    sha256 = "116l7n3nl9lj691i7j8x0d0za1i6zpqgghw5d70qfpb17c04cblp";
+  })];
+
+  postPatch = ''
+    substituteInPlace ./configure --replace -lcurses -lncurses
+  '';
+
+  nativeBuildInputs = [ flex bison ];
+  buildInputs = [ libxml2 ncurses ];
+
+  NIX_CFLAGS_COMPILE = [ "-I${libxml2.dev}/include/libxml2" ];
+
+  meta = with stdenv.lib; {
+    description = "Performance monitoring tool for Linux";
+    homepage = http://tiptop.gforge.inria.fr;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.vcunat ];
+  };
+}
+
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index db74c386e39..2a90d1b5305 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -11662,6 +11662,8 @@ in
   # FIXME: `tcp-wrapper' is actually not OS-specific.
   tcp_wrappers = callPackage ../os-specific/linux/tcp-wrappers { };
 
+  tiptop = callPackage ../os-specific/linux/tiptop { };
+
   trinity = callPackage ../os-specific/linux/trinity { };
 
   tunctl = callPackage ../os-specific/linux/tunctl { };