nixpkgs/pkgs/by-name/fl/flent/package.nix
2024-12-06 09:40:24 -05:00

56 lines
1.2 KiB
Nix

{
lib,
python3Packages,
fetchPypi,
procps,
qt5,
nix-update-script,
}:
python3Packages.buildPythonApplication rec {
pname = "flent";
version = "2.2.0";
src = fetchPypi {
inherit pname version;
hash = "sha256-BPwh3oWIY1YEI+ecgi9AUiX4Ka/Y5dYikwmfvvNB+eg=";
};
build-system = [ python3Packages.sphinx ];
nativeBuildInputs = [ qt5.wrapQtAppsHook ];
dependencies = with python3Packages; [
matplotlib
pyqt5
qtpy
];
nativeCheckInputs = [ python3Packages.unittestCheckHook ];
preCheck = ''
# we want the gui tests to always run
sed -i 's|self.skip|pass; #&|' unittests/test_gui.py
# Dummy qt setup for gui tests
export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
export QT_QPA_PLATFORM=offscreen
'';
preFixup = ''
makeWrapperArgs+=(
"''${qtWrapperArgs[@]}"
--prefix PATH : ${lib.makeBinPath [ procps ]}
)
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "FLExible Network Tester";
homepage = "https://flent.org";
license = lib.licenses.gpl3;
maintainers = with lib.maintainers; [ mmlb ];
mainProgram = "flent";
badPlatforms = lib.platforms.darwin;
};
}