 2039060b64
			
		
	
	
		2039060b64
		
	
	
	
	
		
			
			The intention of this PR is to modernize the settings_loader implementations.
The concept is old (remember, this is partly from 2014), back then we only had
one config file, meanwhile we have had a folder with config files for a very
long time.  Callers can now load a YAML configuration from this folder as
follows ::
    settings_loader.get_yaml_cfg('my-config.yml')
- BTW this is a fix of #3557.
- Further the `existing_filename_or_none` construct dates back to times when
  there was not yet a `pathlib.Path` in all Python versions we supported in the
  past.
- Typehints have been added wherever appropriate
At the same time, this patch should also be downward compatible and not
introduce a new environment variable. The localization of the folder with the
configurations is further based on:
    SEARXNG_SETTINGS_PATH (wich defaults to /etc/searxng/settings.yml)
Which means, the default config folder is `/etc/searxng/`.
ATTENTION: intended functional changes!
 If SEARXNG_SETTINGS_PATH was set and pointed to a not existing file, the
 previous implementation silently loaded the default configuration.  This
 behavior has been changed: if the file or folder does not exist, an
 EnvironmentError exception will be thrown in future.
Closes: https://github.com/searxng/searxng/issues/3557
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
		
	
			
		
			
				
	
	
		
			28 lines
		
	
	
		
			366 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			366 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. _searxng settings.yml:
 | |
| 
 | |
| ========
 | |
| Settings
 | |
| ========
 | |
| 
 | |
| .. sidebar:: Further reading ..
 | |
| 
 | |
|    - :ref:`engine settings`
 | |
|    - :ref:`engine file`
 | |
| 
 | |
| .. toctree::
 | |
|    :maxdepth: 2
 | |
| 
 | |
|    settings
 | |
|    settings_engine
 | |
|    settings_brand
 | |
|    settings_general
 | |
|    settings_search
 | |
|    settings_server
 | |
|    settings_ui
 | |
|    settings_redis
 | |
|    settings_outgoing
 | |
|    settings_categories_as_tabs
 | |
| 
 | |
| 
 | |
| 
 |