diff options
Diffstat (limited to 'makefu/2configs/sickbeard')
-rw-r--r-- | makefu/2configs/sickbeard/cheetah3.nix | 25 | ||||
-rw-r--r-- | makefu/2configs/sickbeard/debug.patch | 91 | ||||
-rw-r--r-- | makefu/2configs/sickbeard/sickgear.nix | 16 |
3 files changed, 126 insertions, 6 deletions
diff --git a/makefu/2configs/sickbeard/cheetah3.nix b/makefu/2configs/sickbeard/cheetah3.nix new file mode 100644 index 000000000..df928edd6 --- /dev/null +++ b/makefu/2configs/sickbeard/cheetah3.nix @@ -0,0 +1,25 @@ +{ lib +, buildPythonPackage +, fetchPypi +}: + +buildPythonPackage rec { + pname = "cheetah3"; + version = "3.2.4"; + + + src = fetchPypi { + pname = "Cheetah3"; + inherit version; + sha256 = "caabb9c22961a3413ac85cd1e5525ec9ca80daeba6555f4f60802b6c256e252b"; + }; + + doCheck = false; + + meta = with lib; { + description = "Cheetah is a template engine and code generation tool"; + homepage = https://cheetahtemplate.org/; + license = licenses.mit; + # maintainers = [ maintainers. ]; + }; +} diff --git a/makefu/2configs/sickbeard/debug.patch b/makefu/2configs/sickbeard/debug.patch new file mode 100644 index 000000000..aa22142c8 --- /dev/null +++ b/makefu/2configs/sickbeard/debug.patch @@ -0,0 +1,91 @@ +diff --git a/SickBeard.py b/SickBeard.py +index 31cfd1e1..10a4ef5e 100755 +--- a/SickBeard.py ++++ b/SickBeard.py +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python2 ++#!/usr/bin/env python3 + # + # This file is part of SickGear. + # +diff --git a/sickbeard/providers/generic.py b/sickbeard/providers/generic.py +index 5c1f7bfe..8999b468 100644 +--- a/sickbeard/providers/generic.py ++++ b/sickbeard/providers/generic.py +@@ -1203,6 +1203,7 @@ class GenericProvider(object): + ep_num = None + if 1 == len(ep_obj_results): + ep_num = ep_obj_results[0].episode ++ logger.log(f'{ep_obj_results[0]}',logger.DEBUG) + logger.log(u'Single episode result.', logger.DEBUG) + elif 1 < len(ep_obj_results): + ep_num = MULTI_EP_RESULT +diff --git a/sickbeard/providers/horriblesubs.py b/sickbeard/providers/horriblesubs.py +index 870e8461..dbdeacc8 100644 +--- a/sickbeard/providers/horriblesubs.py ++++ b/sickbeard/providers/horriblesubs.py +@@ -98,6 +98,7 @@ class HorribleSubsProvider(generic.TorrentProvider): + + results = self._sort_seeding(mode, results + items[mode]) + ++ logger.log(f"{results}",logger.DEBUG) + return results + + def _season_strings(self, *args, **kwargs): +@@ -131,6 +132,7 @@ class HorribleSubsProvider(generic.TorrentProvider): + .find_all('a', href=re.compile('(?i)(torrent$|^magnet:)'))))[0] + except (BaseException, Exception): + pass ++ logger.log(f"{result}",logger.DEBUG) + return result + + +diff --git a/sickbeard/search.py b/sickbeard/search.py +index f4957c3a..dd3a352d 100644 +--- a/sickbeard/search.py ++++ b/sickbeard/search.py +@@ -986,22 +986,26 @@ def search_providers( + + best_result = pick_best_result(found_results[provider_id][cur_search_result], show_obj, quality_list, + filter_rls=orig_thread_name) +- ++ logger.log(f"Best result: {best_result}",logger.DEBUG) + # if all results were rejected move on to the next episode + if not best_result: + continue +- ++ + # filter out possible bad torrents from providers + if 'torrent' == best_result.resultType: ++ logger.log(f"Best result is torrent {best_result.url}",logger.DEBUG) + if not best_result.url.startswith('magnet') and None is not best_result.get_data_func: + best_result.url = best_result.get_data_func(best_result.url) + best_result.get_data_func = None # consume only once + if not best_result.url: + continue + if best_result.url.startswith('magnet'): ++ logger.log("url is magnet link",logger.DEBUG) + if 'blackhole' != sickbeard.TORRENT_METHOD: ++ logger.log(f"Setting content to None because TORRENT_METHODD is not blackhole ({sickbeard.TORRENT_METHOD} instead)",logger.DEBUG) + best_result.content = None + else: ++ logger.log("url is torrent link",logger.DEBUG) + cache_file = ek.ek(os.path.join, sickbeard.CACHE_DIR or helpers.get_system_temp_dir(), + '%s.torrent' % (helpers.sanitize_filename(best_result.name))) + if not helpers.download_file(best_result.url, cache_file, session=best_result.provider.session): +@@ -1044,6 +1048,7 @@ def search_providers( + best_result.after_get_data_func(best_result) + best_result.after_get_data_func = None # consume only once + ++ logger.log(f"After torrent detection",logger.DEBUG) + # add result if its not a duplicate + found = False + for i, result in enumerate(final_results): +@@ -1054,6 +1059,7 @@ def search_providers( + else: + found = True + if not found: ++ logger.log(f"Not already found, adding to best_result to final_results",logger.DEBUG) + final_results += [best_result] + + # check that we got all the episodes we wanted first before doing a match and snatch diff --git a/makefu/2configs/sickbeard/sickgear.nix b/makefu/2configs/sickbeard/sickgear.nix index 1b7a57e8b..281ec1845 100644 --- a/makefu/2configs/sickbeard/sickgear.nix +++ b/makefu/2configs/sickbeard/sickgear.nix @@ -1,16 +1,19 @@ -{ stdenv, fetchFromGitHub, python2, makeWrapper }: +{ stdenv, fetchFromGitHub, python3, makeWrapper }: let - pythonEnv = python2.withPackages(ps: with ps; [ cheetah ]); + pythonEnv = python3.withPackages(ps: with ps; [ + (python3.pkgs.callPackage ./cheetah3.nix {}) + ]); in stdenv.mkDerivation rec { pname = "sickgear"; - version = "0.20.0"; + #version = "0.21.6"; + version = "0.21.7"; src = fetchFromGitHub { owner = "SickGear"; repo = "SickGear"; - rev = "release_${version}"; - sha256 = "1zg95szvfbmwinx1z5nlbmyck7ximvyna0x71yflmadkgf88nv0k"; + rev = "hotfix/${version}"; + sha256 = "0kj8l6xq7vycr6d15lxybnk02b39z0zk4jzy0b2lbapgk0kx3ims"; }; dontBuild = true; @@ -18,12 +21,13 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper ]; buildInputs = [ pythonEnv ]; + patches = [ ./debug.patch ]; installPhase = '' mkdir -p $out/bin cp -R {autoProcessTV,gui,lib,sickbeard,sickgear.py,SickBeard.py} $out/ - makeWrapper $out/SickBeard.py $out/bin/sickgear + makeWrapper $out/sickgear.py $out/bin/sickgear ''; meta = with stdenv.lib; { |