diff options
| author | Alexandre Flament <alex@al-f.net> | 2021-01-12 10:52:42 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-01-12 10:52:42 +0100 |
| commit | 9c55d772e98f5e51da4a34389dc240cfb3b14852 (patch) | |
| tree | 50f857bf046ab179eee935d40b9e63da7372171e /docs | |
| parent | 8d0312d014f09fad2133b6e6c6b597cc08e4daf0 (diff) | |
| parent | 424e6abc7e26c3e3be71678d00f88cf09d6c0a7e (diff) | |
Merge pull request #2408 from return42/rm-brand-make
[mod] move brand options from Makefile to settings.yml
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/admin/installation-searx.rst | 13 | ||||
| -rw-r--r-- | docs/admin/installation.rst | 2 | ||||
| -rw-r--r-- | docs/admin/settings.rst | 168 | ||||
| -rw-r--r-- | docs/blog/lxcdev-202006.rst | 4 | ||||
| -rw-r--r-- | docs/conf.py | 38 | ||||
| -rw-r--r-- | docs/dev/makefile.rst | 40 | ||||
| -rw-r--r-- | docs/utils/index.rst | 4 |
7 files changed, 149 insertions, 120 deletions
diff --git a/docs/admin/installation-searx.rst b/docs/admin/installation-searx.rst index 3f8904a1d..512a185a7 100644 --- a/docs/admin/installation-searx.rst +++ b/docs/admin/installation-searx.rst @@ -70,13 +70,20 @@ from the login (*~/.profile*): Configuration ============= +.. sidebar:: ``use_default_settings: True`` + + - :ref:`settings global` + - :ref:`settings location` + - :ref:`settings use_default_settings` + - :origin:`/etc/searx/settings.yml <utils/templates/etc/searx/use_default_settings.yml>` + To create a initial ``/etc/searx/settings.yml`` you can start with a copy of the file :origin:`utils/templates/etc/searx/use_default_settings.yml`. This setup -:option:ref:`use default settings <settings use_default_settings>` from +:ref:`use default settings <settings use_default_settings>` from :origin:`searx/settings.yml` and is recommended since :pull:`2291` is merged. -For minimal Setup, configure like shown below – replace ``searx@\$(uname -n)`` -with a name of your choice, set ``ultrasecretkey`` -- *and/or* edit +For a *minimal setup*, configure like shown below – replace ``searx@$(uname +-n)`` with a name of your choice, set ``ultrasecretkey`` -- *and/or* edit ``/etc/searx/settings.yml`` to your needs. .. kernel-include:: $DOCS_BUILD/includes/searx.rst diff --git a/docs/admin/installation.rst b/docs/admin/installation.rst index 4a301ecf8..8a066dec7 100644 --- a/docs/admin/installation.rst +++ b/docs/admin/installation.rst @@ -76,6 +76,6 @@ If all services are running fine, you can add it to your HTTP server: .. tip:: About script's installation options have a look at chapter :ref:`toolboxing - setup`. How to brand your instance see chapter :ref:`makefile setup`. To + setup`. How to brand your instance see chapter :ref:`settings global`. To *stash* your instance's setup, `git stash`_ your clone's :origin:`Makefile` and :origin:`.config.sh` file . diff --git a/docs/admin/settings.rst b/docs/admin/settings.rst index 985c16f85..7cf055dbf 100644 --- a/docs/admin/settings.rst +++ b/docs/admin/settings.rst @@ -27,7 +27,8 @@ First, searx will try to load settings.yml from these locations: 1. the full path specified in the ``SEARX_SETTINGS_PATH`` environment variable. 2. ``/etc/searx/settings.yml`` -If these files don't exist (or are empty or can't be read), searx uses the :origin:`searx/settings.yml` file. +If these files don't exist (or are empty or can't be read), searx uses the +:origin:`searx/settings.yml` file. .. _settings global: @@ -35,16 +36,46 @@ If these files don't exist (or are empty or can't be read), searx uses the :orig Global Settings =============== +``general:`` +------------ + .. code:: yaml general: debug : False # Debug mode, only for development instance_name : "searx" # displayed name + git_url: https://github.com/searx/searx + git_branch: master + issue_url: https://github.com/searx/searx/issues + docs_url: https://searx.github.io/searx + public_instances: https://searx.space + contact_url: False # mailto:contact@example.com + wiki_url: https://github.com/searx/searx/wiki + twitter_url: https://twitter.com/Searx_engine ``debug`` : Allow a more detailed log if you run searx directly. Display *detailed* error messages in the browser too, so this must be deactivated in production. +``contact_url``: + Contact ``mailto:`` address or WEB form. + +``git_url`` and ``git_branch``: + Changes this, to point to your searx fork (branch). + +``docs_url`` + If you host your own documentation, change this URL. + +``wiki_url``: + Link to your wiki (or ``False``) + +``twitter_url``: + Link to your tweets (or ``False``) + + +``server:`` +----------- + .. code:: yaml server: @@ -90,6 +121,8 @@ Global Settings ``default_http_headers``: Set additional HTTP headers, see `#755 <https://github.com/searx/searx/issues/715>`__ +``outgoing:`` +------------- .. code:: yaml @@ -139,6 +172,10 @@ Global Settings If you use multiple network interfaces, define from which IP the requests must be made. This parameter is ignored when ``proxies`` is set. + +``locales:`` +------------ + .. code:: yaml locales: @@ -244,61 +281,76 @@ Engine settings use_default_settings ==================== -.. note:: - - If searx is cloned from a git repository, most probably there is no need to have an user settings. - -The user defined settings.yml can relied on the default configuration :origin:`searx/settings.yml` using ``use_default_settings: True``. +.. sidebar:: ``use_default_settings: True`` -In the following example, the actual settings are the default settings defined in :origin:`searx/settings.yml` with the exception of the ``secret_key`` and the ``bind_address``: - -.. code-block:: yaml - - use_default_settings: True - server: - secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" - bind_address: "0.0.0.0" - -With ``use_default_settings: True``, each settings can be override in a similar way, the ``engines`` section is merged according to the engine ``name``. - -In this example, searx will load all the engine and the arch linux wiki engine has a :ref:`token<private engines>`: - -.. code-block:: yaml - - use_default_settings: True - server: - secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" - engines: - - name: arch linux wiki - tokens: ['$ecretValue'] - -It is possible to remove some engines from the default settings. The following example is similar to the above one, but searx doesn't load the the google engine: - -.. code-block:: yaml - - use_default_settings: - engines: - remove: - - google - server: - secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" - engines: - - name: arch linux wiki - tokens: ['$ecretValue'] - -As an alternative, it is possible to specify the engines to keep. In the following example, searx has only two engines: - -.. code-block:: yaml - - use_default_settings: - engines: - keep_only: - - google - - duckduckgo - server: - secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" - engines: - - name: google - tokens: ['$ecretValue'] - - name: duckduckgo - tokens: ['$ecretValue'] + - :ref:`settings location` + - :ref:`use_default_settings.yml` + - :origin:`/etc/searx/settings.yml <utils/templates/etc/searx/use_default_settings.yml>` + +The user defined ``settings.yml`` is loaded from the :ref:`settings location` +and can relied on the default configuration :origin:`searx/settings.yml` using: + + ``use_default_settings: True`` + +``server:`` + In the following example, the actual settings are the default settings defined + in :origin:`searx/settings.yml` with the exception of the ``secret_key`` and + the ``bind_address``: + + .. code-block:: yaml + + use_default_settings: True + server: + secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" + bind_address: "0.0.0.0" + +``engines:`` + With ``use_default_settings: True``, each settings can be override in a + similar way, the ``engines`` section is merged according to the engine + ``name``. In this example, searx will load all the engine and the arch linux + wiki engine has a :ref:`token<private engines>`: + + .. code-block:: yaml + + use_default_settings: True + server: + secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" + engines: + - name: arch linux wiki + tokens: ['$ecretValue'] + +``engines:`` / ``remove:`` + It is possible to remove some engines from the default settings. The following + example is similar to the above one, but searx doesn't load the the google + engine: + + .. code-block:: yaml + + use_default_settings: + engines: + remove: + - google + server: + secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" + engines: + - name: arch linux wiki + tokens: ['$ecretValue'] + +``engines:`` / ``keep_only:`` + As an alternative, it is possible to specify the engines to keep. In the + following example, searx has only two engines: + + .. code-block:: yaml + + use_default_settings: + engines: + keep_only: + - google + - duckduckgo + server: + secret_key: "uvys6bRhKHUdFF5CqbJonSDSRN8H0sCBziNSrDGNVdpz7IeZhveVart3yvghoKHA" + engines: + - name: google + tokens: ['$ecretValue'] + - name: duckduckgo + tokens: ['$ecretValue'] diff --git a/docs/blog/lxcdev-202006.rst b/docs/blog/lxcdev-202006.rst index b8d470d4e..2bea19807 100644 --- a/docs/blog/lxcdev-202006.rst +++ b/docs/blog/lxcdev-202006.rst @@ -259,8 +259,8 @@ suite. For this, we have to keep an eye on the :ref:`installation basic`: - virtualenv in: ``/usr/local/searx/searx-pyenv`` - searx software in: ``/usr/local/searx/searx-src`` -The searx software is a clone of the ``GIT_URL`` (see :ref:`makefile setup`) and -the working tree is checked out from the ``GIT_BRANCH``. With the use of the +The searx software is a clone of the ``git_url`` (see :ref:`settings global`) and +the working tree is checked out from the ``git_branch``. With the use of the :ref:`searx.sh` the searx service was installed as :ref:`uWSGI application <searx uwsgi>`. To maintain this service, we can use ``systemctl`` (compare :ref:`service architectures on distributions <uwsgi configuration>`). diff --git a/docs/conf.py b/docs/conf.py index 0c07761a8..e467c6262 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -2,14 +2,10 @@ import sys, os from sphinx_build_tools import load_sphinx_config -from searx.version import VERSION_STRING from pallets_sphinx_themes import ProjectLink -from searx.brand import GIT_URL -GIT_BRANCH = os.environ.get("GIT_BRANCH", "master") -from searx.brand import SEARX_URL -from searx.brand import DOCS_URL - +from searx import brand +from searx.version import VERSION_STRING # Project -------------------------------------------------------------- @@ -46,10 +42,10 @@ extlinks['wiki'] = ('https://github.com/searx/searx/wiki/%s', ' ') extlinks['pull'] = ('https://github.com/searx/searx/pull/%s', 'PR ') # links to custom brand -extlinks['origin'] = (GIT_URL + '/blob/' + GIT_BRANCH + '/%s', 'git://') -extlinks['patch'] = (GIT_URL + '/commit/%s', '#') -extlinks['search'] = (SEARX_URL + '/%s', '#') -extlinks['docs'] = (DOCS_URL + '/%s', 'docs: ') +extlinks['origin'] = (brand.GIT_URL + '/blob/' + brand.GIT_BRANCH + '/%s', 'git://') +extlinks['patch'] = (brand.GIT_URL + '/commit/%s', '#') +extlinks['search'] = (brand.SEARX_URL + '/%s', '#') +extlinks['docs'] = (brand.DOCS_URL + '/%s', 'docs: ') extlinks['pypi'] = ('https://pypi.org/project/%s', 'PyPi: ') extlinks['man'] = ('https://manpages.debian.org/jump?q=%s', '') #extlinks['role'] = ( @@ -104,14 +100,20 @@ imgmath_font_size = 14 # sphinx.ext.imgmath setup END html_theme_options = {"index_sidebar_logo": True} -html_context = { - "project_links": [ - ProjectLink("Source", GIT_URL), - ProjectLink("Wiki", "https://github.com/searx/searx/wiki"), - ProjectLink("Public instances", "https://searx.space/"), - ProjectLink("Twitter", "https://twitter.com/Searx_engine"), - ] -} +html_context = {"project_links": [] } +if brand.GIT_URL: + html_context["project_links"].append(ProjectLink("Source", brand.GIT_URL)) +if brand.WIKI_URL: + html_context["project_links"].append(ProjectLink("Wiki", brand.WIKI_URL)) +if brand.PUBLIC_INSTANCES: + html_context["project_links"].append(ProjectLink("Public instances", brand.PUBLIC_INSTANCES)) +if brand.TWITTER_URL: + html_context["project_links"].append(ProjectLink("Twitter", brand.TWITTER_URL)) +if brand.ISSUE_URL: + html_context["project_links"].append(ProjectLink("Issue Tracker", brand.ISSUE_URL)) +if brand.CONTACT_URL: + html_context["project_links"].append(ProjectLink("Contact", brand.CONTACT_URL)) + html_sidebars = { "**": ["project.html", "relations.html", "searchbox.html"], } diff --git a/docs/dev/makefile.rst b/docs/dev/makefile.rst index c43855617..f93855927 100644 --- a/docs/dev/makefile.rst +++ b/docs/dev/makefile.rst @@ -8,8 +8,7 @@ Makefile Targets .. sidebar:: build environment - Before looking deeper at the targets, first read about :ref:`makefile setup` - and :ref:`make pyenv`. + Before looking deeper at the targets, first read about :ref:`make pyenv`. To install system requirements follow :ref:`buildhosts`. @@ -28,37 +27,6 @@ Calling the ``help`` target gives a first overview (``make help``): :local: :backlinks: entry - -.. _makefile setup: - -Makefile setup -============== - -.. _git stash: https://git-scm.com/docs/git-stash - -.. sidebar:: fork & upstream - - Commit changes in your (local) branch, fork or whatever, but do not push them - upstream / `git stash`_ is your friend. - -The main setup is done in the :origin:`Makefile`. - -.. literalinclude:: ../../Makefile - :start-after: START Makefile setup - :end-before: END Makefile setup - -:GIT_URL: Changes this, to point to your searx fork. -:GIT_BRANCH: Changes this, to point to your searx branch. -:SEARX_URL: Changes this, to point to your searx instance. -:DOCS_URL: If you host your own (*brand*) documentation, change this URL. - -If you change any of this build environment variables, you have to run ``make -buildenv``:: - - $ make buildenv - build searx/brand.py - build utils/brand.env - .. _make pyenv: Python environment @@ -148,7 +116,7 @@ clean`` stop all processes using :ref:`make pyenv`. We describe the usage of the ``doc*`` targets in the :ref:`How to contribute / Documentation <contrib docs>` section. If you want to edit the documentation read our :ref:`make docs-live` section. If you are working in your own brand, -adjust your :ref:`Makefile setup <makefile setup>`. +adjust your :ref:`settings global`. .. _make books: @@ -185,8 +153,8 @@ Use ``make docs-help`` to see which books available: ``make gh-pages`` ================= -To deploy on github.io first adjust your :ref:`Makefile setup <makefile -setup>`. For any further read :ref:`deploy on github.io`. +To deploy on github.io first adjust your :ref:`settings global`. For any +further read :ref:`deploy on github.io`. .. _make test: diff --git a/docs/utils/index.rst b/docs/utils/index.rst index ada78cef3..28515318f 100644 --- a/docs/utils/index.rst +++ b/docs/utils/index.rst @@ -47,8 +47,8 @@ Scripts to maintain services often dispose of common commands and environments. Tooling box setup ================= -The main setup is done in the :origin:`.config.sh` (read also :ref:`makefile -setup`). +The main setup is done in the :origin:`.config.sh` (read also :ref:`settings +global`). .. literalinclude:: ../../.config.sh :language: bash |