Extracted from qbt search plugins backup at /home/user/backups/qbt-onyx-migration/qbt-state-20260520.tar.gz. Key findings: - 75 plugins / 39 unique announce hosts across 45 active torrents - All private-tracker plugins have placeholder credentials — user never logged into any private tracker. Migration starts clean. - Public trackers in active use: BitSearch.to, rutor.info, therarbg.to, UIndex.org — all Prowlarr-native - Drop list + custom-indexer needs documented in body
15 KiB
Tracker List (migrated from onyx qbt search plugins)
Source: /home/admin/.local/share/qBittorrent/nova3/engines/ (75 plugin .py files, qBittorrent 5.1.4 nova3, Python 3.14.4)
Backup mirror: nullstone:/home/user/backups/qbt-onyx-migration/qbt-state-20260520.tar.gz (extracted to /tmp/qbt-inspect/qBittorrent/ — contents identical, 75 plugins).
Generated: 2026-05-20
Summary
- Total plugins installed: 75 (74 trackers + 1 prowlarr bridge +
__init__.py). - Plugins ever configured with credentials: 0. Every private-tracker .json / inline placeholder still reads
USERNAME/PASSWORD/YOUR_API_KEY_HERE/REPLACE_ME. The only non-empty plugin logs (tapochek.log,toloka_to.log) contain nothing but "Empty credentials" / "Missing credentials" errors. Conclusion: the user grazed the qbt-search-plugins-list, installed everything in sight, but never actually logged into any private tracker through nova3. prowlarr.pyalready installed and pre-configured tohttp://127.0.0.1:9696(api_key placeholder). So onyx was en route to a Prowlarr setup; this migration is the natural finish.categories.jsonandwatched_folders.jsonare both{}(empty). No qbt categories or watched folder rules need carrying over.- 45 active torrents (BT_backup contains 62
.fastresume+ 45.torrentfiles). Trackers actually announced-to are all public DHT/HTTP swarms (see "Trackers extracted from active torrents" below).
Public (no signup)
| Tracker | URL | Prowlarr native | qbt plugin source | Notes |
|---|---|---|---|---|
| AcademicTorrents | https://academictorrents.com/ | Yes | academictorrents.py v1.4 | Datasets / papers; niche |
| ACG.rip | https://acg.rip | Yes | acgrip.py v1.0 | Chinese anime / ACG |
| AniDex | https://anidex.info/ | Yes | anidex.py v0.02 | Anime, alt to nyaa |
| AnimeTosho | https://animetosho.org | Yes | animetosho.py v1.00 | Anime aggregator |
| ApacheTorrent | https://apachetorrent.com | No | apachetorrent.py v1.00 | Spanish, low traffic; add as custom Newznab/YAML def if wanted |
| AudiobookBay | http://theaudiobookbay.se/ | Yes (Cardigann) | audiobookbay.py v0.4 | Audiobooks |
| BitSearch | https://bitsearch.to | Yes | bitsearch.py v1.3 | Meta-search (1337x/TPB/etc); heavy use per torrent names ("[Bitsearch.to] ..." in 12+ active torrents) |
| BT4GPRX | https://bt4gprx.com/ | Yes | bt4gprx.py v2.0 | DHT meta-search |
| BTDigg | https://www.btdig.com | Yes | btdig.py v1.1 | DHT meta-search |
| CalidadTorrent | https://calidadtorrent.com | No | calidadtorrent.py v1.0 | Spanish |
| CloudTorrents | https://cloudtorrents.com | Yes (Cardigann) | cloudtorrents.py v1.0 | Generic meta-search |
| CPasBien | http://www.cpasbien.fr | Yes | cpasbien.py v2.2 | French |
| DivxTotal | https://divxtotal.wtf/ | Yes | divxtotal.py v1.0 | Spanish |
| dmhy_dchika | mirror of share.dmhy.org | No | dmhy_dchika.py (no VERSION) | Chinese anime; dupe of dmhy_zh — drop |
| dmhy | https://share.dmhy.org | Yes (DMHY) | dmhy_zh.py v1.00 | Chinese anime |
| DODI Repacks | https://dodi-repacks.site/ | Yes (DODI Repacks) | dodi_repacks.py v1.1 | Game repacks |
| DonTorrent (burning) | https://dontorrent.phd | Yes (Cardigann) | dontorrent_burning.py v1.2 | Spanish — proxy variant |
| DonTorrent (dangar) | https://dontorrent.prof | Yes | dontorrent_dangar.py | Spanish — proxy variant |
| EliteTorrent | https://www.elitetorrent.com | Yes (Cardigann) | elitetorrent.py | Spanish |
| EsmeraldaTorrent | https://esmeraldatorrent.com/ | No | esmeraldatorrent.py v1.0 | Spanish, niche |
| FitGirl Repacks | https://fitgirl-repacks.site/ | Yes | fitgirl_repacks.py v1.1 | Game repacks |
| GloTorrents | https://glodls.to/ | Yes | glotorrents.py v1.7 | Movies/TV |
| GOG-Games | https://gog-games.to | Yes (Cardigann) | goggames.py v1.0 | DRM-free games |
| KickAss Torrents | https://katcr.to/ | Yes | kickasstorrents.py v1.2 | Major public |
| MagnetDL | http://www.magnetdl.com/ | Yes | magnetdl.py | Magnet meta-search |
| MejorTorrent | https://www36.mejortorrent.eu | Yes | mejortorrent.py v1.01 | Spanish |
| Mikanani | https://mikanime.tv | Yes | mikanani.py v1.2 | Chinese anime |
| mikan_proj | https://mikanime.tv | Yes (same as Mikanani) | mikan_proj.py v0.4 | Dupe of mikanani — drop |
| MyPornClub | https://myporn.club | Yes (Cardigann) | mypornclub.py v1.1 | XXX |
| NaranjaTorrent | https://naranjatorrent.com/ | No | naranjatorrent.py v1.0 | Spanish, niche |
| NekoBT | https://nekobt.to/ | No | nekobt.py v1.0 | Anime, niche |
| Nyaa Pantsu | https://nyaa.pantsu.cat | Yes | nyaapantsu.py | Anime |
| Nyaa.si | https://nyaa.si | Yes | nyaasi.py | Major anime tracker |
| OnlineFix | https://online-fix.me/ | Yes (Cardigann) | onlinefix.py | Game cracks |
| PediaTorrent (burning) | https://pediatorrent.com | No | pediatorrent_burning.py v1.1 | Spanish |
| PediaTorrent (dangar) | https://pediatorrent.com/ | No | pediatorrent_dangar.py | Spanish, dupe of above — drop |
| Pirateiro | https://pirateiro.io/ | Yes | pirateiro.py v1.3 | Generic |
| ReDeTorrent | https://redetorrent.com | No | redetorrent.py v1.00 | Portuguese-BR |
| Rutor | https://rutor.info/ | Yes | rutor.py v1.20 | Russian public; 8+ active torrents announce to bt.rutor.info |
| Sktorrent | https://sktorrent.eu | Yes | sktorrent.py v1.1 | Slovak/Czech (semi-public) |
| SolidTorrents | https://solidtorrents.to | Yes | solidtorrents.py v1.0 | Generic |
| SubsPlease | https://subsplease.org/ | Yes | subsplease.py v1.1 | Anime releases |
| Sukebei | https://sukebei.nyaa.si | Yes (Nyaa) | sukebeisi.py | XXX anime |
| ThePirateBay | https://thepiratebay.org/ | Yes | thepiratebay.py v1.1 | Major public |
| TheRARBG | https://therarbg.com | Yes | therarbg.py v1.3 | RARBG mirror; 3+ active torrents announce to tracker.therarbg.to |
| TomaDivx | https://tomadivx.net/ | No | tomadivx.py v1.1 | Spanish |
| TorrentDownload | https://www.torrentdownload.info/ | Yes (Cardigann) | torrentdownload.py v1.1 | Generic |
| TorrentDownloadsPro | https://torrentdownloads.pro | No | torrentdownloadspro.py v1.1 | Generic, low-trust mirror |
| TorrentGalaxy | https://torrentgalaxy.to | Yes | torrentgalaxy.py v0.08 | Major public |
| Traht | https://traht.org | No | traht.py v1.0 | Russian/UA, niche |
| UIndex | https://uindex.org | Yes (Cardigann) | uindex.py v1.2 | Generic, 3+ active torrents tagged [UIndex.org] |
| UnionDHT | http://uniondht.org | No | uniondht.py v1.2 | DHT meta |
| UnionFanSub | https://torrent.unionfansub.com/ | No | unionfansub.py v2.0 | Spanish fansub (semi-public) |
| XXXClub.to | https://xxxclub.to | Yes (Cardigann) | xxxclubto.py v1.3 | XXX |
| YggAPI | https://yggapi.eu | Partial | yggapi.py | Unofficial Ygg API proxy; Prowlarr has YggTorrent native via Cardigann but this is the proxy — keep aware |
| YggTracker | https://github.com/YGGverse/YGGtracker | No | yggtracker.py v1.1.0 (invalid format — qbt logs warning) | Decentralized YGG mirror project; experimental, custom def required |
| YTS | https://yts.bz/ | Yes (YTS) | yts.py v1.8 | Movies |
| Zooqle | https://zooqle.skin | Yes | zooqle.py v1.1 | Generic, often down |
Private (requires account)
All entries below have USERNAME/PASSWORD/api_key placeholders left at default. None were ever used. Carry over only if the user actually plans to register.
| Tracker | URL | Prowlarr native | Login required | Notes |
|---|---|---|---|---|
| BakaBT | https://bakabt.me | Yes | Username/password | Anime, invite-only; plugin v1.4, never configured |
| c411 | https://c411.org/api | No | API key | Generic, no Prowlarr definition; needs custom YAML def. Never configured. |
| DanishBytes | https://danishbytes.club | Yes (UNIT3D) | Private + public username + password | Danish private; cookie file danishbytes.cookies exists but plugin source still has REPLACE_ME — file is empty/stub |
| FileList | https://filelist.io | Yes (Cardigann) | Username/password | Romanian private; never configured |
| GazelleGames | https://gazellegames.net | Yes (Gazelle) | API token | Games private; never configured |
| Kinozal | https://kinozal.tv/ | Yes | Username/password | Russian semi-private; never configured |
| LAT-Team | https://lat-team.com/ | Yes (UNIT3D) | API key (.ini) | Latin private; never configured |
| Milkie | https://milkie.cc | Yes (Cardigann) | x-milkie-auth api key |
Private; never configured |
| NNM-Club | https://nnmclub.to/forum/ | Yes | Username + cookies | Russian semi-private; never configured |
| Prowlarr (bridge) | http://127.0.0.1:9696 | N/A (this IS Prowlarr) | API key | The bridge plugin itself — pre-staged for the upcoming setup, api_key still placeholder. Drop the rest of this list once Prowlarr is up — Prowlarr handles all indexers and qbt only needs the prowlarr.py bridge. |
| RuTracker (imDMG) | https://rutracker.org/forum/ | Yes (RuTracker) | Username/password | Russian semi-private; never configured |
| RuTracker (nbusseneau) | rutracker.org (mirror list) | Yes (RuTracker) | Username/password | Dupe of above, different author — drop one |
| Sharewood | https://www.sharewood.tv/ | Yes (Cardigann) | Username/password | French private; never configured |
| Tapochek | https://tapochek.net/ | No | Username/password + cookies | Russian niche private; only error logs — never configured. Add as custom def if needed. |
| Toloka.to | https://toloka.to | Yes | Username/password | UA semi-private; pile of "Missing credentials" errors — never configured |
| TorrentLeech | https://www.torrentleech.org | Yes | Username/password | UK private; never configured |
| UnionFanSub | https://torrent.unionfansub.com/ | No | Cookie-based | Spanish fansub forum; listed under public above as semi-public — also has cookie path |
Trackers extracted from active torrent fastresume files
These are the actual swarms the user has been participating in (UDP/HTTP announce hosts pulled from 62 .fastresume files). All are public DHT/UDP trackers — no private/authenticated tracker URLs found in any active torrent.
Notable: bt.rutor.info, tracker.therarbg.to, tracker.bitsearch.to, 9.rarbg.com|me|to, tracker.opentrackr.org, tracker.openbittorrent.com, tracker.coppersurfer.tk, tracker.leechers-paradise.org, open.stealth.si, open.demonii.com, exodus.desync.com, tracker.torrent.eu.org, p4p.arenabg.com, tracker.t-1.org, tracker.tiny-vps.com, tracker.dler.com|org, seedpool.org, nnm-club (UDP mirrors, no login).
Full host list (39 unique):
9.rarbg.com 9.rarbg.me 9.rarbg.to abufinzio.monocul.us
announce1.sktorrent.eu bt02.ipv6.nnm-club.cc bt02.ipv6.nnm-club.info
bt02.nnm-club.cc bt02.nnm-club.info bt.rutor.info concen.org
ec2-18-191-163-220.us-east-2.compute.amazonaws.com exodus.desync.com
explodie.org fe.dealclub.de h4.trakx.nibba.trade ipv4announce.sktorrent.eu
ipv4.tracker.harry.lu odd-hd.fr open.demonii.com open.demonoid.ch
open.free-tracker.ga open.stealth.si opentor.net p4p.arenabg.com
pow7.com retracker.lanta-net.ru retracker.local seedpool.org
tracker.0x.tf tracker1.myporn.club tracker2.dler.com tracker2.dler.org
tracker.bitsearch.to tracker.bittor.pw tracker.breizh.pm
tracker.coppersurfer.tk tracker.dler.com tracker.dler.org
tracker.grepler.com tracker.leechers-paradise.org tracker.moeking.me
tracker.ololosh.space tracker.openbittorrent.com tracker.opentrackr.org
tracker.plx.im tracker.srv00.com tracker.t-1.org tracker.therarbg.to
tracker.tiny-vps.com tracker.torrent.eu.org tracker.tryhackx.org
tracker.uw0.xyz tracker.yggleak.top tracker.zerobytes.xyz
ttk2.nbaonlineservice.com wepzone.net www.torrent.eu.org
These announce URLs are baked into each .torrent file — Prowlarr is not involved with them. They will continue to work after the migration as long as the qbt-nox container can reach the public internet.
qBittorrent categories / watched folders
categories.json— empty{}— nothing to migrate.watched_folders.json— empty{}— nothing to migrate.
When wiring up Sonarr/Radarr later, decide categories at qbt-side and create them then (typical scheme: tv, movies, anime, books, games). Sonarr/Radarr send the category label in the API call to qbt; no nova3 / Prowlarr config implication.
Manually-added trackers in log (bonus)
Scanned /home/admin/.local/share/qBittorrent/logs/qbittorrent.log* — no "Added tracker" or "Tracker URL added" lines beyond what .torrent files brought in themselves. No manual additions to call out.
One log warning worth fixing during Prowlarr setup: Search plugin 'yggtracker.py' contains invalid version string ('1.1.') — Prowlarr-native YggTorrent (Cardigann) covers this; drop the plugin.
Recommended Prowlarr migration plan
- Standalone Prowlarr container on nullstone (already-installed
prowlarr.pybridge in qbt's nova3 will be retained — it points to127.0.0.1:9696, change to the nullstone container's hostname). - Public indexers to enable in Prowlarr directly (no creds): 1337x, ThePirateBay, TorrentGalaxy, Nyaa.si, AnimeTosho, SubsPlease, YTS, RuTracker (semi-public — needs free account), Rutor, TheRARBG, BitSearch, BTDigg, MagnetDL, KickAss, GloTorrents, SolidTorrents, EZTV (not in qbt list but worth adding).
- Spanish/regional: DonTorrent, MejorTorrent, EliteTorrent, DivxTotal, CPasBien — enable as needed.
- Game repack indexers: FitGirl Repacks, DODI Repacks, GOG-Games, OnlineFix.
- Private trackers: Skip entirely on day-1. Every plugin's credentials are placeholders → no live private accounts to bring over. If/when the user does register at e.g. RuTracker, Filelist, TorrentLeech, GGn — Prowlarr supports them natively and IP-pinning concerns apply (route through Mullvad / dedicated VPN exit, log private-tracker traffic separately from public).
- Drop entirely (no Prowlarr def + dupes / dead):
mikan_proj,dmhy_dchika,pediatorrent_dangar,rutracker_nbusseneau(keep imDMG variant only),apachetorrent,esmeraldatorrent,naranjatorrent,nekobt,redetorrent,tomadivx,torrentdownloadspro,traht,uniondht,unionfansub,c411,yggtracker(broken VERSION; YggAPI/YggTorrent covers the use case via Cardigann),tapochek,zooqle(frequently down). - Custom Newznab/Torznab YAML if the user really wants them: ApacheTorrent, c411, NaranjaTorrent, NekoBT, Tapochek, Traht, UnionFanSub.
Private-tracker IP-pinning concerns
Currently: NONE active. No credentialed private-tracker traffic ever left this machine through nova3. The migration starts clean.
Forward-looking: when private trackers do get added in Prowlarr later, every single one is by definition an IP-pinning concern — private trackers expect a stable client IP per session and ban on IP-blacklist hits / port-mismatch / leak detection. Route the qbt-nox container behind Mullvad/Gluetun (port-forward enabled for the private trackers' announce/seed) and never mix the same IP across multiple private-tracker accounts.
File pointers
- Local plugin dir (surviving uninstall):
/home/admin/.local/share/qBittorrent/nova3/engines/ - Local config dir:
/home/admin/.config/qBittorrent/(qBittorrent.conf, qBittorrent-data.conf, empty categories.json + watched_folders.json) - BT_backup:
/home/admin/.local/share/qBittorrent/BT_backup/(62 .fastresume, 45 .torrent — re-import on the new stack) - Backup tarball:
nullstone:/home/user/backups/qbt-onyx-migration/qbt-state-20260520.tar.gz - Extracted backup on nullstone:
/tmp/qbt-inspect/qBittorrent/