diff --git a/pkgs/by-name/tr/troubadix/package.nix b/pkgs/by-name/tr/troubadix/package.nix new file mode 100644 index 000000000000..2386693e11f2 --- /dev/null +++ b/pkgs/by-name/tr/troubadix/package.nix @@ -0,0 +1,62 @@ +{ + lib, + fetchFromGitHub, + git, + python3, +}: + +python3.pkgs.buildPythonApplication rec { + pname = "troubadix"; + version = "24.4.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "greenbone"; + repo = "troubadix"; + rev = "refs/tags/v${version}"; + hash = "sha256-I/c26dqD7cJ0AtLhJK4XaR5vvud/NsoeXr6/k6+Dezk="; + }; + + pythonRelaxDeps = [ "validators" ]; + + build-system = with python3.pkgs; [ poetry-core ]; + + nativeBuildInputs = with python3.pkgs; [ pythonRelaxDepsHook ]; + + dependencies = with python3.pkgs; [ + chardet + charset-normalizer + pkgs.codespell + gitpython + pontos + python-magic + validators + ]; + + nativeCheckInputs = with python3.pkgs; [ + git + pytestCheckHook + ]; + + preCheck = '' + export HOME=$(mktemp -d) + ''; + + pythonImportsCheck = [ "troubadix" ]; + + disabledTests = [ + # AssertionError + "test_ok" + # TypeError + "testgit" + ]; + + meta = with lib; { + description = "A linting tool for NASL files"; + homepage = "https://github.com/greenbone/troubadix"; + changelog = "https://github.com/greenbone/troubadix/releases/tag/v${version}"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ fab ]; + mainProgram = "troubadix"; + }; +}