diff options
author | Samuel Ainsworth <skainsworth@gmail.com> | 2023-08-29 18:43:30 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-08-29 18:43:30 -0400 |
commit | 0ebafc300822c01e06c2b2d753b7ae8015d99b98 (patch) | |
tree | a7e17df7d32d3688b5cfbbf8ca7e1b862d7ebd47 | |
parent | 147999c8cbd11bd85f46489f3ea12b3ee9841908 (diff) | |
parent | ba48b30bb299b1e58c364bff84d113063b93a4ba (diff) | |
download | nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.tar nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.tar.gz nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.tar.bz2 nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.tar.lz nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.tar.xz nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.tar.zst nixpkgs-0ebafc300822c01e06c2b2d753b7ae8015d99b98.zip |
Merge pull request #250554 from GaetanLepage/gymnasium
python310Packages.gymnasium: 0.29.0 -> 0.29.1
-rw-r--r-- | pkgs/development/python-modules/gymnasium/default.nix | 49 | ||||
-rw-r--r-- | pkgs/development/python-modules/pybox2d/default.nix | 44 | ||||
-rw-r--r-- | pkgs/top-level/python-packages.nix | 2 |
3 files changed, 87 insertions, 8 deletions
diff --git a/pkgs/development/python-modules/gymnasium/default.nix b/pkgs/development/python-modules/gymnasium/default.nix index 9926b3cfe91..6e9e33913fb 100644 --- a/pkgs/development/python-modules/gymnasium/default.nix +++ b/pkgs/development/python-modules/gymnasium/default.nix @@ -10,34 +10,67 @@ , farama-notifications , importlib-metadata , pythonOlder +, ffmpeg +, jax +, jaxlib +, matplotlib +, moviepy +, opencv4 +, pybox2d +, pygame +, pytestCheckHook +, scipy }: buildPythonPackage rec { pname = "gymnasium"; - version = "0.29.0"; + version = "0.29.1"; + format = "pyproject"; src = fetchFromGitHub { owner = "Farama-Foundation"; - repo = pname; + repo = "gymnasium"; rev = "refs/tags/v${version}"; - hash = "sha256-4YaEFEWSOTEdGgO1kSOleZQp7OrcOf+WAT/E0BWeoKI="; + hash = "sha256-L7fn9FaJzXwQhjDKwI9hlFpbPuQdwynU+Xjd8bbjxiw="; }; - format = "pyproject"; - nativeBuildInputs = [ setuptools ]; propagatedBuildInputs = [ - jax-jumpy cloudpickle - numpy + farama-notifications gym-notices + jax-jumpy + numpy typing-extensions - farama-notifications ] ++ lib.optionals (pythonOlder "3.10") [ importlib-metadata ]; pythonImportsCheck = [ "gymnasium" ]; + nativeCheckInputs = [ + ffmpeg + jax + jaxlib + matplotlib + moviepy + opencv4 + pybox2d + pygame + pytestCheckHook + scipy + ]; + + disabledTestPaths = [ + # mujoco is required for those tests but the mujoco python bindings are not packaged in nixpkgs. + "tests/envs/mujoco/test_mujoco_custom_env.py" + + # Those tests need to write on the filesystem which cause them to fail. + "tests/experimental/wrappers/test_record_video.py" + "tests/utils/test_save_video.py" + "tests/wrappers/test_record_video.py" + "tests/wrappers/test_video_recorder.py" + ]; + meta = with lib; { description = "A standard API for reinforcement learning and a diverse set of reference environments (formerly Gym)"; homepage = "https://github.com/Farama-Foundation/Gymnasium"; diff --git a/pkgs/development/python-modules/pybox2d/default.nix b/pkgs/development/python-modules/pybox2d/default.nix new file mode 100644 index 00000000000..c7a8e7d83eb --- /dev/null +++ b/pkgs/development/python-modules/pybox2d/default.nix @@ -0,0 +1,44 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, swig +}: + +buildPythonPackage rec { + pname = "pybox2d"; + version = "2.3.10"; + format = "setuptools"; + + src = fetchFromGitHub { + owner = "pybox2d"; + repo = "pybox2d"; + rev = "refs/tags/${version}"; + hash = "sha256-yjLFvsg8GQLxjN1vtZM9zl+kAmD4+eS/vzRkpj0SCjY="; + }; + + nativeBuildInputs = [ + swig + ]; + + # We need to build the package explicitly a first time so that the library/Box2D/Box2D.py file + # gets generated. + # After that, the default behavior will succeed at installing the package. + preBuild = '' + python setup.py build + ''; + + pythonImportsCheck = [ + "Box2D" + "Box2D._Box2D" + ]; + + # Tests need to start GUI windows. + doCheck = false; + + meta = with lib; { + description = "2D Game Physics for Python"; + homepage = "https://github.com/pybox2d/pybox2d"; + license = licenses.zlib; + maintainers = with maintainers; [ GaetanLepage ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0c261dc3386..f36aeb1e047 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -8794,6 +8794,8 @@ self: super: with self; { pybotvac = callPackage ../development/python-modules/pybotvac { }; + pybox2d = callPackage ../development/python-modules/pybox2d { }; + pybravia = callPackage ../development/python-modules/pybravia { }; pybrowserid = callPackage ../development/python-modules/pybrowserid { }; |