diff options
Diffstat (limited to 'nixpkgs/pkgs/development/python-modules/moviepy')
-rw-r--r-- | nixpkgs/pkgs/development/python-modules/moviepy/default.nix | 106 |
1 files changed, 70 insertions, 36 deletions
diff --git a/nixpkgs/pkgs/development/python-modules/moviepy/default.nix b/nixpkgs/pkgs/development/python-modules/moviepy/default.nix index 65f35e85a0f1..01b6a7086ab8 100644 --- a/nixpkgs/pkgs/development/python-modules/moviepy/default.nix +++ b/nixpkgs/pkgs/development/python-modules/moviepy/default.nix @@ -1,62 +1,96 @@ -{ lib -, buildPythonPackage -, fetchPypi -, pythonOlder -, numpy -, decorator -, imageio -, imageio-ffmpeg -, proglog -, requests -, tqdm - # Advanced image processing (triples size of output) -, advancedProcessing ? false -, scikit-image -, scikit-learn -, scipy -, matplotlib -, youtube-dl +{ + lib, + buildPythonPackage, + decorator, + fetchFromGitHub, + imageio, + imageio-ffmpeg, + matplotlib, + numpy, + proglog, + pytestCheckHook, + pythonOlder, + requests, + scikit-image, + scikit-learn, + scipy, + setuptools, + tqdm, + youtube-dl, }: buildPythonPackage rec { pname = "moviepy"; version = "1.0.3"; - format = "setuptools"; + pyproject = true; - disabled = pythonOlder "3.5"; + disabled = pythonOlder "3.7"; - src = fetchPypi { - inherit pname version; - sha256 = "2884e35d1788077db3ff89e763c5ba7bfddbd7ae9108c9bc809e7ba58fa433f5"; + src = fetchFromGitHub { + owner = "Zulko"; + repo = "moviepy"; + rev = "refs/tags/v${version}"; + hash = "sha256-l7AwzAKSaEV+pPbltKgwllK6X54oruU2w0AvoCsrESE="; }; postPatch = '' substituteInPlace setup.py \ - --replace "decorator>=4.0.2,<5.0" "decorator>=4.0.2,<6.0" + --replace-fail "decorator>=4.0.2,<5.0" "decorator>=4.0.2,<6.0" ''; - # No tests, require network connection - doCheck = false; + build-system = [ setuptools ]; - propagatedBuildInputs = [ - numpy + dependencies = [ decorator imageio imageio-ffmpeg - tqdm - requests + numpy proglog - ] ++ lib.optionals advancedProcessing [ - scikit-image - scikit-learn - scipy - matplotlib - youtube-dl + requests + tqdm + ]; + + passthru.optional-dependencies = { + optionals = [ + matplotlib + scikit-image + scikit-learn + scipy + youtube-dl + ]; + }; + + nativeCheckInputs = [ + pytestCheckHook + ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); + + pythonImportsCheck = [ "moviepy" ]; + + disabledTests = [ + "test_cuts1" + "test_issue" + "test_PR" + "test_setup" + "test_subtitles" + "test_sys_write_flush" + ]; + + disabledTestPaths = [ + "tests/test_compositing.py" + "tests/test_fx.py" + "tests/test_ImageSequenceClip.py" + "tests/test_resourcerelease.py" + "tests/test_resourcereleasedemo.py" + "tests/test_TextClip.py" + "tests/test_VideoClip.py" + "tests/test_Videos.py" + "tests/test_videotools.py" ]; meta = with lib; { description = "Video editing with Python"; homepage = "https://zulko.github.io/moviepy/"; + changelog = "https://github.com/Zulko/moviepy/blob/v${version}/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ ]; }; |