about summary refs log tree commit diff
path: root/pkgs/development/python-modules
diff options
context:
space:
mode:
authorDaniel Schaefer <git@danielschaefer.me>2019-04-19 18:44:36 +0200
committerDaniel Schaefer <git@danielschaefer.me>2019-04-19 18:47:04 +0200
commit64476e879b949764052b1ae1096aee1e259ca78b (patch)
tree9536973deea4683731756f98dcd9632fc658ce10 /pkgs/development/python-modules
parent2b4bc3769c51278f8b3c3d19149ba2a09cecdb88 (diff)
downloadnixlib-64476e879b949764052b1ae1096aee1e259ca78b.tar
nixlib-64476e879b949764052b1ae1096aee1e259ca78b.tar.gz
nixlib-64476e879b949764052b1ae1096aee1e259ca78b.tar.bz2
nixlib-64476e879b949764052b1ae1096aee1e259ca78b.tar.lz
nixlib-64476e879b949764052b1ae1096aee1e259ca78b.tar.xz
nixlib-64476e879b949764052b1ae1096aee1e259ca78b.tar.zst
nixlib-64476e879b949764052b1ae1096aee1e259ca78b.zip
pythonPackages.moviepy: Add optional deps
Don't include them by default because they increase the derivation size
from ~200M to over 600M.
Diffstat (limited to 'pkgs/development/python-modules')
-rw-r--r--pkgs/development/python-modules/moviepy/default.nix21
1 files changed, 19 insertions, 2 deletions
diff --git a/pkgs/development/python-modules/moviepy/default.nix b/pkgs/development/python-modules/moviepy/default.nix
index 76b5e3c1b359..7171409bec84 100644
--- a/pkgs/development/python-modules/moviepy/default.nix
+++ b/pkgs/development/python-modules/moviepy/default.nix
@@ -10,8 +10,20 @@
 , proglog
 , requests
 , tqdm
+# Advanced image processing (triples size of output)
+, advancedProcessing ? false
+, opencv ? null
+, scikitimage ? null
+, scikitlearn ? null
+, scipy ? null
+, matplotlib ? null
+, youtube-dl ? null
 }:
 
+assert advancedProcessing -> (
+  opencv != null && scikitimage != null && scikitlearn != null
+  && scipy != null && matplotlib != null && youtube-dl != null);
+
 buildPythonPackage rec {
   pname = "moviepy";
   version = "1.0.0";
@@ -23,9 +35,14 @@ buildPythonPackage rec {
     sha256 = "16c7ffca23d90c76dd7b163f648c8166dfd589b7c180b8ff75aa327ae0a2fc6d";
   };
 
-  # No tests
+  # No tests, require network connection
   doCheck = false;
-  propagatedBuildInputs = [ numpy decorator imageio imageio-ffmpeg tqdm requests proglog ];
+
+  propagatedBuildInputs = [
+    numpy decorator imageio imageio-ffmpeg tqdm requests proglog
+  ] ++ (stdenv.lib.optionals advancedProcessing [
+    opencv scikitimage scikitlearn scipy matplotlib youtube-dl
+  ]);
 
   meta = with stdenv.lib; {
     description = "Video editing with Python";