360 lines
15 KiB
JavaScript
Executable File
360 lines
15 KiB
JavaScript
Executable File
"use strict";
|
|
// If you find yourself always using the same command-line flag, you can set it
|
|
// here as a default. For a complete guide on configuration, please visit:
|
|
// https://www.cross-seed.org
|
|
module.exports = {
|
|
/**
|
|
* WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
|
|
*
|
|
* THE NEXT 8 OPTIONS CONTAIN POTENTIALLY SENSITIVE INFORMATION
|
|
* THERE IS A NOTE WHERE YOU WILL WANT TO START COPYING FROM
|
|
* IF YOU ARE TRYING TO SHARE YOUR CONFIGURATION SETTINGS!
|
|
*
|
|
* WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! WARNING!
|
|
**/
|
|
/**
|
|
* Provide your own API key here to override the autogenerated one.
|
|
* Not recommended - prefer using the autogenerated API key via
|
|
* `cross-seed api-key`.
|
|
* Must be 24+ characters.
|
|
*/
|
|
apiKey: undefined,
|
|
/**
|
|
* List of Torznab URLs.
|
|
* For Jackett, click "Copy RSS feed".
|
|
* For Prowlarr, click on the indexer name and copy the Torznab Url, then
|
|
* append "?apikey=YOUR_PROWLARR_API_KEY". Wrap each URL in quotation marks
|
|
* and separate them with commas, and surround the entire set in brackets.
|
|
* https://www.cross-seed.org/docs/basics/getting-started#3-edit-the-config-file
|
|
*/
|
|
torznab: ["http://prowlarr:9696/10/api?apikey=4ca11118b88f4a908256d4a393960e77",
|
|
/* "https://prowlarr.sandstorm.chat/6/api?apikey=4ca11118b88f4a908256d4a393960e77&extended=1&t=search",
|
|
* "https://prowlarr.sandstorm.chat/7/api?apikey=4ca11118b88f4a908256d4a393960e77&extended=1&t=search",
|
|
* "https://prowlarr.sandstorm.chat/12/api?apikey=4ca11118b88f4a908256d4a393960e77&extended=1&t=search",
|
|
*/ ],
|
|
/**
|
|
* URL(s) to your Sonarr instance(s). For benefits and usage, please read:
|
|
* https://www.cross-seed.org/docs/tutorials/id-searching
|
|
*
|
|
* You should order these in most likely to match -> the least likely order.
|
|
* They are searched sequentially as they are listed.
|
|
*/
|
|
sonarr: ["http://sonarr:8989/?apikey=f2c1b9d4e20442b59276d6d4b1bfb9c5"],
|
|
/**
|
|
* URL(s) to your Radarr instance(s). For benefits and usage, please read:
|
|
* https://www.cross-seed.org/docs/tutorials/id-searching
|
|
*
|
|
* You should order these in most likely to match -> the least likely order.
|
|
* They are searched sequentially as they are listed.
|
|
*/
|
|
radarr: ["http://radarr:7878/?apikey=0f35ffd32615487aa5bce56d608019cd"],
|
|
/**
|
|
* Bind to a specific host address. Do not change without a good reason.
|
|
* Example: "127.0.0.1"
|
|
* Default is "0.0.0.0"
|
|
*/
|
|
host: "0.0.0.0",
|
|
/**
|
|
* The port you wish to listen on for daemon mode.
|
|
*/
|
|
port: 2468,
|
|
/**
|
|
* cross-seed will send caronc/apprise POST requests to these urls
|
|
* with a JSON payload of:
|
|
* https://www.cross-seed.org/docs/basics/options#notificationwebhookurls
|
|
*/
|
|
notificationWebhookUrls: [],
|
|
/**
|
|
* The urls of your torrent clients' web interfaces prefixed by their type.
|
|
* You may need to urlencode your username and password if they contain special characters:
|
|
* https://www.cross-seed.org/docs/basics/faq-troubleshooting#can-i-use-special-characters-in-my-urls
|
|
*
|
|
* torrentClients: ["qbittorrent:http://username:password@localhost:8080"]
|
|
* If using Automatic Torrent Management, please read:
|
|
* https://www.cross-seed.org/docs/v6-migration#new-folder-structure-for-links
|
|
*
|
|
* torrentClients: ["rtorrent:http://username:password@localhost:1234/RPC2"]
|
|
*
|
|
* torrentClients: ["transmission:http://username:password@localhost:9091/transmission/rpc"]
|
|
*
|
|
* torrentClients: ["deluge:http://:password@localhost:8112/json"]
|
|
* Deluge with Docker can have a desyncing issue with the WebUI daemon after prolonged uptime
|
|
* with useClientTorrents, if you notice strange behavior you may need to use torrentDir instead.
|
|
*
|
|
* You can optionally add readonly: after the prefix to use a client as a
|
|
* source for finding cross seeds but not for injecting.
|
|
* e.g. "qbittorrent:readonly:http://username:password@localhost:8080"
|
|
* https://www.cross-seed.org/docs/basics/options#torrentclients
|
|
*/
|
|
torrentClients: [
|
|
"qbittorrent:http://admin:XQSrU5PUx%25JnSt2rHGv2CrH2mUFg6iVt%23WsLC%259qdJygRBM%21opEGbW2QVeWVNma%21tL%25zimxb%21VM%40jxjJ%2356pGH9UqXnMtug%40du%26h9pd%21RLoTN4W%40a%40MABAE9%21GGJB5cc@gluetun:8081"
|
|
],
|
|
/**
|
|
* END OF POTENTIALLY SENSITIVE CONFIGURATION OPTIONS
|
|
*/
|
|
/**
|
|
* Use the torrents already in your torrent client to find matches.
|
|
* This is the preferred method of cross-seeding, only set to false
|
|
* if you want to EXCLUSIVELY use dataDirs.
|
|
*
|
|
* Deluge with Docker can have a desyncing issue with the WebUI daemon after prolonged uptime
|
|
* with useClientTorrents, if you notice strange behavior you may need to use torrentDir instead.
|
|
*/
|
|
useClientTorrents: true,
|
|
/**
|
|
* Pause at least this many seconds in between each search. Higher is safer
|
|
* for you and friendlier for trackers.
|
|
* Minimum value of 30.
|
|
*/
|
|
delay: 30,
|
|
/**
|
|
* Find matches based on the data in these directories, this may not be
|
|
* necessary for your setup.
|
|
*
|
|
* PLEASE READ THE FOLLOWING DOCUMENTATION BEFORE SETTING THIS UP:
|
|
* https://www.cross-seed.org/docs/tutorials/data-based-matching
|
|
*/
|
|
dataDirs: ["/data/torrents/"],
|
|
/**
|
|
* Defines what qBittorrent or Deluge category to set on linked torrents
|
|
*
|
|
* qBittorrent: If you have linking enabled, all torrents will be injected
|
|
* to this category.
|
|
*
|
|
* Default is "cross-seed-link".
|
|
*/
|
|
linkCategory: "cross-seed-link",
|
|
/**
|
|
* cross-seed will create links to matched files in the specified directories.
|
|
* This is necessary for the best cross seeding experience.
|
|
*
|
|
* PLEASE READ THE FOLLOWING DOCUMENTATION BEFORE SETTING THIS UP:
|
|
* https://www.cross-seed.org/docs/tutorials/linking
|
|
*/
|
|
linkDirs: ["/data/linkdirs"],
|
|
/**
|
|
* cross-seed will use links of this type to inject matches into your client.
|
|
* Options: "symlink", "hardlink", "reflink".
|
|
*
|
|
* https://www.cross-seed.org/docs/tutorials/linking#hardlinks-vs-symlinks-vs-reflinks
|
|
*/
|
|
linkType: "hardlink",
|
|
/**
|
|
* Enabling this will link files using v5's flat folder style, not recommended.
|
|
*
|
|
* Each individual Torznab tracker's cross-seeds, otherwise, will have its
|
|
* own folder with the tracker's name and it's links within it.
|
|
*
|
|
* If using Automatic Torrent Management in qBittorrent, please read:
|
|
* https://www.cross-seed.org/docs/v6-migration#new-folder-structure-for-links
|
|
*
|
|
* Default: false.
|
|
*/
|
|
flatLinking: false,
|
|
/**
|
|
* Determines flexibility of the matching algorithm, all options are equally safe.
|
|
* Using "partial" is recommended as it will match all possible cross seeds.
|
|
* Options: "strict", "flexible", "partial".
|
|
*
|
|
* "strict" requires all file names to match exactly (required if not linking).
|
|
*
|
|
* "flexible" allows for file renames or inconsistencies.
|
|
*
|
|
* "partial" is like "flexible" but allows matches even if they are missing small
|
|
* files like .nfo/.srt.
|
|
*
|
|
* We recommend reading the following entries:
|
|
* https://www.cross-seed.org/docs/tutorials/partial-matching
|
|
* https://www.cross-seed.org/docs/basics/faq-troubleshooting#my-partial-matches-from-related-searches-are-missing-the-same-data-how-can-i-only-download-it-once
|
|
*/
|
|
matchMode: "partial",
|
|
/**
|
|
* Skip rechecking on injection if unnecessary. Certain matches, such as partial,
|
|
* will always be rechecked. Set to false to recheck all torrents before resuming.
|
|
*/
|
|
skipRecheck: true,
|
|
/**
|
|
* The maximum size in bytes remaining for a torrent to be resumed.
|
|
* Must be in the range of 0 to 52428800 (50 MiB).
|
|
* https://www.cross-seed.org/docs/basics/faq-troubleshooting#my-partial-matches-from-related-searches-are-missing-the-same-data-how-can-i-only-download-it-once
|
|
*/
|
|
autoResumeMaxDownload: 52428800,
|
|
/**
|
|
* If set to `true` and the amount remaining is above autoResumeMaxDownload,
|
|
* resume if accumulated size of the missing files is less than the
|
|
* accumulated size of the known-irrelevant files such as nfo, sample, txt,
|
|
* subs, proofs, and bonus/commentary files present in the torrent.
|
|
* https://www.cross-seed.org/docs/basics/faq-troubleshooting#my-partial-matches-from-related-searches-are-missing-the-same-data-how-can-i-only-download-it-once
|
|
*/
|
|
ignoreNonRelevantFilesToResume: true,
|
|
/**
|
|
* Determines how deep into the specified dataDirs to go to generate new
|
|
* searchees.
|
|
*
|
|
* PLEASE READ THE FOLLOWING DOCUMENTATION BEFORE CHANGING THIS VALUE:
|
|
* https://www.cross-seed.org/docs/tutorials/data-based-matching#setting-up-data-based-matching
|
|
*/
|
|
maxDataDepth: 3,
|
|
/**
|
|
* Directory containing your client's internal .torrent files.
|
|
* This is unnecessary with useClientTorrents.
|
|
*
|
|
* PLEASE READ THE FOLLOWING DOCUMENTATION BEFORE SETTING THIS UP:
|
|
* https://www.cross-seed.org/docs/basics/options#torrentdir
|
|
*/
|
|
torrentDir: null,
|
|
/**
|
|
* With action: "inject", cross-seed will use this directory to retry
|
|
* injections. This directory will be empty nearly all the time.
|
|
* https://www.cross-seed.org/docs/v6-migration#failed-injection-saved-retry
|
|
* If you are using action: "save", this will be the directory where the
|
|
* .torrent files are saved.
|
|
*
|
|
* DO NOT USE THIS DIRECTORY AS A WATCH FOLDER FOR YOUR TORRENT CLIENT
|
|
*
|
|
* You do not need to change this from null. It will map into your cross-seed
|
|
* config directory: https://www.cross-seed.org/docs/basics/options#outputdir
|
|
*/
|
|
outputDir: null,
|
|
/**
|
|
* Whether to include single episode torrents in search/webhook/rss.
|
|
*
|
|
* This setting does not affect matching episodes from announce. Read more about usage:
|
|
* https://www.cross-seed.org/docs/v6-migration#updated-includesingleepisodes-behavior
|
|
*/
|
|
includeSingleEpisodes: true,
|
|
/**
|
|
* Include torrents/data that are mainly comprised of non-video files.
|
|
*
|
|
* If this option is set to false, any folders or torrents whose
|
|
* totalNonVideoFilesSize / totalSize > fuzzySizeThreshold
|
|
* will be excluded.
|
|
*
|
|
* For example, if you have .srt or .nfo files inside a torrent, using
|
|
* false will still allow the torrent to be considered for cross-seeding
|
|
* while disallowing torrents that are music, games, books, etc.
|
|
* For full disc based folders (not .ISO) you may wish to set this as true.
|
|
*/
|
|
includeNonVideos: false,
|
|
/**
|
|
* Match season packs from the individual episodes you already have.
|
|
* https://www.cross-seed.org/docs/basics/faq-troubleshooting#my-partial-matches-from-related-searches-are-missing-the-same-data-how-can-i-only-download-it-once
|
|
*
|
|
* null - disabled (required if not linking)
|
|
* 1 - must have all episodes (values below 1 requires matchMode: "partial")
|
|
* 0.8 - must have at least 80% of the episodes
|
|
*/
|
|
seasonFromEpisodes: null,
|
|
/**
|
|
* You should NOT modify this unless you have good reason.
|
|
* The following option is the preliminary value to compare sizes of
|
|
* releases for further comparison.
|
|
*
|
|
* decimal value (0.02 = 2%)
|
|
*/
|
|
fuzzySizeThreshold: 0.02,
|
|
/**
|
|
* Time based options below use the following format:
|
|
* https://github.com/vercel/ms
|
|
*/
|
|
/**
|
|
* Exclude torrents or data first seen by cross-seed more than this long ago.
|
|
* Examples:
|
|
* "2 weeks" - if you want to search multiple times quickly
|
|
* "450 days" - if you rather spread out the searches over a long period
|
|
*
|
|
* This value must be in the range of 2-5 times your excludeRecentSearch
|
|
*/
|
|
excludeOlder: "2 weeks",
|
|
/**
|
|
* Exclude torrents or data which has been searched more recently than this
|
|
* long ago. Previously failed searches ignore this value per tracker.
|
|
*
|
|
* Examples:
|
|
* "3 days" - if you want to search multiple times quickly
|
|
* "90 days" - if you rather spread out the searches over a long period
|
|
*
|
|
* This value must be 2-5x less than excludeOlder.
|
|
*/
|
|
excludeRecentSearch: "3 days",
|
|
/**
|
|
* Which action to take upon a match being found.
|
|
* Options: "save", "inject".
|
|
*
|
|
* https://www.cross-seed.org/docs/tutorials/injection
|
|
*/
|
|
action: "inject",
|
|
/**
|
|
* qBittorrent and Deluge specific.
|
|
* Whether to inject using the same labels/categories as the original
|
|
* torrent.
|
|
*
|
|
* qBittorrent (linking): The category will always be linkCategory.
|
|
* If set to true, a tag of category.cross-seed will be added.
|
|
*
|
|
* Example (Non-Linking): if you have an original label/category called
|
|
* "Movies", this will automatically inject cross-seeds to
|
|
* "Movies.cross-seed".
|
|
*/
|
|
duplicateCategories: false,
|
|
/**
|
|
* Run rss scans on a schedule. Set to undefined or null to disable.
|
|
* Minimum of 10 minutes.
|
|
*
|
|
* Examples:
|
|
* "30 minutes"
|
|
* "1 hour"
|
|
*
|
|
* To cross seed new releases as soon as they are uploaded, use announce:
|
|
* https://www.cross-seed.org/docs/tutorials/announce
|
|
*/
|
|
rssCadence: "30 minutes",
|
|
/**
|
|
* Run searches on a schedule. Set to undefined or null to disable.
|
|
* Minimum of 1 day.
|
|
*
|
|
* Examples:
|
|
* "1 day" - there is not much value in setting this above "1 day"
|
|
*
|
|
* This value must be at least 3x less than your excludeRecentSearch.
|
|
* To trigger a search on download completion, use webhook:
|
|
* https://www.cross-seed.org/docs/tutorials/triggering-searches
|
|
*/
|
|
searchCadence: "1 day",
|
|
/**
|
|
* Fail snatch requests that haven't responded after this long.
|
|
* Set to null for an infinite timeout.
|
|
*
|
|
* Examples:
|
|
* "30 seconds"
|
|
* null
|
|
*/
|
|
snatchTimeout: "30 seconds",
|
|
/**
|
|
* Fail search requests that haven't responded after this long.
|
|
* Set to null for an infinite timeout.
|
|
*
|
|
* Examples:
|
|
* "2 minutes"
|
|
* null
|
|
*/
|
|
searchTimeout: "2 minutes",
|
|
/**
|
|
* The number of searches (unique queries) to make in one run/batch per indexer.
|
|
* If more than this many searches are queued,
|
|
* "searchCadence" will determine how long until the next batch.
|
|
*
|
|
* Combine this with "excludeRecentSearch" and "searchCadence" to smooth
|
|
* long-term API usage patterns.
|
|
*
|
|
* Set to null for no limit.
|
|
*/
|
|
searchLimit: 400,
|
|
/**
|
|
* Ignore torrents or data containing these properties:
|
|
* https://www.cross-seed.org/docs/basics/options#blocklist
|
|
*/
|
|
blockList: [],
|
|
};
|
|
//# sourceMappingURL=config.template.cjs.map
|