Browse Source

[mod] configuration to overwrite engine description

Engine description can be configured, this is needed e.g. by custom search
engines.  Here is an example of a command engine with a description in the about
section::

    - name: locate
      engine: command
      command: ['locate', '{{QUERY}}']
      disabled: true
      categories: files
      about:
        description: local files
        website: 'https://www.man7.org/linux/man-pages/man1/locate.1.html'
      delimiter:
          chars: ' '
          keys: ['line']

Closes: https://github.com/searxng/searxng/issues/788
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Markus Heiser 3 years ago
parent
commit
e0b284e427
1 changed files with 7 additions and 0 deletions
  1. 7 0
      searx/webapp.py

+ 7 - 0
searx/webapp.py

@@ -1170,6 +1170,13 @@ def engine_descriptions():
         if isinstance(description, str):
             description = [description, 'wikipedia']
         result[engine] = description
+
+    # overwrite by about:description (from settings)
+    for engine_name, engine_mod in engines.items():
+        descr = getattr(engine_mod, 'about', {}).get('description', None)
+        if descr is not None:
+            result[engine_name] = [descr, "SearXNG config"]
+
     return jsonify(result)