{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, setuptools, }: buildPythonPackage { pname = "inotify"; version = "unstable-2020-08-27"; pyproject = true; src = fetchFromGitHub { owner = "dsoprea"; repo = "PyInotify"; rev = "f77596ae965e47124f38d7bd6587365924dcd8f7"; hash = "sha256-X0gu4s1R/Kg+tmf6s8SdZBab2HisJl4FxfdwKktubVc="; }; postPatch = '' # Needed because assertEquals was removed in python 3.12 substituteInPlace tests/test_inotify.py \ --replace-fail "assertEquals" "assertEqual" \ ''; build-system = [ setuptools ]; nativeCheckInputs = [ pytestCheckHook ]; # Disable these tests as they're flaky. # The returned list can be in a different order, which causes the tests to fail. disabledTests = [ "test__automatic_new_watches_on_new_paths" "test__cycle" "test__renames" ]; meta = { homepage = "https://github.com/dsoprea/PyInotify"; description = "Monitor filesystems events on Linux platforms with inotify"; license = lib.licenses.gpl2; platforms = lib.platforms.linux; }; }