Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib, stdenv, fetchFromGitHub, pkg-config 2, meson 3, ninja 4, libnvme 5, json_c 6, zlib 7, python3Packages 8}: 9 10stdenv.mkDerivation rec { 11 pname = "nvme-cli"; 12 version = "2.4"; 13 14 src = fetchFromGitHub { 15 owner = "linux-nvme"; 16 repo = "nvme-cli"; 17 rev = "v${version}"; 18 hash = "sha256-vnhvVVfEDnmEIdIkfTRoiLB7dZ1rJV3U4PmUUoaxTUs="; 19 }; 20 21 mesonFlags = [ 22 "-Dversion-tag=${version}" 23 ]; 24 25 nativeBuildInputs = [ 26 meson 27 ninja 28 pkg-config 29 python3Packages.nose2 30 ]; 31 buildInputs = [ 32 libnvme 33 json_c 34 zlib 35 ]; 36 37 meta = with lib; { 38 inherit (src.meta) homepage; # https://nvmexpress.org/ 39 description = "NVM-Express user space tooling for Linux"; 40 longDescription = '' 41 NVM-Express is a fast, scalable host controller interface designed to 42 address the needs for not only PCI Express based solid state drives, but 43 also NVMe-oF(over fabrics). 44 This nvme program is a user space utility to provide standards compliant 45 tooling for NVM-Express drives. It was made specifically for Linux as it 46 relies on the IOCTLs defined by the mainline kernel driver. 47 ''; 48 license = licenses.gpl2Plus; 49 platforms = platforms.linux; 50 maintainers = with maintainers; [ mic92 ]; 51 mainProgram = "nvme"; 52 }; 53}