diff --git a/pkgs/tools/security/pwgen-secure/default.nix b/pkgs/tools/security/pwgen-secure/default.nix new file mode 100644 index 000000000000..c3141676b370 --- /dev/null +++ b/pkgs/tools/security/pwgen-secure/default.nix @@ -0,0 +1,36 @@ +{ lib, python3Packages, fetchFromGitHub }: + +with python3Packages; + +buildPythonApplication rec { + pname = "pwgen-secure"; + version = "0.9.1"; + + # it needs `secrets` which was introduced in 3.6 + disabled = pythonOlder "3.6"; + + # GH is newer than Pypi and contains both library *and* the actual program + # whereas Pypi only has the library + src = fetchFromGitHub { + owner = "mjmunger"; + repo = "pwgen_secure"; + rev = "v${version}"; + sha256 = "15md5606hzy1xfhj2lxmc0nvynyrcs4vxa5jdi34kfm31rdklj28"; + }; + + propagatedBuildInputs = [ docopt ]; + + postInstall = '' + install -Dm755 spwgen.py $out/bin/spwgen + ''; + + # there are no checks + doCheck = false; + + meta = with lib; { + description = "Secure password generation library to replace pwgen"; + homepage = "https://github.com/mjmunger/pwgen_secure/"; + license = licenses.mit; + maintainers = with maintainers; [ peterhoeg ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 89fc4364ffb4..2d2072175ae2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5523,6 +5523,8 @@ in pwgen = callPackage ../tools/security/pwgen { }; + pwgen-secure = callPackage ../tools/security/pwgen-secure { }; + pwnat = callPackage ../tools/networking/pwnat { }; pwndbg = python3Packages.callPackage ../development/tools/misc/pwndbg { };