at v206 43 lines 1.2 kB view raw
1{ lib, stdenv, fetchFromGitHub, perl }: 2 3stdenv.mkDerivation { 4 name = "perf-tools-20150723"; 5 6 src = fetchFromGitHub { 7 owner = "brendangregg"; 8 repo = "perf-tools"; 9 rev = "80e25785e16acfbc0f048cae86a69006fa45148d"; 10 sha256 = "13g98vqwy50yf2h0w6iav80kzwfz29mvnjw8akbjv4v36r9hcb69"; 11 }; 12 13 buildInputs = [ perl ]; 14 15 patchPhase = 16 '' 17 for i in execsnoop iolatency iosnoop kernel/funcslower killsnoop opensnoop; do 18 substituteInPlace $i \ 19 --replace /usr/bin/gawk "$(type -p gawk)" \ 20 --replace /usr/bin/mawk /no-such-path \ 21 --replace /usr/bin/getconf "$(type -p getconf)" \ 22 --replace awk=awk "awk=$(type -p gawk)" 23 done 24 25 rm -rf examples deprecated 26 ''; 27 28 installPhase = 29 '' 30 d=$out/libexec/perf-tools 31 mkdir -p $d $out/share 32 cp -prvd . $d/ 33 ln -s $d/bin $out/bin 34 mv $d/man $out/share/ 35 ''; 36 37 meta = { 38 platforms = lib.platforms.linux; 39 homepage = https://github.com/brendangregg/perf-tools; 40 description = "Performance analysis tools based on Linux perf_events (aka perf) and ftrace"; 41 maintainers = [ lib.maintainers.eelco ]; 42 }; 43}