flexget: 3.11.31 -> 3.11.33
[NixPkgs.git] / pkgs / applications / networking / flexget / default.nix
blobb2349dff44cfdc11fe6ce06bfbb22b400c8f2dfb
1 { lib
2 , python3
3 , fetchPypi
4 , fetchFromGitHub
5 }:
7 python3.pkgs.buildPythonApplication rec {
8   pname = "flexget";
9   version = "3.11.33";
10   pyproject = true;
12   # Fetch from GitHub in order to use `requirements.in`
13   src = fetchFromGitHub {
14     owner = "Flexget";
15     repo = "Flexget";
16     rev = "refs/tags/v${version}";
17     hash = "sha256-kgTlz3cUztIUKKqmUpUpEwu5qyjE0fCarG/EKJ1PoPc=";
18   };
20   postPatch = ''
21     # remove dependency constraints but keep environment constraints
22     sed 's/[~<>=][^;]*//' -i requirements.txt
23   '';
25   build-system = with python3.pkgs; [
26     setuptools
27     wheel
28   ];
30   dependencies = with python3.pkgs; [
31     # See https://github.com/Flexget/Flexget/blob/master/requirements.txt
32     apscheduler
33     beautifulsoup4
34     click
35     colorama
36     commonmark
37     feedparser
38     guessit
39     html5lib
40     jinja2
41     jsonschema
42     loguru
43     more-itertools
44     packaging
45     pendulum
46     psutil
47     pynzb
48     pyrsistent
49     pyrss2gen
50     python-dateutil
51     pyyaml
52     rebulk
53     requests
54     rich
55     rpyc
56     sqlalchemy
57     typing-extensions
59     # WebUI requirements
60     cherrypy
61     flask-compress
62     flask-cors
63     flask-login
64     flask-restful
65     flask-restx
66     flask
67     pyparsing
68     werkzeug
69     zxcvbn
71     # Plugins requirements
72     transmission-rpc
73   ];
75   pythonImportsCheck = [
76     "flexget"
77     "flexget.plugins.clients.transmission"
78   ];
80   # ~400 failures
81   doCheck = false;
83   meta = with lib; {
84     homepage = "https://flexget.com/";
85     changelog = "https://github.com/Flexget/Flexget/releases/tag/v${version}";
86     description = "Multipurpose automation tool for all of your media";
87     license = licenses.mit;
88     maintainers = with maintainers; [ pbsds ];
89   };