1{ stdenv, fetchFromGitHub, ncurses }:
2
3stdenv.mkDerivation rec {
4 name = "pagemon-${version}";
5 version = "0.01.12";
6
7 src = fetchFromGitHub {
8 sha256 = "0bddn22daf33dbghwfjxxgsn4gmr5knr6h9sbqhs7g7p85dla6wa";
9 rev = "V${version}";
10 repo = "pagemon";
11 owner = "ColinIanKing";
12 };
13
14 buildInputs = [ ncurses ];
15
16 makeFlags = [
17 "BINDIR=$(out)/bin"
18 "MANDIR=$(out)/share/man/man8"
19 ];
20
21 meta = with stdenv.lib; {
22 inherit (src.meta) homepage;
23 description = "Interactive memory/page monitor for Linux";
24 longDescription = ''
25 pagemon is an ncurses based interactive memory/page monitoring tool
26 allowing one to browse the memory map of an active running process
27 on Linux.
28 pagemon reads the PTEs of a given process and display the soft/dirty
29 activity in real time. The tool identifies the type of memory mapping
30 a page belongs to, so one can easily scan through memory looking at
31 pages of memory belonging data, code, heap, stack, anonymous mappings
32 or even swapped-out pages.
33 '';
34 license = licenses.gpl2Plus;
35 platforms = platforms.linux;
36 };
37}