nixpkgs/pkgs/tools/misc/bfscripts/default.nix
2023-05-16 20:51:28 +02:00

64 lines
1.5 KiB
Nix

{ stdenv
, fetchFromGitHub
, lib
, python3
}:
let
# Most of the binaries are not really useful because they have hardcoded
# paths that only make sense when you're running the stock BlueField OS on
# your BlueField. These might be patched in the future with resholve
# (https://github.com/abathur/resholve). If there is one that makes sense
# without resholving it, it can simply be uncommented and will be included in
# the output.
binaries = [
# "bfacpievt"
# "bfbootmgr"
# "bfcfg"
# "bfcpu-freq"
# "bfdracut"
# "bffamily"
# "bfgrubcheck"
# "bfhcafw"
# "bfinst"
# "bfpxe"
# "bfrec"
"bfrshlog"
# "bfsbdump"
# "bfsbkeys"
# "bfsbverify"
# "bfver"
# "bfvcheck"
"mlx-mkbfb"
"bfup"
];
in
stdenv.mkDerivation rec {
pname = "bfscripts";
version = "unstable-2023-05-15";
src = fetchFromGitHub {
owner = "Mellanox";
repo = pname;
rev = "1da79f3ece7cdf99b2571c00e8b14d2e112504a4";
hash = "sha256-pTubrnZKEFmtAj/omycFYeYwrCog39zBDEszoCrsQNQ=";
};
buildInputs = [
python3
];
installPhase = ''
${lib.concatStringsSep "\n" (map (b: "install -D ${b} $out/bin/${b}") binaries)}
'';
meta = with lib;
{
description = "Collection of scripts used for BlueField SoC system management";
homepage = "https://github.com/Mellanox/bfscripts";
license = licenses.bsd2;
platforms = platforms.linux;
maintainers = with maintainers; [ nikstur ];
};
}