31 buildPythonPackage rec {
36 src = fetchFromGitHub {
37 owner = "Farama-Foundation";
38 repo = "Arcade-Learning-Environment";
39 rev = "refs/tags/v${version}";
40 hash = "sha256-MDMCYnyLZYbQXwyr5VuPeVEop825nD++yQ7hhsW4BX8=";
60 ] ++ lib.optionals (pythonOlder "3.10") [ importlib-metadata ];
63 # Relax the pybind11 version
65 substituteInPlace src/ale/python/CMakeLists.txt \
66 --replace-fail 'find_package(pybind11 ''${PYBIND11_VER} QUIET)' 'find_package(pybind11 QUIET)'
69 dontUseCmakeConfigure = true;
71 pythonImportsCheck = [ "ale_py" ];
78 # test_atari_env.py::test_check_env fails on the majority of the environments because the ROM are missing.
79 # The user is expected to manually download the roms:
80 # https://github.com/Farama-Foundation/Arcade-Learning-Environment/blob/v0.9.0/docs/faq.md#i-downloaded-ale-and-i-installed-it-successfully-but-i-cannot-find-any-rom-file-at-roms-do-i-have-to-get-them-somewhere-else
81 disabledTests = [ "test_check_env" ];
84 description = "Simple framework that allows researchers and hobbyists to develop AI agents for Atari 2600 games";
85 mainProgram = "ale-import-roms";
86 homepage = "https://github.com/mgbellemare/Arcade-Learning-Environment";
87 changelog = "https://github.com/Farama-Foundation/Arcade-Learning-Environment/releases/tag/v${version}";
88 license = lib.licenses.gpl2;
89 maintainers = with lib.maintainers; [ billhuang ];
90 broken = stdenv.hostPlatform.isDarwin; # fails to link with missing library