{ lib, buildPythonPackage, fetchFromGitHub, fixtures, pytestCheckHook, pythonOlder, requests, requests-mock, rich, setuptools, urllib3, writableTmpDirAsHomeHook, }: buildPythonPackage rec { pname = "podman"; version = "5.6.0"; pyproject = true; disabled = pythonOlder "3.11"; src = fetchFromGitHub { owner = "containers"; repo = "podman-py"; tag = "v${version}"; hash = "sha256-VlPhW0FL51EQQRlDrd0F3ByXu/xpydXLSCM5umzpIW0="; }; build-system = [ setuptools ]; dependencies = [ requests urllib3 ]; optional-dependencies = { progress_bar = [ rich ]; }; nativeCheckInputs = [ fixtures pytestCheckHook requests-mock writableTmpDirAsHomeHook ]; pythonImportsCheck = [ "podman" ]; disabledTests = [ # Integration tests require a running container setup "AdapterIntegrationTest" "ContainersIntegrationTest" "ContainersExecIntegrationTests" "ImagesIntegrationTest" "ManifestsIntegrationTest" "NetworksIntegrationTest" "PodsIntegrationTest" "SecretsIntegrationTest" "SystemIntegrationTest" "VolumesIntegrationTest" ]; disabledTestPaths = [ # Access to the host's filesystem "podman/tests/integration/test_container_create.py" "podman/tests/unit/test_utils.py" ]; meta = with lib; { description = "Python bindings for Podman's RESTful API"; homepage = "https://github.com/containers/podman-py"; changelog = "https://github.com/containers/podman-py/releases/tag/${src.tag}"; license = licenses.asl20; maintainers = with maintainers; [ fab ]; }; }