A fully responsive interface to manage all your favorite software on your HTPC.

Overview

Python 3 port of Hellowlol's HTPC Manager fork

We made this an organization repository to be more independent from single developers. If you want to join the team or contributed to HTPC Manager before, please open an issue (or PR) as we need more hands to polish Python 3 compatibility and keep modules updated with their software backends.

CodeFactor


A python based web application to manage the software on your HTPC. HTPC Manager combines all your favorite software into one slick interface.

Screenshot

Requires Python 3.x (3.5 minimum, most likely) and crapload of Python libs. Just make sure that CherryPy version is < 9.0 (as stated in requirements.txt).

Start with python3 Htpc.py

A virtual environment is strongly encouraged.

[New modules]

  • Sonarr
  • Headphones
  • Samsung TV remote
  • SickRage module
  • Torrent search (BTN, Norbits, KAT, strike, rarbg and PTP)
  • vnStat
  • Mylar

[Modules]

  • Couchpotato
  • Deluge
  • kodi
  • NZBGet
  • Plex
  • qBittorrent
  • SABnzbd
  • nzb search (newznab)
  • Sickbeard
  • squeezebox
  • Stats
  • Transmission
  • uTorrent

[Improvements]

  • Pretty much every module has been improved in some way or another
  • NZBGet module (rewritten)
  • qBittorrent module (rewritten)
  • Transmission (add url, upload local torrent)
  • Deluge (add url/magnet, pause/remove, set limit)
  • SABnzbd (drag & drop to edit queue, pause for x min, purge history)
  • Stats module (Hardware info, S.M.A.R.T report, execute scripts)
  • CouchPotato (Suggestions and moar..)
  • Plex (Filter, search, fix duplicated, images, play to device and more)
  • KODI/XBMC addons tab, where you can search/execute/enable/disable addons and a volume slider instead of a progress bar
  • Send a nzb from NZB search to NZBGet in addition to SABnzbd.
  • Usenet (Multi search indexers, support nzedb and spotweb in addition to newznab)

[Misc]

  • Notification if a update is available and autoupdate
  • Htpc manager is now fluid. (Looks much better on high res screens)
  • Delete cache folder from the settings page
  • The brave and bold can choose which branch they want to use.
  • Added a option for robots.txt for bot crawlers
  • Make ssl cert and key automatically if you don't add a path for it
  • Mask sensitive stuff from the log (username, api key, password etc)
  • Reduced size on static files
  • Docker support
  • Various fixes
  • Download log
  • Added argsparse (to support python 2.6)
  • And a shit load of other stuff i dont remember

If you're missing something don't be afraid to make a request :)

SO YOU FOUND A BUG? GREAT!

Before you open a new issue, make sure you:

  • Check if this issue has been solved before
  • Are using the master2 branch (all other branches should be considered experimental)
  • Update to the lastest version
  • Have restart HTPC Manager

If you still have problems: INCLUDE THIS IN YOUR ISSUE

  • Screenshot of the about page
  • What did you do?
  • What happened?
  • What did you expect to happen?
  • If it's a visual bug, screenshot or it didn't happen!
  • Which browser, including version
  • Add your ENTIRE log (with loglevel debug!), please write the line number where the error occured, NO logs == NO help

How to enable detailed logs

  1. Shutdown HTPC Manager
  2. Start Htpc.py --loglevel debug (Do NOT start with --dev)
  3. Start HTPC Manager and wait for error to occur again/reproduce it

Installation

See the wiki

Comments
  • CherryPy version

    CherryPy version

    Currently we set the CherryPy<9.0 via requirements.txt but I'm actually not keen to keep it on an over 4 years old version forever.

    @gmiranda You mentioned that it performs better, and I see the HTTP engine indeed changed with v9.0: https://github.com/cherrypy/cherrypy/blob/main/CHANGES.rst#v900 However, I tested the newest v18.6.1 (after removing the obsolete and conflicting config to disable timeout monitoring) and it works very well here, no performance drop recognisable. Can you check if you if it's still slower and how I can replicate?

    question component:webserver 
    opened by MichaIng 8
  • pySMART lacks Python 3.8 compatibility

    pySMART lacks Python 3.8 compatibility

    When having pySMART installed from PyPI (via pip), server start fails with the following error message:

    Aug 25 19:38:01 VM-Bullseye python3[3322]: Traceback (most recent call last):
    Aug 25 19:38:01 VM-Bullseye python3[3322]:   File "/mnt/dietpi_userdata/htpc-manager/Htpc.py", line 269, in <module>
    Aug 25 19:38:01 VM-Bullseye python3[3322]:     main()
    Aug 25 19:38:01 VM-Bullseye python3[3322]:   File "/mnt/dietpi_userdata/htpc-manager/Htpc.py", line 266, in main
    Aug 25 19:38:01 VM-Bullseye python3[3322]:     start()
    Aug 25 19:38:01 VM-Bullseye python3[3322]:   File "/mnt/dietpi_userdata/htpc-manager/htpc/server.py", line 191, in start
    Aug 25 19:38:01 VM-Bullseye python3[3322]:     logger.info("Starting up webserver")
    Aug 25 19:38:01 VM-Bullseye python3[3322]:   File "/usr/lib/python3.8/logging/__init__.py", line 1434, in info
    Aug 25 19:38:01 VM-Bullseye python3[3322]:     self._log(INFO, msg, args, **kwargs)
    Aug 25 19:38:01 VM-Bullseye python3[3322]:   File "/usr/lib/python3.8/logging/__init__.py", line 1565, in _log
    Aug 25 19:38:01 VM-Bullseye python3[3322]:     fn, lno, func, sinfo = self.findCaller(stack_info, stacklevel)
    Aug 25 19:38:01 VM-Bullseye python3[3322]: TypeError: findCaller() takes from 1 to 2 positional arguments but 3 were given
    

    The reason is that pySMART overrides the findCaller function in a way that is not Python 3.8 compatible. There is an upstream fix available: https://github.com/freenas/py-SMART/commit/c5d6aabc80854ef27d9a7e4c4b2828478db5bf9d But it has not yet been uploaded to the PyPI repository: https://pypi.org/project/pySMART/

    external bug module:stats 
    opened by MichaIng 8
  • TypeError: Unicode-objects must be encoded before hashing

    TypeError: Unicode-objects must be encoded before hashing

    • [ ] Branch master2

    • [ ] Commit hash a37460bda9ce89fde5c40f8fd0c442a4b216716e

    • [ ] Operating system Lubuntu 18.04

    • [ ] Python version 3.6.9

    • [ ] What you did? Just run as a non-root user, with a configured kodi server and the recent episodes slideshow enabled in the main page.

    • [ ] What happened? TypeError: Unicode-objects must be encoded before hashing 2020-09-01 17:29:54 :: cherrypy.error.140383936514984 :: ERROR :: [01/Sep/2020:17:29:54] HTTP Traceback (most recent call last): File "/home/hefe/HTPC-Manager/venv/lib/python3.6/site-packages/cherrypy/_cprequest.py", line 670, in respond response.body = self.handler() File "/home/hefe/HTPC-Manager/venv/lib/python3.6/site-packages/cherrypy/lib/encoding.py", line 220, in __call__ self.body = self.oldhandler(*args, **kwargs) File "/home/hefe/HTPC-Manager/venv/lib/python3.6/site-packages/cherrypy/_cpdispatch.py", line 60, in __call__ return self.callable(*self.args, **self.kwargs) File "/home/hefe/HTPC-Manager/modules/kodi.py", line 326, in GetThumb return get_image(url, h, w, o, mode, self.auth()) File "/home/hefe/HTPC-Manager/htpc/helpers.py", line 67, in get_image imghash = hashlib.md5(url).hexdigest() TypeError: Unicode-objects must be encoded before hashing

    • [ ] What you expected?

    • [ ] How can we reproduce your issue?

    • [ ] What are your (relevant) settings?

    • [ ] Include a link to your FULL (not just a few lines!) log file that has the error. Please use Gist or Pastebin.

    Close your issue when it's solved! If you found the solution yourself please comment so that others benefit from it.

    Link to log:

    bug module:kodi module:couchpotato 
    opened by gmiranda 5
  • Add Watcher3 module

    Add Watcher3 module

    @scambra I found your fork which support for Watcher3 movie NZB & Torrent searcher and snatcher. Do you still use HTPC Manager and would you mind to contribute this to our new Python 3 orga fork?

    Probably some minor changes to the existing code are required to make it compatible with Python 3, but otherwise it looks good.

    new module 
    opened by MichaIng 4
  • AttributeError: module 'psutil_windows' has no attribute 'proc_name'

    AttributeError: module 'psutil_windows' has no attribute 'proc_name'

    Reporting Issues:

    Use proper markdown syntax to structure your post (i.e. code/log in code blocks).

    Make sure you provide the following information below:

    • [ ] HTP-MANAGER

    • [ ] master

    • [ ] bee309ba7d435a354a833b7181813fe5b671703f

    • [ ] Windows 10

    • [ ] 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)]

    • [ ] Enable psutil

    • [ ] nothing showing yet an error has appeared in the log

    • [ ] show the process of my machine

    • [ ] unsure

    • [ ] What are your (relevant) settings?

    • [ ] FULL log (not just a few lines!) that has the error.

    Expand log
    2022-09-26 22:00:12 :: root :: INFO :: Welcome to the Python 3 port of Hellowlol's HTPC Manager fork
    2022-09-26 22:00:12 :: root :: INFO :: Loglevel set to info
    2022-09-26 22:00:12 :: htpc.updater :: INFO :: Using GitUpdater engine
    2022-09-26 22:00:12 :: apscheduler.scheduler :: INFO :: Added job "Updater.update_needed" to job store "default"
    2022-09-26 22:00:12 :: modules.kodi :: WARNING :: No configured kodi-Servers.
    2022-09-26 22:00:12 :: modules.newznab :: WARNING :: No configured Indexers.
    2022-09-26 22:02:04 :: root :: INFO :: Welcome to the Python 3 port of Hellowlol's HTPC Manager fork
    2022-09-26 22:02:04 :: root :: INFO :: Loglevel set to info
    2022-09-26 22:02:04 :: htpc.updater :: INFO :: Using GitUpdater engine
    2022-09-26 22:02:04 :: apscheduler.scheduler :: INFO :: Added job "Updater.update_needed" to job store "default"
    2022-09-26 22:02:04 :: modules.kodi :: WARNING :: No configured kodi-Servers.
    2022-09-26 22:02:04 :: modules.newznab :: WARNING :: No configured Indexers.
    2022-09-27 16:10:26 :: root :: INFO :: Welcome to the Python 3 port of Hellowlol's HTPC Manager fork
    2022-09-27 16:10:26 :: root :: INFO :: Loglevel set to info
    2022-09-27 16:10:26 :: htpc.updater :: INFO :: Using GitUpdater engine
    2022-09-27 16:10:26 :: apscheduler.scheduler :: INFO :: Added job "Updater.update_needed" to job store "default"
    2022-09-27 16:10:26 :: modules.kodi :: WARNING :: No configured kodi-Servers.
    2022-09-27 16:10:26 :: modules.newznab :: WARNING :: No configured Indexers.
    2022-09-27 16:10:27 :: htpc.server :: INFO :: Starting up webserver
    2022-09-27 16:10:27 :: cherrypy.error :: INFO :: [27/Sep/2022:16:10:27] ENGINE Listening for SIGTERM.
    2022-09-27 16:10:27 :: cherrypy.error :: INFO :: [27/Sep/2022:16:10:27] ENGINE Bus STARTING
    2022-09-27 16:10:27 :: cherrypy.error :: INFO :: [27/Sep/2022:16:10:27] ENGINE Set handler for console events.
    2022-09-27 16:10:28 :: cherrypy.error :: INFO :: [27/Sep/2022:16:10:28] ENGINE Serving on http://0.0.0.0:8085
    2022-09-27 16:10:28 :: cherrypy.error :: INFO :: [27/Sep/2022:16:10:28] ENGINE Bus STARTED
    2022-09-27 16:10:54 :: modules.plex :: INFO :: Sending discovery message: M-SEARCH * HTTP/1.0
    2022-09-27 16:10:54 :: modules.plex :: ERROR :: Unable to get players
    2022-09-27 16:11:17 :: modules.plex :: INFO :: Sending discovery message: M-SEARCH * HTTP/1.0
    2022-09-27 16:11:17 :: modules.plex :: ERROR :: Unable to get players
    2022-09-27 16:11:21 :: cherrypy.error.1417175344856 :: ERROR :: [27/Sep/2022:16:11:21] HTTP 
    Traceback (most recent call last):
      File "C:\Python37\lib\site-packages\cherrypy\_cprequest.py", line 638, in respond
        self._do_respond(path_info)
      File "C:\Python37\lib\site-packages\cherrypy\_cprequest.py", line 697, in _do_respond
        response.body = self.handler()
      File "C:\Python37\lib\site-packages\cherrypy\lib\encoding.py", line 219, in __call__
        self.body = self.oldhandler(*args, **kwargs)
      File "C:\Python37\lib\site-packages\cherrypy\lib\jsontools.py", line 59, in json_handler
        value = cherrypy.serving.request._json_inner_handler(*args, **kwargs)
      File "C:\Python37\lib\site-packages\cherrypy\_cpdispatch.py", line 54, in __call__
        return self.callable(*self.args, **self.kwargs)
      File "C:\HTPC-Manager3\modules\stats.py", line 288, in processes
        p.dict['name'] = psutil._psplatform.cext.proc_name(p.pid)
    AttributeError: module 'psutil_windows' has no attribute 'proc_name'
    

    I have all the required packages installed. could you please help me understand how to resolve this issue. the original Hellow HTPC manager works fine.

    many thanks

    bug module:stats Windows 
    opened by phairplay 3
  • Kodi thumbnails not loading properly

    Kodi thumbnails not loading properly

    Reporting Issues:

    To ensure that a I has enough information to work with please include all of the following information.

    Use proper markdown syntax to structure your post (i.e. code/log in code blocks).

    Make sure you provide the following information below:

    • [ ] Version: current

    • [ ] Branch: master2

    • [ ] Commit hash: 15ec6d9271473a41f2cf932711d28a227c0cef31

    • [ ] Operating system: Ubuntu 22.04.1

    • [ ] Python version: 3.10.4 (main, Jun 29 2022, 12:14:53) [GCC 11.2.0]

    • [ ] What you did?: Add Kodi blocks for Latest Movies/Latest Episodes/Latest Albums to Dashboard

    • [ ] What happened?: Thumbnails for relevant movies/episodes/albums did not load

    • [ ] What you expected?: Thumbnails should pull from designated Kodi instances

    • [ ] How can we reproduce your issue?: Add at least 1 Kodi server, then enable Latest Movies/Latest Episodes/Latest Albums to show on Dashboard. Confirm that thumbnails do not load successfully.

    • [ ] What are your (relevant) settings?: Kodi servers added and connection tested successfully from within HTPC-Manager

    • [ ] FULL log (not just a few lines!) that has the error.

    Expand log
    Aug 15 07:04:41 htpc python3[5554]: 2022-08-15 13:04:41 :: cherrypy.error.140297692887648 :: ERROR :: [15/Aug/2022:13:04:41] HTTP
    Aug 15 07:04:41 htpc python3[5554]: Traceback (most recent call last):
    Aug 15 07:04:41 htpc python3[5554]:   File "/usr/lib/python3/dist-packages/cherrypy/_cprequest.py", line 638, in respond
    Aug 15 07:04:41 htpc python3[5554]:     self._do_respond(path_info)
    Aug 15 07:04:41 htpc python3[5554]:   File "/usr/lib/python3/dist-packages/cherrypy/_cprequest.py", line 697, in _do_respond
    Aug 15 07:04:41 htpc python3[5554]:     response.body = self.handler()
    Aug 15 07:04:41 htpc python3[5554]:   File "/usr/lib/python3/dist-packages/cherrypy/lib/encoding.py", line 223, in __call__
    Aug 15 07:04:41 htpc python3[5554]:     self.body = self.oldhandler(*args, **kwargs)
    Aug 15 07:04:41 htpc python3[5554]:   File "/usr/lib/python3/dist-packages/cherrypy/_cpdispatch.py", line 54, in __call__
    Aug 15 07:04:41 htpc python3[5554]:     return self.callable(*self.args, **self.kwargs)
    Aug 15 07:04:41 htpc python3[5554]:   File "/opt/htpc-manager/modules/kodi.py", line 326, in GetThumb
    Aug 15 07:04:41 htpc python3[5554]:     return get_image(url, h, w, o, mode, self.auth())
    Aug 15 07:04:41 htpc python3[5554]:   File "/opt/htpc-manager/modules/kodi.py", line 888, in auth
    Aug 15 07:04:41 htpc python3[5554]:     return base64.encodestring('%s:%s' % (self.current.username, self.current.password)).strip('\n')
    Aug 15 07:04:41 htpc python3[5554]: AttributeError: module 'base64' has no attribute 'encodestring'
    

    After looking into the issue, it seems that in python3 there is indeed no attribute of base64 called encodestring(), so the existing solution in kodi.py will need to be changed in order for this functionality to return:

        def auth(self):
            """ Generate a base64 HTTP auth string based on settings """
            if self.current.username and self.current.password:
                return base64.encodestring('%s:%s' % (self.current.username, self.current.password)).strip('\n')
    

    I was able to correct the issue on my own by adding an import line and modifying the function in kodi.py:

    from urllib.parse import urlencode
    

    ...

        def auth(self):
            """ Generate a base64 HTTP auth string based on settings """
            if self.current.username and self.current.password:
                dummy_param = 'bla'
                key_url_encoded = urlencode({dummy_param: self.current.username})[len(dummy_param) + 1:]
                secret_url_encoded = urlencode({dummy_param: self.current.password})[len(dummy_param) + 1:]
                credentials = '{}:{}'.format(key_url_encoded, secret_url_encoded)
                bytes_base64_encoded_credentials = base64.encodebytes(credentials.encode('utf-8'))
                return bytes_base64_encoded_credentials.decode('utf-8').replace('\n', '')
    

    I'm not too familiar with Python however and am not confident enough in the solution I ripped nearly directly from a StackOverflow answer that I feel comfortable creating a pull request for this change, as I am almost entirely certain this is not the best solution and/or could be done much more cleanly or simply by someone more capable. This does, however, produce the result I want which is that the thumbnails for movies/episodes/albums now show appropriately in the little widget on my Dashboard.

    bug 
    opened by lordairivis 3
  • Reviewing stale branches

    Reviewing stale branches

    Little review cleanup makes sense:

    • https://github.com/HTPC-Manager/HTPC-Manager/tree/cardigan: The project is basically dead, so I suggest to remove the branch. When it is resurrected, the branch can be restored from base branches.
    • Kodi/VLC web player: https://github.com/HTPC-Manager/HTPC-Manager/compare/master2...HTPC-Manager:video_stream_temp Much effort has gone into this one. As it's more than 6 years old, I just fear that used technologies are outdated, APIs changed etc. Would be interesting to test, but I think, if wanted, it is less work to start from scratch, using modern Kodi and/or VLC API, HTML5 etc, ignoring old browser support etc.
    • Fixes from the old master branch have been applied to master2 already, so that one can be removed.

    So in short, I suggest to remove those three branches so that we have master2 only. An idea would be to create some sorts of dev branch, where we collect smaller commits for a while and release them after another review/testing on a regular basis, so that users don't see an update on every little change and e.g. the Docker container build server is not overloaded with rebuilds for a single little commit only 😄: https://github.com/linuxserver/docker-htpcmanager Currently I aim to merge multiple PRs at once, when some more accumulated and having them open for review and testing for a while, so a salve of multiple commits work a little like a release 🙂.

    question 
    opened by MichaIng 3
  • AttributeError: module 'os' has no attribute 'getuid'

    AttributeError: module 'os' has no attribute 'getuid'

    Reporting Issues:

    hi can you please help. ive installed all the required packages, yet i get the below error when running htpc.py could you please help

    • [ ] Lastest

    • [ ] master2

    • [ ] Commit hash

    • [ ] Windows

    • [ ] Python version 3.7

    • [ ] the program to start

    • [ ] the program to start

    • [ ] What you expected?

    • [ ] How can we reproduce your issue?

    • [ ] What are your (relevant) settings?

    • [ ] FULL log (not just a few lines!) that has the error.

    Expand log
    Paste your full log here
    
    C:\HTPC-Manager3>python3 htpc.py
    2022-09-26 22:02:04 :: root :: INFO :: Welcome to the Python 3 port of Hellowlol's HTPC Manager fork
    2022-09-26 22:02:04 :: root :: INFO :: Loglevel set to info
    2022-09-26 22:02:04 :: htpc.updater :: INFO :: Using GitUpdater engine
    2022-09-26 22:02:04 :: apscheduler.scheduler :: INFO :: Added job "Updater.update_needed" to job store "default"
    2022-09-26 22:02:04 :: modules.kodi :: WARNING :: No configured kodi-Servers.
    2022-09-26 22:02:04 :: modules.newznab :: WARNING :: No configured Indexers.
    Traceback (most recent call last):
      File "C:\HTPC-Manager3\modules\stats.py", line 26, in admin
        is_admin = os.getuid() == 0
    AttributeError: module 'os' has no attribute 'getuid'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "htpc.py", line 254, in <module>
        main()
      File "htpc.py", line 245, in main
        load_modules()
      File "htpc.py", line 82, in load_modules
        from modules.stats import Stats
      File "C:\HTPC-Manager3\modules\stats.py", line 65, in <module>
        if admin() is False:
      File "C:\HTPC-Manager3\modules\stats.py", line 28, in admin
        is_admin = ctypes.windll.shell32.IsUserAnAdmin() != 0
    NameError: name 'ctypes' is not defined
    

    Close your issue when it's solved! If you found the solution yourself please comment so that others benefit from it.

    bug module:stats 
    opened by phairplay 2
  • Remove CherryPy version requirement

    Remove CherryPy version requirement

    cheroot v8.6.0 has been released, used in CherryPy v9.0 and above, which has the high idle CPU load resolved: https://github.com/cherrypy/cheroot/pull/401

    Since this was the reason for using a CherryPy<9.0 version dependency, this is hereby removed.

    enhancement component:webserver 
    opened by MichaIng 2
  • Add workerpool to requirements

    Add workerpool to requirements

    This allows to drop the static files from our /libs directory. The version/code matches 100%, as workerpool has never been updated since it was added to HTPC-Manager.

    enhancement 
    opened by MichaIng 2
  • Error using Python 3.9.2

    Error using Python 3.9.2

    Reporting Issues:

    • [ ] Branch Master 2
    • [ ] Operating system Debian 11
    • [ ] Python version 3.9.2

    Using the following command to install it python3 -m venv venv source venv/bin/activate cd venv/bin git clone https://github.com/HTPC-Manager/HTPC-Manager.git cd HTPC-Manager/ pip3 install pip --upgrade pip3 install --no-cache-dir wheel colorama xmltodict ssdp mako cherrypy sqlobject requests requests_futures jsonrpclib apscheduler

    • [ ] FULL log (not just a few lines!) that has the error.
    Expand log
    Paste your full log here
    

    Starting HTPC Manager on port 8085. Start your browser and go to http://localhost:8085


    Traceback (most recent call last): File "/root/htpc/venv/bin/HTPC-Manager/./Htpc.py", line 268, in main() File "/root/htpc/venv/bin/HTPC-Manager/./Htpc.py", line 265, in main start() File "/root/htpc/venv/bin/HTPC-Manager/htpc/server.py", line 195, in start cherrypy.config.update({ File "/root/htpc/venv/lib/python3.9/site-packages/cherrypy/_cpconfig.py", line 157, in update super(Config, self).update(config) File "/root/htpc/venv/lib/python3.9/site-packages/cherrypy/lib/reprconf.py", line 130, in update self._apply(Parser.load(config)) File "/root/htpc/venv/lib/python3.9/site-packages/cherrypy/_cpconfig.py", line 167, in _apply super(Config, self)._apply(config) File "/root/htpc/venv/lib/python3.9/site-packages/cherrypy/lib/reprconf.py", line 142, in _apply self.namespaces(config) File "/root/htpc/venv/lib/python3.9/site-packages/cherrypy/lib/reprconf.py", line 92, in call handler(k, v) File "/root/htpc/venv/lib/python3.9/site-packages/cherrypy/_cpconfig.py", line 270, in _engine_namespace_handler plugin = getattr(engine, plugin) AttributeError: 'Bus' object has no attribute 'timeout_monitor'

    Close your issue when it's solved! If you found the solution yourself please comment so that others benefit from it.

    opened by Almazick 2
  • Radarr API url needs updating

    Radarr API url needs updating

    Running on commit 15ec6d9271473a41f2cf932711d28a227c0cef31 (grafted, HEAD -> master2, origin/master2, origin/HEAD) Using the lscr.io/linuxserver/htpcmanager docker image

    Expand log
    2022-03-31 10:33:39 :: root :: INFO :: Welcome to the Python 3 port of Hellowlol's HTPC Manager fork
    2022-03-31 10:33:39 :: root :: INFO :: Loglevel set to info
    2022-03-31 10:33:39 :: htpc.updater :: INFO :: Using GitUpdater engine
    2022-03-31 10:33:39 :: apscheduler.scheduler :: INFO :: Added job "Updater.update_needed" to job store "default"
    2022-03-31 10:33:39 :: modules.kodi :: WARNING :: No configured kodi-Servers.
    2022-03-31 10:33:39 :: modules.newznab :: WARNING :: No configured Indexers.
    2022-03-31 10:33:39 :: modules.stats :: ERROR :: Could not import psutil see <a href="https://github.com/giampaolo/psutil/blob/master/INSTALL.rst">install guide</a>.
    2022-03-31 10:33:39 :: modules.stats :: ERROR :: No module named 'pySMART'
    2022-03-31 10:33:39 :: htpc.server :: INFO :: Starting up webserver
    2022-03-31 10:33:39 :: cherrypy.error :: INFO :: [31/Mar/2022:10:33:39] ENGINE Listening for SIGTERM.
    2022-03-31 10:33:39 :: cherrypy.error :: INFO :: [31/Mar/2022:10:33:39] ENGINE Listening for SIGHUP.
    2022-03-31 10:33:39 :: cherrypy.error :: INFO :: [31/Mar/2022:10:33:39] ENGINE Listening for SIGUSR1.
    2022-03-31 10:33:39 :: cherrypy.error :: INFO :: [31/Mar/2022:10:33:39] ENGINE Bus STARTING
    2022-03-31 10:33:40 :: cherrypy.error :: INFO :: [31/Mar/2022:10:33:40] ENGINE Serving on http://0.0.0.0:8085
    2022-03-31 10:33:40 :: cherrypy.error :: INFO :: [31/Mar/2022:10:33:40] ENGINE Bus STARTED
    2022-03-31 10:33:43 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/profile path=profile error Expecting value: line 1 column 1 (char 0)
    2022-03-31 10:33:43 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/profile path=profile error Expecting value: line 1 column 1 (char 0)
    2022-03-31 10:33:44 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/Rootfolder path=Rootfolder error Expecting value: line 1 column 1 (char 0)
    2022-03-31 10:33:44 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/History?page=1&pageSize=100&sortKey=date&sortDir=desc path=History?page=1&pageSize=100&sortKey=date&sortDir=desc error Expecting value: line 1 column 1 (char 0)
    2022-03-31 10:33:44 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/Movie path=Movie error Expecting value: line 1 column 1 (char 0)
    2022-03-31 10:33:44 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/health path=health error Expecting value: line 1 column 1 (char 0)
    2022-03-31 10:33:44 :: modules.radarr :: ERROR :: Failed to fetch url=http://192.168.1.10:7878/api/queue path=queue error Expecting value: line 1 column 1 (char 0)
    

    Per https://radarr.video/docs/api/ it looks as though the api url changed from api to api/v3

    bug 
    opened by mrplow 2
  • Fix for Medusa

    Fix for Medusa

    I had these changes in my computer, I don't remember exactly why I need them to get it working with medusa, or whether they will work with SickRage or other forks

    Is it ok, or some changes would be needed to get it working with every supported fork?

    bug 
    opened by scambra 2
  • Kodi>VLC video streaming player

    Kodi>VLC video streaming player

    I opened the draft to allow resolving conflicts and having a closer look into this. Also this way users/contributors are made more aware that this attempt exists and, who finds time, may pick up the work.

    The chardet could or should be pulled via pip instead: https://pypi.org/project/chardet/ Same with MediaElement: https://www.mediaelementjs.com/

    Just to ping you here @wmariz as this is your work. I guess you don't use HTPC Manager anymore or have other reasons for not having finished it. Any input or information they may help others to do so, however, would be highly welcome 🙂.

    module:kodi new feature 
    opened by MichaIng 0
  • Switch to modern method for self-signed cert generation

    Switch to modern method for self-signed cert generation

    pyOpenSSL discourages itself for that task. Also at least SAN is missing to every allow browser accepting that certificate: https://pypi.org/project/pyOpenSSL/ Strange that in 9/10 guide search results that exact method is still used.

    Better go with cryptography: https://gist.github.com/bloodearnest/9017111a313777b9cce5 Official docs: https://cryptography.io/en/latest/x509/tutorial/#creating-a-self-signed-certificate

    • Here is the function, called when SSL is enabled but no certificate/key found: https://github.com/HTPC-Manager/HTPC-Manager/blob/master2/htpc/helpers.py#L323
    • It imports functions from this library: https://github.com/HTPC-Manager/HTPC-Manager/blob/master2/libs/certgen.py
    • Both are basically 13 years old examples from pyOpenSSL: https://github.com/msabramo/pyOpenSSL/blob/master/examples/mk_simple_certs.py, https://github.com/msabramo/pyOpenSSL/blob/master/examples/certgen.py
    enhancement good first issue 
    opened by MichaIng 0
Owner
null
🎥 Stream your favorite movie from the terminal!

Stream-Cli stream-cli is a Python scrapping CLI that combine scrapy and webtorrent in one command for streaming movies from your terminal. Installatio

R E D O N E 379 Dec 24, 2022
🎥 Stream your favorite movie from the terminal!

Stream-Cli stream-cli is a Python scrapping CLI that combine scrapy and webtorrent in one command for streaming movies from your terminal. Installatio

R E D O N E 340 May 25, 2022
Software com interface gráfica para criar postagens anônimas no Telegra.ph do Telegram e compartilhar onde quiser...

Software com interface gráfica para criar postagens anônimas no Telegra.ph do Telegram e compartilhar onde quiser...

Elizeu Barbosa Abreu 4 Feb 5, 2022
szrose is an all in one group management bot made for managing your group effectively with some advance security tools & Suit For All Your Needs ❤️

szrose is an all in one group management bot made for managing your group effectively with some advance security tools & Suit For All Your Needs ❤️

szsupunma 93 Jan 7, 2023
Library to manage your own custom RPC on your desktop

Info I don't recommend novices setting this up yourself. It requires Redis, a server to host the API on, and a bit of understanding of Windows & Pytho

Isaac K 1 Apr 16, 2022
❤️ Hi There Im EzilaX ❤️ A next gen powerful telegram group manager bot 😱 for manage your groups and have fun with other cool modules Made By Sadew Jayasekara 🔥

❤️ EzilaX v1 ❤️ Unmaintained. The new repo of @EzilaXBot is Public. (It is no longer based on this source code. The completely rewritten bot available

Sadew Jayasekara 18 Nov 24, 2021
A Telegram Bot to manage your music channel with some cool features.

Music Channel Manager V2 A Telegram Bot to manage your music channel with some cool features like appending your predefined username to the musics tag

null 11 Oct 21, 2022
❤️A next gen powerful telegram group manager bot for manage your groups and have fun with other cool modules

Natsuki Based on Python Telegram Bot Contributors Video Tutorial: Complete guide on deploying @TheNatsukiBot's clone on Heroku. ☆ Video by Sadew Jayas

Pawan Theekshana 8 Oct 6, 2022
Amanda-A next gen powerful telegram group manager bot for manage your groups and have fun with other cool modules.

Amanda-A next gen powerful telegram group manager bot for manage your groups and have fun with other cool modules.

Team Amanda 4 Oct 21, 2022
A discord bot written in discord.py to manage custom roles assigned to boosters of your server.

BBotty A discord bot written in discord.py to manage custom roles assigned to boosters of your server. v0.0.1-alpha released! This version is incomple

Oui002 1 Nov 27, 2021
Senexia - A powerful telegram bot to manage your groups as effectively as possible

⚡ Kenechi bot ⚡ A Powerful, Smart And Simple Group Manager ... Written with AioG

Akhi 2 Jan 11, 2022
Elon Muschioso is a Telegram bot that you can use to manage your computer from the phone.

elon Elon Muschioso is a Telegram bot that you can use to manage your computer from the phone. what does it do? Elon Muschio makes a connection from y

null 4 Feb 28, 2022
💻 A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline!

LocalStack - A fully functional local AWS cloud stack LocalStack provides an easy-to-use test/mocking framework for developing Cloud applications. Cur

LocalStack 45.3k Jan 2, 2023
A python script fetches all your starred repositories from your GitHub account and clones them to your server so you will never lose important resources

A python script fetches all your starred repositories from your GitHub account and clones them to your server so you will never lose important resources

Ringo Hoffmann 27 Oct 1, 2022
One version package to rule them all, One version package to find them, One version package to bring them all, and in the darkness bind them.

AwesomeVersion One version package to rule them all, One version package to find them, One version package to bring them all, and in the darkness bind

Joakim Sørensen 39 Dec 31, 2022
AWSXenos will list all the trust relationships in all the IAM roles and S3 buckets

AWS External Account Scanner Xenos, is Greek for stranger. AWSXenos will list all the trust relationships in all the IAM roles, and S3 buckets, in an

AirWalk 57 Nov 7, 2022
Python3 program to control Elgato Ring Light on your local network without Elgato's Control Center software

Elgato Light Controller I'm really happy with my Elgato Key Light from an illumination perspective. However, their control software has been glitchy f

Jeff Tarr 14 Nov 16, 2022
IMDbPY is a Python package useful to retrieve and manage the data of the IMDb movie database about movies, people, characters and companies

IMDbPY is a Python package for retrieving and managing the data of the IMDb movie database about movies, people and companies. Revamp notice Starting

Davide Alberani 1.1k Jan 2, 2023