linuxserver / docker-deluge

GNU General Public License v3.0
241 stars 88 forks source link

[BUG] eggs cannot be installed. #197

Open TrueOsiris opened 4 months ago

TrueOsiris commented 4 months ago

Is there an existing issue for this?

Current Behavior

When trying to add any egg / plugin or trying to enable the ones that ought to be built-in, I get this in my container log
Also, the default plugin list is empty, while this version should already contain a list of plugins that can be enabled.

I'm starting this with an unaltered config, running on unraid linux, using docker compose. folder rights seem to be fine on the config folder.

media-deluge-1  | 00:42:09 [ERROR   ][deluge.ui.web.json_api     :1622] Error calling method `web.upload_plugin`: 'NoneType' object has no attribute 'call'
media-deluge-1  | 00:42:09 [ERROR   ][deluge.ui.web.json_api     :1622] 'NoneType' object has no attribute 'call'
media-deluge-1  | Traceback (most recent call last):
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/web/json_api.py", line 157, in _handle_request
media-deluge-1  |     result = self._exec_local(method, params, request)
media-deluge-1  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/web/json_api.py", line 119, in _exec_local
media-deluge-1  |     return meth(*params)
media-deluge-1  |            ^^^^^^^^^^^^^
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/web/json_api.py", line 950, in upload_plugin
media-deluge-1  |     d = client.core.upload_plugin(filename, plugin_data)
media-deluge-1  |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/client.py", line 548, in __call__
media-deluge-1  |     return self.daemon.call(self.base, *args, **kwargs)
media-deluge-1  |            ^^^^^^^^^^^^^^^^
media-deluge-1  | AttributeError: 'NoneType' object has no attribute 'call'

Expected Behavior

I should be able to install eggs / plugins without python errors in the docker log.

Steps To Reproduce

see other descriptions. I'm running the container through docker compose and I'm trying to add a plugin via the webUI.

Environment

- OS: unraid 6.12.6
Linux Ra 6.1.64-Unraid #1 SMP PREEMPT_DYNAMIC Wed Nov 29 12:48:16 PST 2023 x86_64 Intel(R) Atom(TM) CPU  C2750  @ 2.41GHz GenuineIntel GNU/Linux

- How docker service was installed: native
Docker version 20.10.24, build 297e128
Docker Compose version v2.21.0

CPU architecture

x86-64

Docker creation

x-volume-downloads:      
  &downloads
  type: 'bind'
  source: /mnt/user/downloads
  target: /downloads

services:
  deluge:
    image: lscr.io/linuxserver/deluge:latest
    labels:
      net.unraid.docker.icon: "https://timmer.ninja/images/ico/deluge.png"           
    environment:
      - PUID=1000
      - PGID=100
      - TZ=Etc/UTC
      - DELUGE_LOGLEVEL=error #optional
    volumes:
      - /mnt/user/docker_volumes/media/deluge/config:/config
      - <<: *downloads
    ports:
      - 8112:8112
      - 6881:6881
      - 6881:6881/udp
      - 58846:58846 #optional
    restart: unless-stopped
    network_mode: bridge  
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8112"]
      interval: 30s 
      timeout: 10s 
      retries: 5

Container logs

media-deluge-1  | [migrations] started
media-deluge-1  | [migrations] no migrations found
media-deluge-1  | ───────────────────────────────────────
media-deluge-1  |
media-deluge-1  |       ██╗     ███████╗██╗ ██████╗
media-deluge-1  |       ██║     ██╔════╝██║██╔═══██╗
media-deluge-1  |       ██║     ███████╗██║██║   ██║
media-deluge-1  |       ██║     ╚════██║██║██║   ██║
media-deluge-1  |       ███████╗███████║██║╚██████╔╝
media-deluge-1  |       ╚══════╝╚══════╝╚═╝ ╚═════╝
media-deluge-1  |
media-deluge-1  |    Brought to you by linuxserver.io
media-deluge-1  | ───────────────────────────────────────
media-deluge-1  |
media-deluge-1  | To support LSIO projects visit:
media-deluge-1  | https://www.linuxserver.io/donate/
media-deluge-1  |
media-deluge-1  | ───────────────────────────────────────
media-deluge-1  | GID/UID
media-deluge-1  | ───────────────────────────────────────
media-deluge-1  |
media-deluge-1  | User UID:    1000
media-deluge-1  | User GID:    100
media-deluge-1  | ───────────────────────────────────────
media-deluge-1  |
media-deluge-1  | [custom-init] No custom files found, skipping...
media-deluge-1  | Connection to 127.0.0.1 58846 port [tcp/*] succeeded!
media-deluge-1  | Connection to 127.0.0.1 8112 port [tcp/*] succeeded!
media-deluge-1  | [ls.io-init] done.
media-deluge-1  | 00:39:47 [ERROR   ][deluge.ui.web.json_api     :1622] Error calling method `web.upload_plugin`: 'NoneType' object has no attribute 'call'
media-deluge-1  | 00:39:47 [ERROR   ][deluge.ui.web.json_api     :1622] 'NoneType' object has no attribute 'call'
media-deluge-1  | Traceback (most recent call last):
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/web/json_api.py", line 157, in _handle_request
media-deluge-1  |     result = self._exec_local(method, params, request)
media-deluge-1  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/web/json_api.py", line 119, in _exec_local
media-deluge-1  |     return meth(*params)
media-deluge-1  |            ^^^^^^^^^^^^^
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/web/json_api.py", line 950, in upload_plugin
media-deluge-1  |     d = client.core.upload_plugin(filename, plugin_data)
media-deluge-1  |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
media-deluge-1  |   File "/usr/lib/python3.11/site-packages/deluge/ui/client.py", line 548, in __call__
media-deluge-1  |     return self.daemon.call(self.base, *args, **kwargs)
media-deluge-1  |            ^^^^^^^^^^^^^^^^
media-deluge-1  | AttributeError: 'NoneType' object has no attribute 'call'
github-actions[bot] commented 4 months ago

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.

LinuxServer-CI commented 3 months ago

This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.

thespad commented 1 month ago

I can't replicate this with a clean container; the plugins list is populated with the default plugins, and I can enable them all without error.

Please make sure the plugins you're using are actually maintained, because at a glance a lot of the 3rd party plugins are still python 2.x, which will never work, and many expect old versions of python 3; the container ships with 3.12.3 at this point.

LinuxServer-CI commented 3 weeks ago

This issue has been automatically marked as stale because it has not had recent activity. This might be due to missing feedback from OP. It will be closed if no further activity occurs. Thank you for your contributions.