about summary refs log tree commit diff
path: root/pkgs/applications/networking/flexget/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/networking/flexget/default.nix')
-rw-r--r--pkgs/applications/networking/flexget/default.nix56
1 files changed, 39 insertions, 17 deletions
diff --git a/pkgs/applications/networking/flexget/default.nix b/pkgs/applications/networking/flexget/default.nix
index f7dd96183070..64afbdac1b94 100644
--- a/pkgs/applications/networking/flexget/default.nix
+++ b/pkgs/applications/networking/flexget/default.nix
@@ -1,31 +1,53 @@
 { lib
-, pythonPackages
-, fetchurl
+, fetchFromGitHub
+, python
 , transmission
 , deluge
 , config
 }:
 
-with pythonPackages;
+with python.pkgs;
 
-buildPythonPackage rec {
-  version = "1.2.337";
+buildPythonApplication rec {
+  version = "2.10.40";
   name = "FlexGet-${version}";
-  disabled = isPy3k;
 
-  src = fetchurl {
-    url = "mirror://pypi/F/FlexGet/${name}.tar.gz";
-    sha256 = "0f7aaf0bf37860f0c5adfb0ba59ca228aa3f5c582131445623a4c3bc82d45346";
+  src = fetchFromGitHub {
+    owner = "Flexget";
+    repo = "Flexget";
+    rev = version;
+    sha256 = "0hh21yv1lvdfi198snwjabfsdh04fnpjszpgg28wvg5pd1qq8lqv";
   };
 
-  doCheck = false;
+  doCheck = true;
+  # test_regexp requires that HOME exist, test_filesystem requires a
+  # unicode-capable filesystem (and setting LC_ALL doesn't work).
+  # setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
+  postPatch = ''
+    sed -i '/def test_non_ascii/i\    import pytest\
+        @pytest.mark.skip' flexget/tests/test_filesystem.py
 
-  buildInputs = [ nose ];
+    substituteInPlace requirements.txt --replace "guessit<=2.0.4" "guessit"
+  '';
+
+  # Disable 3 failing tests caused by guessit upgrade
+  # https://github.com/Flexget/Flexget/issues/1804
+  checkPhase = ''
+    export HOME=.
+    py.test --disable-pytest-warnings -k "not test_date_options and not test_ep_as_quality and not testFromGroup"
+  '';
+
+  buildInputs = [ pytest mock vcrpy pytest-catchlog boto3 ];
   propagatedBuildInputs = [
-    paver feedparser sqlalchemy pyyaml rpyc
-    beautifulsoup_4_1_3 html5lib_0_9999999 pyrss2gen pynzb progressbar jinja2 flask
-    cherrypy requests dateutil_2_1 jsonschema python_tvrage tmdb3
-    guessit pathpy apscheduler ]
+    feedparser sqlalchemy pyyaml
+    beautifulsoup4 html5lib PyRSS2Gen pynzb
+    rpyc jinja2 requests2 dateutil jsonschema
+    pathpy guessit APScheduler
+    terminaltables colorclass
+    cherrypy flask flask-restful flask-restplus_0_8
+    flask-compress flask_login flask-cors
+    pyparsing safe future zxcvbn-python ]
+  ++ lib.optional (pythonOlder "3.4") pathlib
   # enable deluge and transmission plugin support, if they're installed
   ++ lib.optional (config.deluge or false) deluge
   ++ lib.optional (transmission != null) transmissionrpc;
@@ -34,6 +56,6 @@ buildPythonPackage rec {
     homepage = http://flexget.com/;
     description = "Multipurpose automation tool for content like torrents";
     license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ domenkozar ];
+    maintainers = with lib.maintainers; [ domenkozar tari ];
   };
-}
\ No newline at end of file
+}