at v206 1.5 kB view raw
1{stdenv, fetchurl, cmake, luajit, kernel, zlib, ncurses}: 2let 3 inherit (stdenv.lib) optional optionalString; 4 s = rec { 5 baseName="sysdig"; 6 version = "0.1.102"; 7 name="${baseName}-${version}"; 8 url="https://github.com/draios/sysdig/archive/${version}.tar.gz"; 9 sha256 = "0mrz14wvcb8m8idr4iqbr3jmxfs7dlmh06n0q9fcfph75wkc5fp0"; 10 }; 11 buildInputs = [ 12 cmake zlib luajit ncurses 13 ]; 14in 15stdenv.mkDerivation { 16 inherit (s) name version; 17 inherit buildInputs; 18 src = fetchurl { 19 inherit (s) url sha256; 20 }; 21 22 cmakeFlags = [ 23 "-DUSE_BUNDLED_LUAJIT=OFF" 24 "-DUSE_BUNDLED_ZLIB=OFF" 25 "-DUSE_BUNDLED_NCURSES=OFF" 26 ] ++ optional (kernel == null) "-DBUILD_DRIVER=OFF"; 27 preConfigure = '' 28 export INSTALL_MOD_PATH="$out" 29 '' + optionalString (kernel != null) '' 30 export KERNELDIR="${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" 31 ''; 32 postInstall = optionalString (kernel != null) '' 33 make install_driver 34 kernel_dev=${kernel.dev} 35 kernel_dev=''${kernel_dev#/nix/store/} 36 kernel_dev=''${kernel_dev%%-linux*dev*} 37 sed -i "s#$kernel_dev#................................#g" $out/lib/modules/${kernel.modDirVersion}/extra/sysdig-probe.ko 38 ''; 39 40 meta = with stdenv.lib; { 41 inherit (s) version; 42 description = ''A tracepoint-based system tracing tool for Linux (with clients for other OSes)''; 43 license = licenses.gpl2; 44 maintainers = [maintainers.raskin]; 45 platforms = platforms.linux ++ platforms.darwin; 46 downloadPage = "https://github.com/draios/sysdig/releases"; 47 }; 48}