stylelint: 16.9.0 -> 16.11.0 (#360524)
[NixPkgs.git] / pkgs / by-name / rs / rshim-user-space / package.nix
blob75ff19f1bc36fbf5bb11cdf96c7104d444485eab
1 { stdenv
2 , lib
3 , fetchFromGitHub
4 , autoconf
5 , automake
6 , makeBinaryWrapper
7 , pkg-config
8 , pciutils
9 , libusb1
10 , fuse
11 , busybox
12 , pv
13 , withBfbInstall ? true
16 stdenv.mkDerivation rec {
17   pname = "rshim-user-space";
18   version = "2.1.5";
20   src = fetchFromGitHub {
21     owner = "Mellanox";
22     repo = pname;
23     rev = "rshim-${version}";
24     hash = "sha256-moU6XxBVSAZiiR/usFfxse2CHk6+003Jb9t62szk1fk=";
25   };
27   nativeBuildInputs = [
28     autoconf
29     automake
30     pkg-config
31   ] ++ lib.optionals withBfbInstall [ makeBinaryWrapper ];
33   buildInputs = [
34     pciutils
35     libusb1
36     fuse
37   ];
39   prePatch = ''
40     patchShebangs scripts/bfb-install
41   '';
43   strictDeps = true;
45   preConfigure = "./bootstrap.sh";
47   installPhase = ''
48     mkdir -p "$out"/bin
49     cp -a src/rshim "$out"/bin/
50   '' + lib.optionalString withBfbInstall ''
51     cp -a scripts/bfb-install "$out"/bin/
52   '';
54   postFixup = lib.optionalString withBfbInstall ''
55     wrapProgram $out/bin/bfb-install \
56       --set PATH ${lib.makeBinPath [ busybox pv ]}
57   '';
59   meta = with lib; {
60     description = "user-space rshim driver for the BlueField SoC";
61     longDescription = ''
62       The rshim driver provides a way to access the rshim resources on the
63       BlueField target from external host machine. The current version
64       implements device files for boot image push and virtual console access.
65       It also creates virtual network interface to connect to the BlueField
66       target and provides a way to access the internal rshim registers.
67     '';
68     homepage = "https://github.com/Mellanox/rshim-user-space";
69     license = licenses.gpl2Only;
70     platforms = platforms.linux;
71     maintainers = with maintainers; [ nikstur ];
72   };