From 2964a24b3d82651cfd9e30f2ba659bf0f5b2579a Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Tue, 29 Jun 2021 19:46:06 +0200 Subject: [fix] utils/build_env.py and add documentation modified docs/admin/engines/settings.rst - Fix documentation and add section 'brand'. - Add remarks about **buildenv** variables. - Add remarks about settings from environment variables $SEARX_DEBUG, $SEARX_PORT, $SEARX_BIND_ADDRESS and $SEARX_SECRET modified docs/admin/installation-searx.rst & docs/build-templates/searx.rst Fix template location /templates/etc/searx/settings.yml modified docs/dev/makefile.rst Add description of the 'make buildenv' target and describe - we have all SearXNG setups are centralized in the settings.yml file - why some tasks need a utils/brand.env (aka instance's buildenv) modified manage Settings file from repository's working tree are used by default and ask user if a /etc/searx/settings.yml file exists. modified searx/settings.yml Add comments about when it is needed to run 'make buildenv' modified searx/settings_defaults.py Default for server:port is taken from enviroment variable SEARX_PORT. modified utils/build_env.py - Some defaults in the settings.yml are taken from the environment, e.g. SEARX_BIND_ADDRESS (searx.settings_defaults.SHEMA). When the 'brand.env' file is created these enviroment variables should be unset first. - The CONTACT_URL enviroment is not needed in the utils/brand.env Signed-off-by: Markus Heiser --- docs/admin/engines/settings.rst | 58 ++++++++++++++++++++++++++------------- docs/admin/installation-searx.rst | 2 +- 2 files changed, 40 insertions(+), 20 deletions(-) (limited to 'docs/admin') diff --git a/docs/admin/engines/settings.rst b/docs/admin/engines/settings.rst index 7335b9a2a..7325ea3ba 100644 --- a/docs/admin/engines/settings.rst +++ b/docs/admin/engines/settings.rst @@ -37,15 +37,13 @@ see how you can simplify your *user defined* ``settings.yml``. Global Settings =============== -``general:`` ------------- +.. _settings global brand: -.. code:: yaml +``brand:`` +------------ - general: - debug: false # Debug mode, only for development - instance_name: "searxng" # displayed name - contact_url: false # mailto:contact@example.com +If you change a value in this section, don't forget to rebuild instance's +environment (:ref:`utils/brand.env `) .. code:: yaml @@ -57,22 +55,42 @@ Global Settings public_instances: https://searx.space wiki_url: https://github.com/searxng/searxng/wiki -``debug`` : +``git_url`` & ``git_branch`` : :ref:`buildenv GIT_URL & GIT_BRANCH` + Changes this, to point to your searx fork (branch). + +``issue_url`` : :ref:`buildenv ISSUE_URL` + If you host your own issue tracker change this URL. + +``docs_url`` : :ref:`buildenv DOCS_URL` + If you host your own documentation change this URL. + +``public_instances`` : :ref:`buildenv PUBLIC_INSTANCES` + If you host your own https://searx.space change this URL. + +``wiki_url`` : :ref:`buildenv WIKI_URL` + Link to your wiki (or ``false``) + +.. _settings global general: + +``general:`` +------------ + +.. code:: yaml + + general: + debug: false # Debug mode, only for development + instance_name: "searxng" # displayed name + contact_url: false # mailto:contact@example.com + +``debug`` : ``$SEARX_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``) +.. _settings global server: ``server:`` ----------- @@ -94,16 +112,18 @@ Global Settings X-Robots-Tag : noindex, nofollow Referrer-Policy : no-referrer -``port`` & ``bind_address``: +``port`` & ``bind_address``: ``$SEARX_PORT`` & ``$SEARX_BIND_ADDRESS`` Port number and *bind address* of the searx web application if you run it directly using ``python searx/webapp.py``. Doesn't apply to searx running on Apache or Nginx. -``secret_key`` : +``secret_key`` : ``$SEARX_SECRET`` Used for cryptography purpose. -``base_url`` : +``base_url`` : :ref:`buildenv SEARX_URL ` The base URL where searx is deployed. Used to create correct inbound links. + If you change the value, don't forget to rebuild instance's environment + (:ref:`utils/brand.env `) ``image_proxy`` : Allow your instance of searx of being able to proxy images. Uses memory space. diff --git a/docs/admin/installation-searx.rst b/docs/admin/installation-searx.rst index 5c9985e8b..c5e1a05e7 100644 --- a/docs/admin/installation-searx.rst +++ b/docs/admin/installation-searx.rst @@ -94,7 +94,7 @@ For a *minimal setup*, configure like shown below – replace ``searx@$(uname .. group-tab:: Use default settings - .. literalinclude:: ../../utils/templates/etc/searx/use_default_settings.yml + .. literalinclude:: ../../utils/templates/etc/searx/settings.yml :language: yaml .. group-tab:: searx/settings.yml -- cgit v1.2.3 From f61c918dd4ea211f32874f1072ecfca0f39fcca4 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Tue, 29 Jun 2021 20:08:10 +0200 Subject: [mod] normalize .config.sh with settings.yml In commit 94851790 we have centralized all SearXNG setups in the settings.yml file: 94851790 [mod] move brand options from Makefile to settings.yml This step has not yet been completed for the installation procedures! Since all SearXNG setups are done in the settings.yml these environment variables needs to be removed from the ./conf.sh file. Scripts and other tasks running outside of an instance got the needed values from the ./utils/brand.env file. By example: ATM the environment variables of the ./config.sh file are in conflict with them from settings.yml: - PUBLIC_URL --> {server:base_url} - SEARX_INTERNAL_HTTP --> {server:bind_address}.{server:port} - GIT_BRANCH --> {brand:GIT_URL} These environment variable of a SearXNG instance and additional - SEARX_SETTINGS_TEMPLATE has been remove from the '.config.sh' file. With this patch, the main focus of ./conf.sh resists on environment variables needed for the installation of morty, filtron software. modified .config.sh: - removed no longer supported variables (see above) - add comment about: SearXNG setup in settings.yml modified utils/searx.sh: - SEARX_INTERNAL_HTTP no longer take from .config.sh - SEARX_SETTINGS_PATH /etc/searx/settings.yml - SEARX_SETTINGS_TEMPLATE obsolete modified utils/lib_install.sh: Initialize environment variables SEARX_PYENV, SEARX_SETTINGS_PATH and PUBLIC_URL. modified: utils/morty.sh Add missing hint about SEARX_SETTINGS_PATH and move PUBLIC_URL to utils/lib_install.sh modified: utils/morty.sh Move PUBLIC_URL to utils/lib_install.sh Renamed utils/templates/etc/searx/use_default_settings.yml -> settings.yml - removed option which can't be modified after installation - add some comments with examples Signed-off-by: Markus Heiser --- docs/admin/api.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/admin') diff --git a/docs/admin/api.rst b/docs/admin/api.rst index 7804a8664..8c782ea9c 100644 --- a/docs/admin/api.rst +++ b/docs/admin/api.rst @@ -87,7 +87,7 @@ HTML of the site. URL of the searx instance and values are customizable. .. code:: html -
+ -- cgit v1.2.3 From b6a55e223ce0e287adeeafce8164e411154b5423 Mon Sep 17 00:00:00 2001 From: Markus Heiser Date: Tue, 20 Jul 2021 13:16:21 +0200 Subject: [mod] reduce enviroment variables in shell scripts to what is needed Not all settings from the 'brand:' section of the YAML files are needed in the shell scripts. This patch reduce the variables in ./utils/brand.env to what is needed. The following ('brand:' settings) can be removed from this file: - ISSUE_URL - DOCS_URL - PUBLIC_INSTANCES - WIKI_URL Tasks running outside of an *installed instance*, need the following settings from the YAML configuration: - GIT_URL <--> brand.git_url - GIT_BRANCH <--> brand.git_branch - SEARX_URL <--> server.base_url (aka PUBLIC_URL) - SEARX_PORT <--> server.port - SEARX_BIND_ADDRESS <--> server.bind_address Signed-off-by: Markus Heiser --- docs/admin/engines/settings.rst | 37 ++++++++++++++++++++++--------------- 1 file changed, 22 insertions(+), 15 deletions(-) (limited to 'docs/admin') diff --git a/docs/admin/engines/settings.rst b/docs/admin/engines/settings.rst index 7325ea3ba..cab4ee493 100644 --- a/docs/admin/engines/settings.rst +++ b/docs/admin/engines/settings.rst @@ -42,9 +42,6 @@ Global Settings ``brand:`` ------------ -If you change a value in this section, don't forget to rebuild instance's -environment (:ref:`utils/brand.env `) - .. code:: yaml brand: @@ -55,19 +52,24 @@ environment (:ref:`utils/brand.env `) public_instances: https://searx.space wiki_url: https://github.com/searxng/searxng/wiki -``git_url`` & ``git_branch`` : :ref:`buildenv GIT_URL & GIT_BRANCH` +.. sidebar:: buildenv + + Changing a value tagged by :ref:`buildenv `, needs to + rebuild instance's environment :ref:`utils/brand.env `. + +``git_url`` & ``git_branch`` : :ref:`buildenv GIT_URL & GIT_BRANCH ` Changes this, to point to your searx fork (branch). -``issue_url`` : :ref:`buildenv ISSUE_URL` +``issue_url`` : If you host your own issue tracker change this URL. -``docs_url`` : :ref:`buildenv DOCS_URL` +``docs_url`` : If you host your own documentation change this URL. -``public_instances`` : :ref:`buildenv PUBLIC_INSTANCES` +``public_instances`` : If you host your own https://searx.space change this URL. -``wiki_url`` : :ref:`buildenv WIKI_URL` +``wiki_url`` : Link to your wiki (or ``false``) .. _settings global general: @@ -98,10 +100,10 @@ environment (:ref:`utils/brand.env `) .. code:: yaml server: + base_url: false # set custom base_url (or false) port: 8888 bind_address: "127.0.0.1" # address to listen on secret_key: "ultrasecretkey" # change this! - base_url: false # set custom base_url (or false) image_proxy: false # proxying image results through searx default_locale: "" # default interface locale default_theme: oscar # ui theme @@ -112,19 +114,24 @@ environment (:ref:`utils/brand.env `) X-Robots-Tag : noindex, nofollow Referrer-Policy : no-referrer -``port`` & ``bind_address``: ``$SEARX_PORT`` & ``$SEARX_BIND_ADDRESS`` - Port number and *bind address* of the searx web application if you run it - directly using ``python searx/webapp.py``. Doesn't apply to searx running on - Apache or Nginx. +.. sidebar:: buildenv -``secret_key`` : ``$SEARX_SECRET`` - Used for cryptography purpose. + Changing a value tagged by :ref:`buildenv `, needs to + rebuild instance's environment :ref:`utils/brand.env `. ``base_url`` : :ref:`buildenv SEARX_URL ` The base URL where searx is deployed. Used to create correct inbound links. If you change the value, don't forget to rebuild instance's environment (:ref:`utils/brand.env `) +``port`` & ``bind_address``: :ref:`buildenv SEARX_PORT & SEARX_BIND_ADDRESS ` + Port number and *bind address* of the searx web application if you run it + directly using ``python searx/webapp.py``. Doesn't apply to searx running on + Apache or Nginx. + +``secret_key`` : ``$SEARX_SECRET`` + Used for cryptography purpose. + ``image_proxy`` : Allow your instance of searx of being able to proxy images. Uses memory space. -- cgit v1.2.3