GithubHelp home page GithubHelp logo

deluge-autoremoveplus's Introduction

AutoRemovePlus

AutoRemovePlus is a plugin for Deluge that you can use to automatically remove torrents. Its based on AutoRemove 0.1 by Jamie Lennox.

This is a GtkUI and WebUI plugin.

Features

  • Select how many torrents are allowed at the same time.
  • Choose to remove or pause them based on multiple criteria age, seeders, seed time or ratio.
  • Set specific removal rules depending on tracker or label.
  • Remove only torrents from specific trackers or labels.
  • Only remove torrents if under a certain HDD space threshold.
  • Select if torrents have to fulfill both or either criteria.
  • Delete torrents in order (e.g. delete torrents with highest ratio first).
  • Don't remove torrents if they don't reach a minimum time (in days) or ratio.
  • Choose the removal interval.
  • Right click and select torrents that you don't want automatically removed.
  • Remove torrent data option.
  • Create an exempted tracker or label list, so that torrents that belong to those trackers or labels are not removed.
  • Fully functional WebUI.

Usage

Look for torrents to remove every day:

Check every: 1

Look for torrents to remove every hour:

Check every: 0.0416

Remove every torrent that meets minimum criteria:

Maximum torrents: 0

Don't remove torrents unless Deluge has over 500:

Maximum torrents: 500

Delete torrents even if HDD space not under minimum:

Minimum HDD space: -1

Only remove torrents when the main HDD has less than 10 GB free:

Minimum HDD space: 10

Remove torrents that have a ratio over 2.0 and have been seeding for at least 4 days:

Remove by: Ratio, Min: 2.0, and, Remove by: Seed Time, Min: 4

Remove torrents that have a ratio over 2.0 or have been seeding for at least 4 days:

Remove by: Ratio, Min: 2.0, or, Remove by: Seed Time, Min: 4

Remove torrents only according to first criteria:

▪️ Second Remove by: criteria

Pause torrents instead of removing them:

▪️ Remove torrents

The rest of the options are pretty self explanatory

Building

Run:

python setup.py bdist_egg

The resulting AutoRemovePlus-x-py2.x.egg file can be found in the /dist directory.

Workarounds

If after building the egg file, the plugin does not load in Deluge:

  • Delete the AutoRemovePlus-x-py2.x.egg in /deluge/plugins directory.
  • Delete the AutoRemovePlus.conf files.
  • Restart Deluge.

deluge-autoremoveplus's People

Contributors

jkaberg avatar omaralvarez avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deluge-autoremoveplus's Issues

Global rules still apply after disabling

Hello,

I was using this plugin to help clean up torrents for a specific tracker, so I set up the global rules with exemptions for every other tracker. However, I decided instead to use the tracker-specific rules instead, so I moved the rules there, and then removed everything from the exemption list, disabled everything else and saved. On the next scan, it deleted about 600GB of data it shouldn't, probably because of what the old global settings were. Why weren't these settings cleared? I even cleared them manually again, and just now it's removed more things that fit the old rules which don't exist anymore.

The old global settings were to delete anything with a ratio above 1 and a seedtime above 2 days.

exempted label filter does not work correctly

Hi,
the exempted label filter does just work if every torrent does have an label or none.

Deluge has an AutoAdd (WatchFolder) feature, if this feature is used and the label plugin is active, then deluge adds them with "no label". If you try now to add just an label filter in the autoremoveplus plugin, it will not work until i give the torrent a label witch is not listed in the exempted label list.
thank you for the plugin!

Data not removed with torrent

Hey, thanks for the great plugin, your work is greatly appreciated.

I've been experiencing some odd issues where torrents are removed correctly, but the data persists on disk after torrent removal. It seems that others may be experiencing this as well.

My specs:

  • Arch Linux
  • Python 2.7.10
  • Using the correct 2.7 egg
  • deluged --version
deluged --version
deluged: 1.3.11
libtorrent: 1.0.6.0

I've confirmed the user the deluged daemon is running under has permissions to remove the torrent data (nothing in the logs either.) It's also worth noting that I do use the Label plugin to move completed downloads to another location, which might be affecting this? If so, it'd still be nice to peg the exact problem so we might be able to detect and handle that case. I'm happy to provide any more details or try and code up a PR with a solution if you have a spot in the code to start looking at.

Causes webui problems

Not sure if it is just me, but as long as autoremoveplus is enabled I have problems using the webui from another computer. I can sometimes load the webpage but no info on current torrents or options. Sonarr has issues communicating with deluge as well. If I disable autoremoveplus everything works again. Maybe I am doing something wrong?

Deluge 1.3.13 py2.7 on windows server 2012R2
Autoremoveplus 0.6

Delete first the oldest torrents and stop when there is enough free space

I would like to delete first the oldest torrents and stop deleting torrents when there is enough free space.

Details:
I use a big dedicated hard drive in order to keep in seed my torrents as long as possible. But I need to be sure there is enough free space for downloading new torrents.
When autoremoveplus detects there is no enough free space on my hard drive it removes all torrents which match my criteria (ratio > 1). So it removes the majority of my torrents and after it don't remove anything during weeks/months.
I would like to frequently remove the oldest torrents which match with autoremoveplus's criteria in order to keep a minimal free space.

If you understand what I want and think that could be useful, I can try to add this functionality (I never worked on a deluge plugin so this may be long and unsuccessful )

installed plugin but wont activate

Running in docker conatiner from linuxserver.io
Container has python 3.6
Created egg file using 3.6
COpiedd egg file to plugins folder
I see it in the plugins in webui - I check the box to turn it on and it unchecks itself by next time i go into plugins.

Opposite of exemption

Would it be possible to get a second list box which works inverse to the exemption rules box where only trackers listed in that box are affected, the opposite box would have to be empty for either to work. I don't know about other people but for me this way actually seems more useful, instead of excluding all the trackers I use that aren't the one I want to auto remove on I can just add the one I want to remove on.

Max. Torrents setting is misleading when used with Min. HDD Space criteria

My current plugin settings are as follows:

image

I recently changed the Seed Time condition from 7 to 15, but the issue is the same.

Torrents are removed in a somewhat unpredictable order. I expected that, since the primary condition is to remove by seed time, the torrents that have been seeding the longest would be removed first, with torrents of the same age in days being removed in order of highest to lowest ratio. But it seems the plugin is sorting in some other order, so more recently added torrents get removed first—sometimes torrents that just barely meet the minimum seed time.

It would make more intuitive sense to sort torrents according to the removal criteria, and process them in order such that the torrents that "most meet" the criteria (higher seed time, higher ratio, more seeders, less recent Date Added) are removed, leaving the newer torrents to continue accumulating seed time/ratio/etc.

Min. HDD Space wont remove torrents Deluge 2.0.3 plugin 0.6.2

EDIT: I actually think I had max torrents -1, and not 0. So I think that was the issue. Will report back in a few days if it's working as expected.

After free space going below min limit, Torrents were still not deleted to free space.
image

I tried changing the max torrents from 0 to 10 but that did not work. I tried adding min ratio 0 but that did not work. min ratio 0 + max torrents 0 + min HDD space 20 finally worked, but it deleted all torrents =/ not just the ones needed to bring diskspace back to 20gb.

I want to seed my torrents as long as possible as long as I'm not running out of disk space. Not sure if this is a bug or me not understanding how min disk space works.

Add check box to remove unregistered torrents

Would be quite handy as this is the only hole in running this plugin indefinitely right now, torrents that error out because the tracker killed them won't always (sometimes ever) meet the conditions of their removal.

Deluge 2 Support

With Deluge 2 out, can we get this plugin updated to python 3 so we can use it?

Add a "custom" query edition

It will be so nice to switch the query mode from "visual mode" to "custom mode".

Explanation :

  • Visual mode will be Seedtime = 4.0 AND ratio =2.0 (with actual UI)
  • Custom mode will be (seedtime=4.0) and (ratio=2.0) if just a text field

Can let people to do custom query with incoming label support, unclude, exclude, ...

Exclude Specific Torrents

I'd like to request that an enhancement be made, whereby we can exclude specific torrents from being removed (via a right click menu option).

Option to PAUSE instead of remove torrents

Per forum post:

I would love to see one additional option added (or perhaps you can give some guidance on how to modify the plugin to do this?):

Option to PAUSE instead of remove matched torrents.

I would use the default Deluge Queue for this, but I need certain trackers to be exempt, which is why I LOVE this plugin! But it would be great if I could have them pause instead of being removed, so that I don't lose track of new torrents that get auto-added from my RSS feeds. Right now, sometimes a torrent will get added, finish downloading, and hit the ratio limit set in AutoRemovePlus before I even notice it's been added at all! :)

Remove by: HDD space

I'd love to see an option to remove torrents (based on highest ratio? when low on HDD space

Example:

Remove by: HDD space Min: 50GB

That way I know my seedbox will seed as long as possible but will never run out of space for new torrents

"Uncaught TypeError: Cannot read property 'get_remove_rules' of undefined"

This is with deluged 1.3.13 and AutoRemovePlus 0.6-py2.7.

The error appears in the browser JavaScript console, tagged autoremoveplus.js:152. Deluge's Web UI appears not to finish loading; most of the buttons are disabled, and there are no filters or extra panes (Status, Trackers, etc.) added to the left sidebar. This error seems to completely stop the Web UI from initializing. At least I can open Preferences and disable AutoRemovePlus under Plugins, and the Web UI loads properly on page refresh.

I've looked in all the places I know how (mostly .config/deluge/deluged.log) for errors that would point to the source of this issue, but the log files are empty. Happy to keep poking at this if you can't reproduce and need more info; just tell me where to look. 😄

Deluge 2.0 Docker Support

I have placed the new python 3.7 .egg plugin within the /deluge/plugin directory for the container, but the plugin does not show up within deluge. I have restarted the container multiple times as well as restarted the host machine.

WEB UI

Hi,
You mention on the details of this page that it works with the webui.

When I try to enable it on the webui, it never stays checked.

When I check the logs, I see the following

[INFO ] 12:00:25 pluginmanager:108 'AutoRemovePlus' plugin contains no WebUI code, ignoring WebUI enable call.

Is the webui a deprecated part of this plugin or did I do something wrong possibly?

error 404

Hi,

I have an error with version 0.6.1
js/autoremoveplus/autoremoveplus.js
404

Using raspbian and a raspberry pi.

:s

Tracker Settings

I would like to submit a feature request.

Would like to be able to have different settings based on which tracker is used.

For instance, I would like to have a default ratio and seed time for all trackers. But, if using tracker 'something.com', I would like to have different ratio and seed times. So, instead of exempting, adding different settings.

Thanks, Eddie

Support for more arbitrary boolean logic

I realise this is a big shift away from the current interface, but I thought I'd put it out here to see if anyone has a solution, or could potentially add support for this.

What I'd like to have is something like this:

Private tracker 1: (min ratio 2 and min 7 days seeding) or 365 days seeding
Private tracker 1: (min ratio 2 and min 7 days seeding) or 365 days seeding
Otherwise: min 30 days seeding

I'm not aware of any current way to do this in the plugin, and more importantly I think it's quite hard to understand, for a given tracker, how rules are going to be applied to it (e.g. if I have an or in the general tab, and then 2 ands for the tracker in the specific tab, what does that mean?)

Hopefully that makes sense, let me know if it doesn't.

Do not remove if below X seeders

In the features section it says you can remove by seeders

Choose to remove or pause them based on multiple criteria age, seeders, seed time or ratio.

Maybe I am misunderstanding, since I cannot find this setting anywhere, but in any case I would love to have an option for Do not remove torrents with less than X seeders already uploading the torrent.

This would be great when it comes to helping the community keeping torrents healthy without having to manually check everything.

Add minimum time after completion

Basically how I want to set up my rules is: (ratio > 1.0 && date_completed > 1 day) || date_completed > 30 days. I want it like that so my downloader has a chance to parse the files in a rare case where the ratio is already larger than 1.0 when the torrent has finished downloading. Is there any chance of adding this functionality?

Exclude based on label

Is there any way you could code in a way to exclude torrents based on their label?

For example, I'd like to keep all torrents labeled with "save", regardless of the tracker's URL, even if they meet the criteria for deletion.

I'm not sure if it matters, but I'm using the built-in 'Label' plugin for the labels.

Thanks either way!

Threshold for removing torrents based on Seed count

I personally like to leave torrents seeding until the end of time if they have less than 5 seeders. I've been going over the code but cannot wrap my head around how it works. All we would need is a user defined variable and a function to compare the torrent's current number of seeders to the variable and not remove it if the seeders are less than that variable. I'll have my sister look at it while she learns python. She's more of a programmer and I more of a sysadmin.

Also, I do not know how to label this issue. Maybe the maintainer has to do it himself?

bug - remove method

Hallo,

Please confirm that you use the deluge's "internal deluge delete" function.
My problem is - your removal works but it not fires the deluge internal removal method, hence I cannot attach another plugin to it (eg running a script when torrent removal happens)

If you are not using this deluge internal procedure, then please:

  • change the autoremoveplus code accordingly to allow as cascading the plugins
    OR
  • implement a run script procedure on the remove event (I'd need torrent details handed over to the executed script)

Regards,
J

Different seed time if search query is found in Title

I was hoping to have this as a feature since it would be very useful since the current seedtime that I have set is only for a few torrents, some others don't require this long.

Would it be possible to say if it detects an SnnEnn (n meaning a variable from 00 to say 50) that it could then have a custom set shorter seedtime?

Python 3.x support

With Python 2 no longer in support, is it possible to upgrade this plugin to work with python 3.x?

Remove public trackers

Hi, I'm trying to set a rule to remove all public trackers after the download is completed. Is there an elegant way to do this?

Documentation

I disagree "The rest of the options are pretty self explanatory"

  • When to use options under General vs options in Specific Remove Rules?
  • What if I wanted to remove torrents and torrent data for one label only, but remove torrents and keep torrent data for the rest?

Feature Request: Only remove torrents with a specific label

Hi,

So I see in the new version you can add torrents with specific labels to NOT be removed. But I think the opposite would be more useful.

When Sickrage snatches torrents they can be added to deluge with a label, I would only like these torrents to be effected.

I tried adding an empty Label to the exclusion list as a work around so it wouldn't effect torrents added manually without labels but this didn't work.

Any way to do what I want with the current implementation? Or can this feature be put in?

New filter suggestion

Hi!

This is not really a bug, I just was wondering, if someone could implement a new filter... Because now if a torrent is seeded with high speeds, but meets the conditions, like ratio, seed time etc it still gets removed, but if a torrent is shit in upload speeds it gets removed aswell.

So it would be nice to have something like an exception for this.
E.g. Exclude if upload speed greater than: x MB/s

Regards!

add exempt column

Hi!

Is it possible to add a column showing if autoremove exempt is enabled for every torrent?

Thank you!

ImportError: No module named setuptools

media@media-server:~/deluge-autoremoveplus-0.6.1$ python setup.py bdist_egg Traceback (most recent call last):
File "setup.py", line 42, in
from setuptools import setup
ImportError: No module named setuptools

Nevermind seems like i needed to install python-setuptools

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.