NZBHydra 2 is a meta search for newznab indexers and torznab trackers. It provides easy access to newznab indexers and many torznab trackers via Jackett. You can search all your indexers and trackers from one place and use it as an indexer source for tools like Sonarr, Radarr, Lidarr or CouchPotato.
- Searches Anizb, BinSearch, NZBIndex and any newznab compatible indexers. Merges all results, filters them by a number of configurable restrictions, recognizes duplicates and returns them all in one place
- Add results to NZBGet or SABnzbd
- Support for all relevant media IDs (IMDB, TMDB, TVDB, TVRage, TVMaze) and conversion between them
- Query generation, meaning a query will be generated if only a media ID is provided in the search and the indexer doesn't support the ID or if no results were found
- Compatible with Sonarr, Radarr, NZBGet, SABnzbd, nzb360, CouchPotato, Mylar, LL, Sick Beard, Jackett/Cardigann, Watcher, etc.
- Search and download history and extensive stats. E.g. indexer response times, download shares, NZB age, etc.
- Authentication and multi-user support
- Automatic update of NZB download status by querying configured downloaders
- RSS support with configurable cache times
- Torrent support:
- For GUI searches, allowing you to download torrents to a blackhole folder
- A separate Torznab compatible endpoint for API requests, allowing you to merge multiple trackers
- Extensive configurability
- Save torrents in a black hole folder; Torznab API endpoint
- Migration of database and settings from v1
See some screenshots.
Honest recommendation: If you don't understand what any or most of that means this might not be for you. The program is designed to be very configurable and can be a bit intimidating at first. If you're just starting with usenet and its automation tools you might want to wait a bit until you use this. That being said, although there are a lot of options you'll likely never need most of them. I (the developer) use only half of the stuff that NZBHydra can do.
You need Java (at least 8, at most 15). If you don't have an up-to-date Java installation install OpenJDK.
Download the latest release of NZBHydra 2 for your platform ("linux" is any platform but windows). Extract it anywhere (the zip does not include a base directory) and start using the appropriate way:
- On Windows (64-bit) you can either start
NZBHydra2.exe
which will add a tray icon (give it some time) orNZBHydra2 Console.exe
which will open a console window. Note: Do not use the foldersC:\Program Files
orC:\Program Files (x86)
. - On Linux start
nzbhydra2
(currently working only on x64). You may need tochmod +x
it first. - On Mac: No executable yet, see next point
- If you cannot run the executables for some reason, there's another way (the executables are just compiled Java):
- Download nzbhydra2wrapper.py or nzbhydra2wrapperPy3.py, put it in the NZBHydra folder containing the executables and run it with Python 2.7 or Python 3.5+, respectively.
- Or you can use...
- Docker. You might want to use hotio's container, binhex's container or the one by popular maintainers LinuxServer.io.
After a while your browser should open to http://127.0.0.1:5076.
The Java executable is expected to be in the PATH. If it's not and you can't/won't put it there then you need to provide the full path using the --java
paramater.
If you get SSL errors when contacting indexers please update your Java runtime.
Please see the wiki.
- Without a "proper" indexer that supports media ID based searches (anything unlike Binsearch, NZBINdex, Anizb, etc) automation tools like Sonarr or Radarr will not work properly
- Hydra queries indexers for the latest 100 results for a given search query and aggregates them on the GUI. That means that even if you sort the results by, say, the name then older results not yet loaded may be missing. You will never know if a certain result is available unless you click the "Load more / Load all" buttons. This may require many API hits and take some time. I recommend using queries that are specific enough to return less than 100 results.
The memory usage mainly depends on the database size which depends on the amount of indexers you use, how long you've been running NZBHydra and how many queries are done.
"Normal" sized installations with five indexers should run great with the default memory settings. With a big history and a dozen or more indexers you may need to increase the memory usage (see main config), especially for calculating stats.
Bugs may/do exist. Don't run it on the machine where the nuclear launch codes are stored.
Generally testing and any bug reports are very welcome.
The backend is written in Java and uses Spring Boot with an H2 file database. Maven is used for dependency management and build.
Project structure:
core
: The main code for the projectother
: contains artifacts not needed during runtime and a proxy-patched version of SocksLibreleases
: is self explanatoryshared
: is shared code between modulestests
: contains integration tests
The frontend uses AngularJS 1.x, Bower for dependency management and gulp for build.
If you plan on doing any frontend work (JS, CSS, HTML): Please contact me first and don't just create a PR for changes on the merged CSS / JS files.
Please send merge requests to the develop branch!
I prefer "public" communication either via Reddit or Discord.
Otherwise send me an email at [email protected] or a PM at https://www.reddit.com/user/TheOtherP
You're welcome to donate:
- Bitcoin via 1LPCUF9eKEXi58nHbxTbJyfxCJkcCXKzvm
- Regular money via PayPal to [email protected]
- Via GitHub sponsors which involves a recurring donation similar to Patreon.
To Jetbrains for kindly providing me a license for IntelliJ - I can't imagine developing without it
To ej-technologies for providing me a license for their great java profiler JProfiler
To all testers, bug reporters, donators, all around awesome people; especially judhat2 for beta testing and loads of helpful feedback. Thanks to all the folk on reddit for helping out.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.