mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-24 20:02:58 +03:00
Add Exmap, a Linux-specific tool to examine process memory usage.
svn path=/nixpkgs/trunk/; revision=12857
This commit is contained in:
parent
c9d9cfe6d4
commit
474ea2b7ee
56
pkgs/os-specific/linux/exmap/default.nix
Normal file
56
pkgs/os-specific/linux/exmap/default.nix
Normal file
@ -0,0 +1,56 @@
|
||||
{ fetchurl, stdenv, kernel, pkgconfig, gtkmm, boost, pcre }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "exmap-0.10";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.berthels.co.uk/exmap/download/${name}.tgz";
|
||||
sha256 = "0z00dhl6bdmaz7p9wlvnj0izf0zlrlkv34fz449kxyislpzzxmgn";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
substituteInPlace "kernel/Makefile" \
|
||||
--replace '/lib/modules/$(shell uname -r)/build' \
|
||||
${kernel}/lib/modules/*/build
|
||||
|
||||
# The `proc_root' variable (the root of `/proc') is no longer exported
|
||||
# since 2.6.26. Fortunately, one can pass `NULL' instead of `&proc_root'.
|
||||
# See http://lkml.org/lkml/2008/3/30/57 .
|
||||
substituteInPlace "kernel/exmap.c" \
|
||||
--replace "&proc_root" "NULL"
|
||||
|
||||
substituteInPlace "src/Makefile" --replace "-Werror" ""
|
||||
'';
|
||||
|
||||
buildInputs = [ kernel pkgconfig gtkmm boost pcre ];
|
||||
|
||||
buildPhase = "make build";
|
||||
|
||||
# XXX: The tests can only be run one the `exmap' module is loaded.
|
||||
doCheck = false;
|
||||
#checkPhase = "make test"
|
||||
|
||||
installPhase = ''
|
||||
ensureDir "$out/share/${name}"
|
||||
cp kernel/*.ko "$out/share/${name}"
|
||||
|
||||
ensureDir "$out/bin"
|
||||
cp src/{gexmap,exmtool,elftool,showproc} "$out/bin"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Exmap, a tool showing the physical memory usage of processes";
|
||||
|
||||
longDescription = ''
|
||||
Exmap is a utility which takes a snapshot of how the physical
|
||||
memory and swap space are currently used by all the processes on
|
||||
your system. It examines which page of memory are shared between
|
||||
which processes, so that it can share the cost of the pages
|
||||
fairly when calculating usage totals.
|
||||
'';
|
||||
|
||||
homepage = http://www.berthels.co.uk/exmap/;
|
||||
|
||||
license = "GPLv2+";
|
||||
};
|
||||
}
|
@ -5229,6 +5229,11 @@ let
|
||||
inherit fetchurl stdenv kernel;
|
||||
};
|
||||
|
||||
exmap = import ../os-specific/linux/exmap {
|
||||
inherit fetchurl stdenv kernel boost pcre pkgconfig;
|
||||
inherit (gtkLibs) gtkmm;
|
||||
};
|
||||
|
||||
iwlwifi = import ../os-specific/linux/iwlwifi {
|
||||
inherit fetchurl stdenv kernel;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user