File Structure
This page describes the general file structure used by Recyclarr for its data. Many of these are platform-specific.
Application Data Directory
The application data directory is the root location for Recyclarr's files. Everything that Recyclarr reads or writes, by default, starts with this path.
Platform | Location |
---|---|
Windows | %APPDATA%\recyclarr |
Linux | ~/.config/recyclarr |
MacOS | ~/Library/Application Support/recyclarr |
Docker | /config |
Default YAML Configuration Files
Configuration files may be located in multiple places, each documented in the sections that follow. For all supported locations, the following behavior applies:
- All methods may be used together and all corresponding YAML files will be loaded.
- You don't have to use all locations; you can choose only the ones you want to use.
- If at least one configuration file is not found, it will result in an error.
- All YAML files must have the
yml
oryaml
extension.
File: recyclarr.yml
The default YAML configuration file is named recyclarr.yml
and it is always located in the
application data directory (listed above based on platform). Example (using docker path):
/config/recyclarr.yml
Directory: configs
Under the application data directory, there is a subdirectory named configs
in which you can place
any number of configuration YAML files. This system works especially well in Docker, where you don't
really have an easy way to specify custom CLI arguments. The following requirements must be met:
- All files must have the
.yml
or.yaml
extension in order to be recognized. - Every single YAML file placed here will be loaded as if every file were specified in the
--config
command line argument. This behavior is non-recursive; meaning if you place YAML files in subdirectories underconfigs/
, they will not be loaded. - The names of the files are unimportant and can be whatever you want.
Include templates should not be placed here; use the includes
directory
instead.
Include Templates Directory
A directory named includes
exists under the application data directory where local include
templates may be placed. Any relative paths to include templates will start at
this directory.
For example, if I have the following include directive in a configuration file named foo.yml
:
include:
- config: bar/reusable.yml
The expected file structure of my includes
directory would be visualized as follows:
.
├── configs/
│ └── foo.yml
└── includes/
└── bar/
└── reusable.yml
For more information about include templates, see the respective behaviors page.
Configuration files (non-includes) should not be placed here; use the configs
directory for those.