diff --git a/pkgs/development/python-modules/enhancements/default.nix b/pkgs/development/python-modules/enhancements/default.nix new file mode 100644 index 00000000000..18fdfd29ce1 --- /dev/null +++ b/pkgs/development/python-modules/enhancements/default.nix @@ -0,0 +1,43 @@ +{ lib +, argcomplete +, buildPythonPackage +, fetchFromGitHub +, pytestCheckHook +, pythonOlder +, typeguard +}: + +buildPythonPackage rec { + pname = "enhancements"; + version = "0.4.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "ssh-mitm"; + repo = "python-enhancements"; + rev = version; + hash = "sha256-Nff44WAQwSbkRpUHb9ANsQWWH2B819gtwQdXAjWJJls="; + }; + + propagatedBuildInputs = [ + argcomplete + typeguard + ]; + + checkInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ + "enhancements" + ]; + + meta = with lib; { + description = "Library which extends various Python classes"; + homepage = "https://enhancements.readthedocs.io"; + license = licenses.lgpl3Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/development/python-modules/ssh-mitm/default.nix b/pkgs/development/python-modules/ssh-mitm/default.nix new file mode 100644 index 00000000000..6973db343f6 --- /dev/null +++ b/pkgs/development/python-modules/ssh-mitm/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pythonOlder +, colored +, enhancements +, packaging +, paramiko +, pytz +, pyyaml +, requests +, rich +, sshpubkeys +, typeguard +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "ssh-mitm"; + version = "2.0.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = pname; + repo = pname; + rev = version; + hash = "sha256-1Vx68ISsT2Vrzy3YBqDqcGEHXHzdKR8jTtBH9SNXT2s="; + }; + + propagatedBuildInputs = [ + colored + enhancements + packaging + paramiko + pytz + pyyaml + requests + rich + sshpubkeys + typeguard + ]; + + # Module has no tests + doCheck = false; + + pythonImportsCheck = [ + "sshmitm" + ]; + + meta = with lib; { + description = "Tool for SSH security audits"; + homepage = "https://github.com/ssh-mitm/ssh-mitm"; + license = licenses.lgpl3Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 51c8bda7aec..07b1c811d6e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2468,6 +2468,8 @@ with pkgs; ssh-key-confirmer = callPackage ../tools/networking/ssh-key-confirmer { }; + ssh-mitm = with python3Packages; toPythonApplication ssh-mitm; + sshchecker = callPackage ../tools/security/sshchecker { }; titaniumenv = callPackage ../development/mobile/titaniumenv { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e25479f91e8..2a95daf3a55 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2679,6 +2679,8 @@ in { enamlx = callPackage ../development/python-modules/enamlx { }; + enhancements = callPackage ../development/python-modules/enhancements { }; + enlighten = callPackage ../development/python-modules/enlighten { }; enocean = callPackage ../development/python-modules/enocean { }; @@ -9885,6 +9887,8 @@ in { sseclient-py = callPackage ../development/python-modules/sseclient-py { }; + ssh-mitm = callPackage ../development/python-modules/ssh-mitm { }; + sshpubkeys = callPackage ../development/python-modules/sshpubkeys { }; sshtunnel = callPackage ../development/python-modules/sshtunnel { };