-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig-sample.toml
More file actions
158 lines (136 loc) · 5 KB
/
config-sample.toml
File metadata and controls
158 lines (136 loc) · 5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# Stagearr Configuration
# Copy to config.toml and customize.
# You only need to include settings you want to change from defaults.
[paths]
# File system paths - use forward slashes or double backslashes (TOML treats \ as escape)
stagingRoot = "C:/Staging"
logArchive = "C:/Logs/Stagearr"
queueRoot = "C:/Stagearr/Queue"
downloadRoot = "" # Root of torrent download folder. Required for -Rerun on multi-server setups sharing a queue.
[labels]
# Label mappings - match these to your torrent client labels
tv = "tv"
movie = "movie"
skip = "skip"
# Additional labels treated as TV (merged with 'tv')
tvLabels = ["tv", "sonarr", "series"]
# Additional labels treated as movies (merged with 'movie')
movieLabels = ["movie", "radarr", "film"]
[processing]
tvImporter = "Medusa" # Medusa | Sonarr
cleanupStaging = true # Remove staging folder after processing. Set false for debugging.
staleLockMinutes = 15 # Release lock if held longer than this (crash recovery)
[tools]
# Paths to external tools - only needed for enabled features
winrar = "C:/Program Files/WinRAR/RAR.exe"
mkvmerge = "C:/Program Files/MKVToolNix/mkvmerge.exe"
mkvextract = "C:/Program Files/MKVToolNix/mkvextract.exe"
subtitleEdit = "C:/Program Files/Subtitle Edit/SubtitleEdit.exe"
[video.mp4Remux]
# Remux MP4/M4V files to MKV container. Disable if you only have MKV files. Requires mkvmerge.
enabled = true
[subtitles]
# Subtitle handling configuration
wantedLanguages = ["eng", "nld"]
# Pattern-matched tracks only removed if a clean alternative exists in same language
namePatternsToRemove = ["Forced", "Signs", "Songs"]
[subtitles.extraction]
# Extract text subtitle tracks from MKV to SRT files. Disable if you use player's built-in track selection. Requires mkvextract.
enabled = true
# How to handle multiple tracks of the same language:
# 'all' keeps all with numeric suffixes (.en.srt, .en.1.srt)
# 'largest' keeps only the biggest track per language
duplicateLanguageMode = "largest"
[subtitles.stripping]
# Remove unwanted subtitle tracks from MKV. Disable to keep all original tracks. Requires mkvmerge.
enabled = true
[subtitles.cleanup]
# Clean subtitles with SubtitleEdit (removes HI tags, fixes common errors). Requires subtitleEdit tool.
enabled = true
[subtitles.openSubtitles]
# OpenSubtitles.com API settings (REST API v1)
enabled = true
user = "your_username"
password = "your_password"
apiKey = "your_api_key"
# Upload cleaned subtitles (extracted/external only) back to OpenSubtitles after processing
uploadCleaned = false
# Diagnostic mode: logs what would be uploaded without actually uploading. Use to verify guards before going live.
uploadDiagnosticMode = false
# Shows/movies to never upload subtitles for (e.g. shows with bad embedded subs).
# Accepts IMDB IDs (e.g. "tt2140481") or show titles (e.g. "Last Week Tonight with John Oliver").
# Title matching is case-insensitive against the OMDb/Sonarr/Radarr title.
uploadExclude = []
[subtitles.openSubtitles.filters]
# Subtitle filtering options: include, exclude, or only
hearingImpaired = "exclude"
foreignPartsOnly = "exclude"
machineTranslated = "exclude"
aiTranslated = "include"
[importers.radarr]
enabled = true
host = "localhost"
port = 7878
apiKey = "your_radarr_api_key"
ssl = false
urlRoot = "" # URL path prefix if behind reverse proxy (e.g., '/radarr')
timeoutMinutes = 10
remotePath = "" # Path translation if importer runs on different machine
importMode = "move" # move | copy
[importers.sonarr]
enabled = true
host = "localhost"
port = 8989
apiKey = "your_sonarr_api_key"
ssl = false
urlRoot = ""
timeoutMinutes = 10
remotePath = ""
importMode = "move" # move | copy
[importers.medusa]
# Alternative to Sonarr for TV (set processing.tvImporter to use)
enabled = false
host = "localhost"
port = 8081
apiKey = "your_medusa_api_key"
ssl = false
urlRoot = ""
timeoutMinutes = 15
remotePath = ""
[notifications.email]
# Email notification via SMTP. See README for subject template options.
enabled = false
to = "you@example.com"
from = "stagearr@example.com"
fromName = "Stagearr"
subjectStyle = "detailed" # detailed | quality | source | group | hash | none | custom
subjectTemplate = "{result}{label}: {name} [{resolution} {source}-{group}]"
[notifications.email.smtp]
server = "smtp.gmail.com"
port = 587
user = "your_smtp_username"
password = "your_smtp_password_or_app_password"
[notifications.email.metadata]
# auto: merges *arr ratings/genre with OMDb poster; omdb: OMDb only; none: disabled
source = "auto" # auto | omdb | none
[omdb]
# OMDb API for email enrichment. Get free key: https://www.omdbapi.com/apikey.aspx
enabled = false
apiKey = ""
timeoutSeconds = 5
[omdb.poster]
enabled = true
[omdb.display]
plot = false # Include plot synopsis in email (adds length)
plotMaxLength = 150
[updates]
# Auto-update from GitHub Releases
# "auto" = download and apply updates from GitHub Releases
# "notify" = show update available in email/console
# "off" = disable update checking
mode = "auto"
# Hours between update checks (0 = check every run)
checkIntervalHours = 24
[logging]
dateFormat = "yyyy-MM-dd HH:mm:ss"
consoleColors = true