The documentation here is for an unreleased version of Recyclarr.
Visit the documentation site for the Current Version instead.Resource Providers
Resource providers give you control over where Recyclarr gets its configuration data. Instead of being locked into the official repositories, you can use custom forks, test branches, or even multiple sources for different purposes.
What Resource Providers Do
Resource providers determine where Recyclarr downloads essential data like:
- Trash Guides: Custom formats, quality settings, and naming schemes from the TRaSH community
- Config Templates: Pre-made YAML configurations for quick setup
By default, Recyclarr automatically uses the official repositories. You only need to configure resource providers if you want to use custom sources.
When You'd Use This
Common scenarios for configuring resource providers:
- Custom modifications: Use your own fork with personalized custom formats when you need to completely replace official sources
- Supplemental content: Add your own repository with additional custom formats alongside the automatic official sources
- Offline setups: Use local mirrors when internet access is restricted
Quick Start
For most users, no configuration is needed. Recyclarr automatically includes official sources:
- Official Trash Guides:
https://github.com/TRaSH-Guides/Guides.git
- Official Config Templates:
https://github.com/recyclarr/config-templates.git
Official repositories are always present automatically. You only need to configure resource providers if you want to add supplemental sources or completely replace the official ones.
If you want to add supplemental sources or replace the automatic defaults:
# yaml-language-server: $schema=https://raw.githubusercontent.com/recyclarr/recyclarr/master/schemas/settings-schema.json
resource_providers:
trash_guides:
- name: official
clone_url: https://github.com/TRaSH-Guides/Guides.git
reference: master
config_templates:
- name: official
clone_url: https://github.com/recyclarr/config-templates.git
reference: master
Basic Configuration
Replacing Official Sources
Replace the official trash guides entirely with your own fork:
resource_providers:
trash_guides:
- name: official
clone_url: https://github.com/yourname/custom-guides.git
reference: main
When you explicitly specify a repository with the name official
, it completely replaces the
automatic official repository. The automatic official sources will no longer be used.
Adding Supplemental Sources
Add your own repository with custom content alongside the automatic official sources:
resource_providers:
trash_guides:
- name: my-custom-formats
clone_url: https://github.com/yourname/extra-formats.git
config_templates:
- name: my-templates
clone_url: https://github.com/yourname/personal-templates.git
Recyclarr will automatically use the official Trash Guides and Config Templates repositories plus your additional custom sources. All content is merged together.
Repository Properties
Each repository supports these properties:
-
clone_url
(Required)
A URL compatible withgit clone
that is used to clone the repository. -
name
(Required)
Unique identifier for this repository. Must contain only letters, numbers, hyphens, and underscores. -
reference
(Optional)
Branch name, tag, or commit SHA1 to check out. Defaults to the repository's default branch.
Reference Examples
resource_providers:
trash_guides:
# Use a specific branch
- name: development
clone_url: https://github.com/TRaSH-Guides/Guides.git
reference: dev-branch
# Use a specific tag
- name: stable
clone_url: https://github.com/TRaSH-Guides/Guides.git
reference: v2.1.0
# Use a specific commit (full SHA1 or short form)
- name: tested
clone_url: https://github.com/TRaSH-Guides/Guides.git
reference: c611e9df00bf9261bddfc749219295fe189ae552
Advanced Configuration
Custom Repository Structure
When creating your own supplemental repository, organize it to match the structure used by the official repositories. Refer to the official Trash Guides and Config Templates repositories for the expected directory structure and file organization patterns.
resource_providers:
trash_guides:
- name: my-formats
clone_url: https://github.com/yourname/my-custom-formats.git
reference: main
Complete Example
Typical configuration adding supplemental content:
# yaml-language-server: $schema=https://raw.githubusercontent.com/recyclarr/recyclarr/master/schemas/settings-schema.json
# Global settings
enable_ssl_certificate_validation: true
# Resource providers (official sources are automatic)
resource_providers:
trash_guides:
- name: my-custom-formats
clone_url: https://github.com/yourname/additional-formats.git
reference: main
config_templates:
- name: my-templates
clone_url: https://github.com/yourname/personal-configs.git
reference: main
This configuration provides the automatic official Trash Guides and Config Templates plus your additional custom formats and personal templates. All sources are merged together.
Example: Complete Replacement
If you want to replace official sources entirely:
resource_providers:
trash_guides:
- name: official
clone_url: https://github.com/yourname/completely-custom-guides.git
reference: main
Using the name official
replaces the automatic official repository entirely. Only do this if
your repository contains all the guides you need.
Migration from Legacy Repositories
The old repositories
configuration is deprecated and will be removed in a future version.
Old Format (Deprecated)
repositories:
trash_guides:
clone_url: https://github.com/TRaSH-Guides/Guides.git
branch: master
sha1: c611e9df00bf9261bddfc749219295fe189ae552
config_templates:
clone_url: https://github.com/recyclarr/config-templates.git
branch: master
New Format
resource_providers:
trash_guides:
- name: official
clone_url: https://github.com/TRaSH-Guides/Guides.git
reference: c611e9df00bf9261bddfc749219295fe189ae552
config_templates:
- name: official
clone_url: https://github.com/recyclarr/config-templates.git
reference: master
Key Changes
- Multiple repositories: Can now specify multiple sources per content type
- Required naming: Each repository needs a unique
name
identifier - Unified reference:
reference
replaces bothbranch
andsha1
properties - Array format: Each content type now accepts an array of repositories
- Built-in defaults: Official repositories are included automatically
Troubleshooting
Common Issues
Repository names must be unique
# Wrong - duplicate names
resource_providers:
trash_guides:
- name: custom
clone_url: https://github.com/user1/guides.git
- name: custom # Error: duplicate name
clone_url: https://github.com/user2/guides.git
# Correct - unique names
resource_providers:
trash_guides:
- name: custom-user1
clone_url: https://github.com/user1/guides.git
- name: custom-user2
clone_url: https://github.com/user2/guides.git
Invalid characters in repository names
# Wrong - invalid characters
resource_providers:
trash_guides:
- name: my custom repo # Error: spaces not allowed
clone_url: https://github.com/user/guides.git
# Correct - valid characters only
resource_providers:
trash_guides:
- name: my-custom-repo
clone_url: https://github.com/user/guides.git
Git repository access issues If you get clone or authentication errors:
- Verify the repository URL is correct and accessible
- For private repositories, ensure your Git credentials are configured
- Check that the specified branch/reference exists in the repository
- Test the URL manually with
git clone [url]
Expected Results
After configuring resource providers:
- Recyclarr will clone/update each repository to local storage
- Multiple repositories for the same content type will be merged together
- All configured sources will be available for custom formats, templates, etc.
- Repositories with the same name will override each other (custom overrides official)
Never edit files in the locally cloned repositories managed by Recyclarr! Local changes will be destroyed when repositories are updated.