Can't reinstall Deluge

General support for problems installing or using Deluge
ZaPHoN
Member
Member
Posts: 18
Joined: Sun Jul 15, 2012 3:50 am

Re: Can't reinstall Deluge

Post by ZaPHoN »

I'll go through and tripple check indentations and test a couple more times.
Cas
Top Bloke
Top Bloke
Posts: 3679
Joined: Mon Dec 07, 2009 6:04 am
Location: Scotland

Re: Can't reinstall Deluge

Post by Cas »

If you are still having issues, I have packaged an egg and attached it.

You will have to move/delete the old plugin dir: /usr/share/pyshared/deluge/plugins/Extractor-0.1.egg
ZaPHoN
Member
Member
Posts: 18
Joined: Sun Jul 15, 2012 3:50 am

Re: Can't reinstall Deluge

Post by ZaPHoN »

Thanks a bunch... I'll reset all the files I've modded and start again with your egg...
ZaPHoN
Member
Member
Posts: 18
Joined: Sun Jul 15, 2012 3:50 am

Re: Can't reinstall Deluge

Post by ZaPHoN »

I put all these files back that I backed up before changing:

deluge/core/torrentmanager.py
deluge/event.py

Careful to make sure permissions and ownership didn't change.

I nuked /usr/share/pyshared/deluge/plugins/Extractor-0.1.egg

started deluge from stop.

RESULTS:

First time:

Extractor seems to be now moving the archive and the extracted.

~/Deluge/extracted/ ---> Where extractor should dump but instead moves archive and extracted contents too
~/Deluge/completed/ ---> "Move completed to:"
~/Deluge/incoming/ ---> "Download to:"
Cas
Top Bloke
Top Bloke
Posts: 3679
Joined: Mon Dec 07, 2009 6:04 am
Location: Scotland

Re: Can't reinstall Deluge

Post by Cas »

I am not sure what precise changes were made to the plugin but I can look at the code at some point.

You want ~/Deluge/completed/ to contain the torrent data and ~/Deluge/extracted/ to only contain extracted torrent data?
ZaPHoN
Member
Member
Posts: 18
Joined: Sun Jul 15, 2012 3:50 am

Re: Can't reinstall Deluge

Post by ZaPHoN »

Yes.. That's what I was hoping the outcome would be...

It would be nice if it would extract according to label as well.

Should I insert the code modifications to these two files because they are back to default before I installed the extractor egg

deluge/core/torrentmanager.py
deluge/event.py

After restarting Deluge the extractor doesn't seem to work at all now...
Last edited by ZaPHoN on Mon Sep 24, 2012 5:07 pm, edited 2 times in total.
Cas
Top Bloke
Top Bloke
Posts: 3679
Joined: Mon Dec 07, 2009 6:04 am
Location: Scotland

Re: Can't reinstall Deluge

Post by Cas »

Yes you need those changes because otherwise there is no event for the plugin to react to. Also I just realised that I commented out some code when testing the plugin before so here's another egg with the corrected code.
Attachments
Extractor-0.2beta-py2.7.egg
(13.88 KiB) Downloaded 221 times
ZaPHoN
Member
Member
Posts: 18
Joined: Sun Jul 15, 2012 3:50 am

Re: Can't reinstall Deluge

Post by ZaPHoN »

Ok.. Thanks.. I'll make changes to those two files and try this egg.

Here are current logs...

daemon log

Code: Select all

[ERROR   ] 13:02:19 rpcserver:303 Exception calling RPC request: 'CorePlugin.Extractor'
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/deluge/core/rpcserver.py", line 298, in dispatch
    ret = self.factory.methods[method](*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/deluge/core/core.py", line 510, in enable_plugin
    self.pluginmanager.enable_plugin(plugin)
  File "/usr/lib/python2.7/dist-packages/deluge/core/pluginmanager.py", line 82, in enable_plugin
    super(PluginManager, self).enable_plugin(name)
  File "/usr/lib/python2.7/dist-packages/deluge/pluginmanagerbase.py", line 151, in enable_plugin
    component.start([instance.plugin._component_name])
  File "/usr/lib/python2.7/dist-packages/deluge/component.py", line 290, in start
    if self.components[name]._component_depend:
KeyError: 'CorePlugin.Extractor'
Web Log

Code: Select all

[ERROR   ] 04:57:53 json_api:228 Error calling method `web.get_torrent_status`
[ERROR   ] 04:57:53 json_api:229 'NoneType' object has no attribute 'call'
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/deluge/ui/web/json_api.py", line 220, in _handle_request
    result = self._exec_local(method, params, request)
  File "/usr/lib/python2.7/dist-packages/deluge/ui/web/json_api.py", line 187, in _exec_local
    return meth(*params)
  File "/usr/lib/python2.7/dist-packages/deluge/ui/web/json_api.py", line 618, in get_torrent_status
    return component.get("SessionProxy").get_torrent_status(torrent_id, keys)
  File "/usr/lib/python2.7/dist-packages/deluge/ui/sessionproxy.py", line 148, in get_torrent_status
    d = client.core.get_torrent_status(torrent_id, keys, True)
  File "/usr/lib/python2.7/dist-packages/deluge/ui/client.py", line 508, in __call__
    return self.daemon.call(self.base, *args, **kwargs)
AttributeError: 'NoneType' object has no attribute 'call'
Cas
Top Bloke
Top Bloke
Posts: 3679
Joined: Mon Dec 07, 2009 6:04 am
Location: Scotland

Re: Can't reinstall Deluge

Post by Cas »

Make sure to delete the old plugins and your code edits are indented and line endings match those in the file.
ZaPHoN
Member
Member
Posts: 18
Joined: Sun Jul 15, 2012 3:50 am

Re: Can't reinstall Deluge

Post by ZaPHoN »

I shut down Deluge
Cleared any logs
Edited the two files
Started Deluge
Installed the newest Extractor-0.2beta-py2.7.egg and enabled the plugin
Stopped and started deluge
Extractor doesn't work at all now (it is showing as being enabled in webui and GTK)

daemon log:

Code: Select all

[ERROR   ] 13:02:19 rpcserver:303 Exception calling RPC request: 'CorePlugin.Extractor'
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/deluge/core/rpcserver.py", line 298, in dispatch
    ret = self.factory.methods[method](*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/deluge/core/core.py", line 510, in enable_plugin
    self.pluginmanager.enable_plugin(plugin)
  File "/usr/lib/python2.7/dist-packages/deluge/core/pluginmanager.py", line 82, in enable_plugin
    super(PluginManager, self).enable_plugin(name)
  File "/usr/lib/python2.7/dist-packages/deluge/pluginmanagerbase.py", line 151, in enable_plugin
    component.start([instance.plugin._component_name])
  File "/usr/lib/python2.7/dist-packages/deluge/component.py", line 290, in start
    if self.components[name]._component_depend:
KeyError: 'CorePlugin.Extractor'

I edited
deluge/event.py:

Code: Select all

class TorrentMovedEvent(DelugeEvent):
    """
    Emitted when a torrent finished being moved.
    """
    def __init__(self, torrent_id):
        """
        :param torrent_id: the torrent_id
        :type torrent_id: string
        """
        self._args = [torrent_id] 


and /deluge/core/torrentmanager.py

Code: Select all

    def on_alert_storage_moved(self, alert):
        log.debug("on_alert_storage_moved")
        try:
            torrent = self.torrents[str(alert.handle.info_hash())]
            torrent_id = str(alert.handle.info_hash())
        except:
            return
        torrent.set_save_path(os.path.normpath(alert.handle.save_path()))
        torrent.set_move_completed(False)
        component.get("EventManager").emit(TorrentMovedEvent(torrent_id))
Post Reply