15 stdenv.mkDerivation rec {
18 libVersion = "0.0.12";
20 src = fetchFromGitHub {
24 sha256 = "0wbi2nasb1gbci6cq23g6kq7i10rwi1y7r44rl03icr5prqjpdyv";
27 buildInputs = [ glib libvirt json_c ] ++ (optional xenSupport xen);
28 nativeBuildInputs = [ autoreconfHook bison flex pkg-config ];
30 configureFlags = optional (!xenSupport) "--disable-xen";
32 # libvmi uses dlopen() for the xen libraries, however autoPatchelfHook doesn't work here
33 postFixup = optionalString xenSupport ''
34 libvmi="$out/lib/libvmi.so.${libVersion}"
35 oldrpath=$(patchelf --print-rpath "$libvmi")
36 patchelf --set-rpath "$oldrpath:${makeLibraryPath [ xen ]}" "$libvmi"
40 homepage = "https://libvmi.com/";
41 description = "A C library for virtual machine introspection";
43 LibVMI is a C library with Python bindings that makes it easy to monitor the low-level
44 details of a running virtual machine by viewing its memory, trapping on hardware events,
45 and accessing the vCPU registers.
47 license = with licenses; [ gpl3 lgpl3 ];
48 platforms = platforms.linux;
49 maintainers = with maintainers; [ matthiasbeyer ];