fluffychat: 1.22.1 -> 1.23.0 (#364091)
[NixPkgs.git] / pkgs / by-name / fi / fio / package.nix
blobf6bb6cf6ef9bc025d2254d034055230b985b96a9
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   makeWrapper,
6   libaio,
7   python3,
8   zlib,
9   withGnuplot ? false,
10   gnuplot ? null,
13 stdenv.mkDerivation rec {
14   pname = "fio";
15   version = "3.38";
17   src = fetchFromGitHub {
18     owner = "axboe";
19     repo = "fio";
20     rev = "fio-${version}";
21     sha256 = "sha256-hjU6be1+x4YsY9hztqSD5zIxojs6qRZH7GwEkxPwdus=";
22   };
24   buildInputs = [
25     python3
26     zlib
27   ] ++ lib.optional (!stdenv.hostPlatform.isDarwin) libaio;
29   # ./configure does not support autoconf-style --build=/--host=.
30   # We use $CC instead.
31   configurePlatforms = [ ];
33   nativeBuildInputs = [
34     makeWrapper
35     python3.pkgs.wrapPython
36   ];
38   strictDeps = true;
40   enableParallelBuilding = true;
42   postPatch = ''
43     substituteInPlace Makefile \
44       --replace "mandir = /usr/share/man" "mandir = \$(prefix)/man" \
45       --replace "sharedir = /usr/share/fio" "sharedir = \$(prefix)/share/fio"
46     substituteInPlace tools/plot/fio2gnuplot --replace /usr/share/fio $out/share/fio
47   '';
49   pythonPath = [ python3.pkgs.six ];
51   makeWrapperArgs = lib.optionals withGnuplot [
52     "--prefix PATH : ${lib.makeBinPath [ gnuplot ]}"
53   ];
55   postInstall = ''
56     wrapPythonProgramsIn "$out/bin" "$out $pythonPath"
57   '';
59   meta = with lib; {
60     description = "Flexible IO Tester - an IO benchmark tool";
61     homepage = "https://git.kernel.dk/cgit/fio/";
62     license = licenses.gpl2Plus;
63     platforms = platforms.unix;
64   };