1{
2 lib,
3 stdenv,
4 fetchgit,
5 ocamlPackages,
6 autoreconfHook,
7 libxml2,
8 pkg-config,
9 getopt,
10 gettext,
11}:
12
13stdenv.mkDerivation rec {
14 pname = "virt-top";
15 version = "1.1.2";
16
17 src = fetchgit {
18 url = "git://git.annexia.org/virt-top.git";
19 rev = "v${version}";
20 hash = "sha256-C1a47pWtjb38bnwmZ2Zq7/LlW3+BF5BGNMRFi97/ngU=";
21 };
22
23 patches = [
24 ./gettext-0.25.patch
25 ];
26
27 strictDeps = true;
28
29 nativeBuildInputs = [
30 autoreconfHook
31 pkg-config
32 getopt
33 ocamlPackages.ocaml
34 ocamlPackages.findlib
35 ];
36 buildInputs =
37 with ocamlPackages;
38 [
39 ocamlPackages.ocaml
40 calendar
41 curses
42 gettext-stub
43 ocaml_libvirt
44 ]
45 ++ [ libxml2 ];
46
47 postPatch = ''
48 substituteInPlace ocaml-dep.sh.in --replace-fail '#!/bin/bash' '#!${stdenv.shell}'
49 substituteInPlace ocaml-link.sh.in --replace-fail '#!/bin/bash' '#!${stdenv.shell}'
50 substituteInPlace configure.ac --replace-fail 'AC_CONFIG_MACRO_DIR([m4])' 'AC_CONFIG_MACRO_DIRS([m4 ${gettext}/share/gettext/m4])'
51 '';
52
53 meta = {
54 description = "Top-like utility for showing stats of virtualized domains";
55 homepage = "https://people.redhat.com/~rjones/virt-top/";
56 license = lib.licenses.gpl2Only;
57 maintainers = [ ];
58 platforms = lib.platforms.linux;
59 mainProgram = "virt-top";
60 };
61}