diff --git a/pkgs/development/python-modules/lib50/default.nix b/pkgs/development/python-modules/lib50/default.nix new file mode 100644 index 000000000000..4dedfc40b05b --- /dev/null +++ b/pkgs/development/python-modules/lib50/default.nix @@ -0,0 +1,60 @@ +{ + lib, + buildPythonPackage, + fetchPypi, + setuptools, + attrs, + pexpect, + pyyaml, + requests, + termcolor, + jellyfish, + cryptography, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "lib50"; + version = "3.0.12"; + pyproject = true; + + # latest GitHub release is several years old. Pypi is up to date. + src = fetchPypi { + pname = "lib50"; + inherit version; + hash = "sha256-Fc4Hb1AbSeetK3gH1/dRCUfHGDlMzfzgF1cnK3Se01U="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + attrs + pexpect + pyyaml + requests + termcolor + jellyfish + cryptography + ]; + + pythonRelaxDeps = [ + "attrs" + "pyyaml" + "termcolor" + "jellyfish" + ]; + + pythonImportsCheck = [ "lib50" ]; + + # latest GitHub release is several years old and doesn't include + # tests and neither does pypi version include tests + doCheck = false; + + meta = { + description = "CS50's own internal library used in many of its tools"; + homepage = "https://github.com/cs50/lib50"; + license = lib.licenses.gpl3Only; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ ethancedwards8 ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7517bfd26122..62d1ca5855c2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7791,6 +7791,8 @@ self: super: with self; { lib4vex = callPackage ../development/python-modules/lib4vex { }; + lib50 = callPackage ../development/python-modules/lib50 { }; + libagent = callPackage ../development/python-modules/libagent { }; libais = callPackage ../development/python-modules/libais { };