8 python = if (builtins.tryEval python3.pkgs.nose.outPath).success
13 python.pkgs.buildPythonApplication rec {
18 # Fetch from GitHub in order to use `requirements.in`
19 src = fetchFromGitHub {
22 rev = "refs/tags/v${version}";
23 hash = "sha256-ZSqkD53fdDnKulVPgM9NWXVFXDR0sZ94mRyV1iKS87o=";
27 # remove dependency constraints but keep environment constraints
28 sed 's/[~<>=][^;]*//' -i requirements.txt
31 build-system = with python.pkgs; [
36 dependencies = with python.pkgs; [
37 # See https://github.com/Flexget/Flexget/blob/master/pyproject.toml
71 # Plugins requirements
79 pythonImportsCheck = [
81 "flexget.api.core.authentication"
82 "flexget.api.core.database"
83 "flexget.api.core.plugins"
84 "flexget.api.core.schema"
85 "flexget.api.core.server"
86 "flexget.api.core.tasks"
87 "flexget.api.core.user"
88 "flexget.components.thetvdb.api"
89 "flexget.components.tmdb.api"
90 "flexget.components.trakt.api"
91 "flexget.components.tvmaze.api"
92 "flexget.plugins.clients.aria2"
93 "flexget.plugins.clients.deluge"
94 "flexget.plugins.clients.nzbget"
95 "flexget.plugins.clients.pyload"
96 "flexget.plugins.clients.qbittorrent"
97 "flexget.plugins.clients.rtorrent"
98 "flexget.plugins.clients.transmission"
99 "flexget.plugins.services.kodi_library"
100 "flexget.plugins.services.myepisodes"
101 "flexget.plugins.services.pogcal_acquired"
108 homepage = "https://flexget.com/";
109 changelog = "https://github.com/Flexget/Flexget/releases/tag/v${version}";
110 description = "Multipurpose automation tool for all of your media";
111 license = licenses.mit;
112 maintainers = with maintainers; [ pbsds ];