Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

qBittorrent Injection doesn't handle download/save path correctly #34

Open
drewstopherlee opened this issue Dec 14, 2024 · 4 comments
Open

Comments

@drewstopherlee
Copy link

When adding torrents to qBittorrent, if the default download directory (different than the save directory for completed torrents) is set, the recheck fails, as qBittorrent checks the download directory on force recheck. This causes torrents to be detected at 0% (despite working hardlinks in the OPS/RED output directories) and will begin downloading them.

I am not savvy enough to suggest a solution, but my workaround was to set the global download directory to the OPS output directory (as all the torrents I'm trying to seed come from RED). An ideal solution would be to address the handling of download vs. save directories in qBittorrent and/or not start the torrents if the check results in a 0% result (kind of like how cross-seed handles partial matches).

P.S. also maybe add documentation to add the user: 1000:1000 to the docker compose, as this runs as root when using docker, which resulted in permissions errors for my torrent client.

@moleculekayak
Copy link
Owner

That's very strange - I wouldn't have expected the recheck to check the download directory preferentially over the final destination directory.

I don't actually use qbit so I might need the help of someone with more experience here. In the meantime, is it possible to set label-specific rules so that torrents with a fertilizer label/tag have a different save path? This way you don't need to change the global directory

@Aubermean
Copy link

Aubermean commented Dec 19, 2024

When adding torrents to qBittorrent, if the default download directory (different than the save directory for completed torrents) is set, the recheck fails, as qBittorrent checks the download directory on force recheck. This causes torrents to be detected at 0% (despite working hardlinks in the OPS/RED output directories) and will begin downloading them.

I am not savvy enough to suggest a solution, but my workaround was to set the global download directory to the OPS output directory (as all the torrents I'm trying to seed come from RED). An ideal solution would be to address the handling of download vs. save directories in qBittorrent and/or not start the torrents if the check results in a 0% result (kind of like how cross-seed handles partial matches).

P.S. also maybe add documentation to add the user: 1000:1000 to the docker compose, as this runs as root when using docker, which resulted in permissions errors for my torrent client.

Do you mean you are using the qBit feature to store incomplete downloads in a separate DIR? I have that enabled too but it works for me... it sets the right location based on the hardlink... however the torrent is added at 0% and I have to manually force recheck and then start it. I have Do not start the download automatically enabled, as well as Torrent stop condition set to Files checked. I'm on qBit 5.0.2 with Libtorrent 1.2.19.0, on Ubuntu without Docker.

@drewstopherlee
Copy link
Author

That's very strange - I wouldn't have expected the recheck to check the download directory preferentially over the final destination directory.

Every time I add a torrent (for upload or reseed), I have to have the save directory AND the download directory set to the same path (where the files are located), otherwise it reads 0% on force re-check.

In the meantime, is it possible to set label-specific rules so that torrents with a fertilizer label/tag have a different save path? This way you don't need to change the global directory

You can set default save paths for each category, but qBittorrent only respects that with automatic torrent management enabled (which automatically sorts torrents into paths based on category) or with the option Use Category paths in Manual Mode enabled.

Do you mean you are using the qBit feature to store incomplete downloads in a separate DIR?

Yes, I use category paths in manual mode for my save directories (i.e., /torrents/sonarr, /torrents/sonarr4k, /torrents/lidarr, etc.) so when one of the *arrs adds a torrent, it gets sorted by which app added it to the queue.

however the torrent is added at 0% and I have to manually force recheck and then start it. I have Do not start the download automatically enabled, as well as Torrent stop condition set to Files checked.

I do have Do not start the download automatically disabled, as I don't want to have to manually start every torrent sent to qBit by the *arrs. Additionally, Torrent stop condition is set to None.

My workaround has evolved to completely disabling the download path (was previously /torrents/temp) so qBittorrent places incomplete torrents in the save path. With this configuration, when fertilizer adds a torrent, it still correctly creates hardlinks, and when it adds the torrent, qBit force re-checks and it comes back as 100% and begins seeding automatically.

@zakkarry
Copy link
Contributor

zakkarry commented Dec 20, 2024

Pathing in qBittorrent, particularly with AutoTMM, was difficult for us when we started to expand linking's functionality in cross-seed v6.

I'm happy to help with some of the more specific "gotchas" if need be, but it's going to require a bit more logic surrounding injection specific to what would be expected and the behavior you want fert to take @moleculekayak

You can hit me up on github (anyone looking to help) directory of in our (cross-seed) discord. Just let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants