mirror of
				https://github.com/searxng/searxng.git
				synced 2025-10-31 10:37:06 -04:00 
			
		
		
		
	Merge pull request #318 from return42/fix-doc-brand
[brand] docs - normalize project name to SearXNG
This commit is contained in:
		
						commit
						aba3566fbd
					
				| @ -83,7 +83,7 @@ Embed search bar | |||||||
| ================ | ================ | ||||||
| 
 | 
 | ||||||
| The search bar can be embedded into websites.  Just paste the example into the | The search bar can be embedded into websites.  Just paste the example into the | ||||||
| HTML of the site.  URL of the searx instance and values are customizable. | HTML of the site.  URL of the SearXNG instance and values are customizable. | ||||||
| 
 | 
 | ||||||
| .. code:: html | .. code:: html | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -14,10 +14,10 @@ Architecture | |||||||
|    - Searx: :ref:`installation basic` |    - Searx: :ref:`installation basic` | ||||||
| 
 | 
 | ||||||
| Herein you will find some hints and suggestions about typical architectures of | Herein you will find some hints and suggestions about typical architectures of | ||||||
| searx infrastructures. | SearXNG infrastructures. | ||||||
| 
 | 
 | ||||||
| We start with a contribution from :pull-searx:`@dalf <1776#issuecomment-567917320>`. | We start with a contribution from :pull-searx:`@dalf <1776#issuecomment-567917320>`. | ||||||
| It shows a *reference* setup for public searx instances which can build up and | It shows a *reference* setup for public SearXNG instances which can build up and | ||||||
| maintained by the scripts from our :ref:`toolboxing`. | maintained by the scripts from our :ref:`toolboxing`. | ||||||
| 
 | 
 | ||||||
| .. _arch public: | .. _arch public: | ||||||
| @ -25,4 +25,4 @@ maintained by the scripts from our :ref:`toolboxing`. | |||||||
| .. kernel-figure:: arch_public.dot | .. kernel-figure:: arch_public.dot | ||||||
|    :alt: arch_public.dot |    :alt: arch_public.dot | ||||||
| 
 | 
 | ||||||
|    Reference architecture of a public searx setup. |    Reference architecture of a public SearXNG setup. | ||||||
|  | |||||||
| @ -42,7 +42,7 @@ Extra Dependencies | |||||||
| ------------------ | ------------------ | ||||||
| 
 | 
 | ||||||
| For using :ref:`engine redis_server` or :ref:`engine mongodb` you need to | For using :ref:`engine redis_server` or :ref:`engine mongodb` you need to | ||||||
| install additional packages in Python's Virtual Environment of your SearxNG | install additional packages in Python's Virtual Environment of your SearXNG | ||||||
| instance.  To switch into the environment (:ref:`searx-src`) you can use | instance.  To switch into the environment (:ref:`searx-src`) you can use | ||||||
| :ref:`searx.sh`:: | :ref:`searx.sh`:: | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -27,7 +27,7 @@ The initial ``settings.yml`` we be load from these locations: | |||||||
| 1. the full path specified in the ``SEARX_SETTINGS_PATH`` environment variable. | 1. the full path specified in the ``SEARX_SETTINGS_PATH`` environment variable. | ||||||
| 2. ``/etc/searx/settings.yml`` | 2. ``/etc/searx/settings.yml`` | ||||||
| 
 | 
 | ||||||
| If these files don't exist (or are empty or can't be read), searx uses the | If these files don't exist (or are empty or can't be read), SearXNG uses the | ||||||
| :origin:`searx/settings.yml` file.  Read :ref:`settings use_default_settings` to | :origin:`searx/settings.yml` file.  Read :ref:`settings use_default_settings` to | ||||||
| see how you can simplify your *user defined* ``settings.yml``. | see how you can simplify your *user defined* ``settings.yml``. | ||||||
| 
 | 
 | ||||||
| @ -71,11 +71,11 @@ Global Settings | |||||||
| 
 | 
 | ||||||
|    general: |    general: | ||||||
|      debug: false               # Debug mode, only for development |      debug: false               # Debug mode, only for development | ||||||
|      instance_name:  "searxng"  # displayed name |      instance_name:  "SearXNG"  # displayed name | ||||||
|      contact_url: false         # mailto:contact@example.com |      contact_url: false         # mailto:contact@example.com | ||||||
| 
 | 
 | ||||||
| ``debug`` : ``$SEARX_DEBUG`` | ``debug`` : ``$SEARX_DEBUG`` | ||||||
|   Allow a more detailed log if you run searx directly. Display *detailed* error |   Allow a more detailed log if you run SearXNG directly. Display *detailed* error | ||||||
|   messages in the browser too, so this must be deactivated in production. |   messages in the browser too, so this must be deactivated in production. | ||||||
| 
 | 
 | ||||||
| ``contact_url``: | ``contact_url``: | ||||||
| @ -110,29 +110,29 @@ Global Settings | |||||||
|    rebuild instance's environment :ref:`utils/brand.env <make buildenv>`. |    rebuild instance's environment :ref:`utils/brand.env <make buildenv>`. | ||||||
| 
 | 
 | ||||||
| ``base_url`` : :ref:`buildenv SEARX_URL <make buildenv>` | ``base_url`` : :ref:`buildenv SEARX_URL <make buildenv>` | ||||||
|   The base URL where searx is deployed.  Used to create correct inbound links. |   The base URL where SearXNG is deployed.  Used to create correct inbound links. | ||||||
|   If you change the value, don't forget to rebuild instance's environment |   If you change the value, don't forget to rebuild instance's environment | ||||||
|   (:ref:`utils/brand.env <make buildenv>`) |   (:ref:`utils/brand.env <make buildenv>`) | ||||||
| 
 | 
 | ||||||
| ``port`` & ``bind_address``: :ref:`buildenv SEARX_PORT & SEARX_BIND_ADDRESS <make buildenv>` | ``port`` & ``bind_address``: :ref:`buildenv SEARX_PORT & SEARX_BIND_ADDRESS <make buildenv>` | ||||||
|   Port number and *bind address* of the searx web application if you run it |   Port number and *bind address* of the SearXNG web application if you run it | ||||||
|   directly using ``python searx/webapp.py``.  Doesn't apply to searx running on |   directly using ``python searx/webapp.py``.  Doesn't apply to SearXNG running on | ||||||
|   Apache or Nginx. |   Apache or Nginx. | ||||||
| 
 | 
 | ||||||
| ``secret_key`` : ``$SEARX_SECRET`` | ``secret_key`` : ``$SEARX_SECRET`` | ||||||
|   Used for cryptography purpose. |   Used for cryptography purpose. | ||||||
| 
 | 
 | ||||||
| ``image_proxy`` : | ``image_proxy`` : | ||||||
|   Allow your instance of searx of being able to proxy images.  Uses memory space. |   Allow your instance of SearXNG of being able to proxy images.  Uses memory space. | ||||||
| 
 | 
 | ||||||
| ``default_locale`` : | ``default_locale`` : | ||||||
|   Searx interface language.  If blank, the locale is detected by using the |   SearXNG interface language.  If blank, the locale is detected by using the | ||||||
|   browser language.  If it doesn't work, or you are deploying a language |   browser language.  If it doesn't work, or you are deploying a language | ||||||
|   specific instance of searx, a locale can be defined using an ISO language |   specific instance of searx, a locale can be defined using an ISO language | ||||||
|   code, like ``fr``, ``en``, ``de``. |   code, like ``fr``, ``en``, ``de``. | ||||||
| 
 | 
 | ||||||
| ``default_theme`` : | ``default_theme`` : | ||||||
|   Name of the theme you want to use by default on your searx instance. |   Name of the theme you want to use by default on your SearXNG instance. | ||||||
| 
 | 
 | ||||||
| .. _HTTP headers: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers | .. _HTTP headers: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers | ||||||
| 
 | 
 | ||||||
| @ -171,11 +171,11 @@ Communication with search engines. | |||||||
| ``request_timeout`` : | ``request_timeout`` : | ||||||
|   Global timeout of the requests made to others engines in seconds.  A bigger |   Global timeout of the requests made to others engines in seconds.  A bigger | ||||||
|   timeout will allow to wait for answers from slow engines, but in consequence |   timeout will allow to wait for answers from slow engines, but in consequence | ||||||
|   will slow searx reactivity (the result page may take the time specified in the |   will slow SearXNG reactivity (the result page may take the time specified in the | ||||||
|   timeout to load). Can be override by :ref:`settings engine` |   timeout to load). Can be override by :ref:`settings engine` | ||||||
| 
 | 
 | ||||||
| ``useragent_suffix`` : | ``useragent_suffix`` : | ||||||
|   Suffix to the user-agent searx uses to send requests to others engines.  If an |   Suffix to the user-agent SearXNG uses to send requests to others engines.  If an | ||||||
|   engine wish to block you, a contact info here may be useful to avoid that. |   engine wish to block you, a contact info here may be useful to avoid that. | ||||||
| 
 | 
 | ||||||
| ``keepalive_expiry``: | ``keepalive_expiry``: | ||||||
| @ -201,7 +201,7 @@ Communication with search engines. | |||||||
|   * ``[ 192.168.0.1, fe80::/126 ]`` |   * ``[ 192.168.0.1, fe80::/126 ]`` | ||||||
| 
 | 
 | ||||||
| ``retries`` : | ``retries`` : | ||||||
|   Number of retry in case of an HTTP error.  On each retry, searx uses an |   Number of retry in case of an HTTP error.  On each retry, SearXNG uses an | ||||||
|   different proxy and source ip. |   different proxy and source ip. | ||||||
| 
 | 
 | ||||||
| ``retry_on_http_error`` : | ``retry_on_http_error`` : | ||||||
| @ -271,7 +271,7 @@ engine is shown.  Most of the options have a default value or even are optional. | |||||||
|          - socks5h://user:password@proxy4:1080 |          - socks5h://user:password@proxy4:1080 | ||||||
| 
 | 
 | ||||||
| ``name`` : | ``name`` : | ||||||
|   Name that will be used across searx to define this engine.  In settings, on |   Name that will be used across SearXNG to define this engine.  In settings, on | ||||||
|   the result page... |   the result page... | ||||||
| 
 | 
 | ||||||
| ``engine`` : | ``engine`` : | ||||||
| @ -361,7 +361,7 @@ and can relied on the default configuration :origin:`searx/settings.yml` using: | |||||||
| ``engines:`` | ``engines:`` | ||||||
|   With ``use_default_settings: true``, each settings can be override in a |   With ``use_default_settings: true``, each settings can be override in a | ||||||
|   similar way, the ``engines`` section is merged according to the engine |   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 |   ``name``.  In this example, SearXNG will load all the engine and the arch linux | ||||||
|   wiki engine has a :ref:`token <private engines>`: |   wiki engine has a :ref:`token <private engines>`: | ||||||
| 
 | 
 | ||||||
|   .. code-block:: yaml |   .. code-block:: yaml | ||||||
| @ -375,7 +375,7 @@ and can relied on the default configuration :origin:`searx/settings.yml` using: | |||||||
| 
 | 
 | ||||||
| ``engines:`` / ``remove:`` | ``engines:`` / ``remove:`` | ||||||
|   It is possible to remove some engines from the default settings. The following |   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 |   example is similar to the above one, but SearXNG doesn't load the the google | ||||||
|   engine: |   engine: | ||||||
| 
 | 
 | ||||||
|   .. code-block:: yaml |   .. code-block:: yaml | ||||||
| @ -392,7 +392,7 @@ and can relied on the default configuration :origin:`searx/settings.yml` using: | |||||||
| 
 | 
 | ||||||
| ``engines:`` / ``keep_only:`` | ``engines:`` / ``keep_only:`` | ||||||
|   As an alternative, it is possible to specify the engines to keep. In the |   As an alternative, it is possible to specify the engines to keep. In the | ||||||
|   following example, searx has only two engines: |   following example, SearXNG has only two engines: | ||||||
| 
 | 
 | ||||||
|   .. code-block:: yaml |   .. code-block:: yaml | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -10,7 +10,7 @@ SQL Engines | |||||||
|    - `PostgreSQL <https://www.postgresql.org>`_ |    - `PostgreSQL <https://www.postgresql.org>`_ | ||||||
|    - `MySQL <https://www.mysql.com>`_ |    - `MySQL <https://www.mysql.com>`_ | ||||||
| 
 | 
 | ||||||
| With the *SQL engines* you can bind SQL databases into SearxNG.  The following | With the *SQL engines* you can bind SQL databases into SearXNG.  The following | ||||||
| Relational Database Management System (RDBMS) are supported: | Relational Database Management System (RDBMS) are supported: | ||||||
| 
 | 
 | ||||||
| - :ref:`engine sqlite` | - :ref:`engine sqlite` | ||||||
| @ -98,7 +98,7 @@ Extra Dependencies | |||||||
| ------------------ | ------------------ | ||||||
| 
 | 
 | ||||||
| For using :ref:`engine postgresql` or :ref:`engine mysql_server` you need to | For using :ref:`engine postgresql` or :ref:`engine mysql_server` you need to | ||||||
| install additional packages in Python's Virtual Environment of your SearxNG | install additional packages in Python's Virtual Environment of your SearXNG | ||||||
| instance.  To switch into the environment (:ref:`searx-src`) you can use | instance.  To switch into the environment (:ref:`searx-src`) you can use | ||||||
| :ref:`searx.sh`:: | :ref:`searx.sh`:: | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -18,7 +18,7 @@ How to protect an instance | |||||||
| 
 | 
 | ||||||
| .. _filtron: https://github.com/asciimoo/filtron | .. _filtron: https://github.com/asciimoo/filtron | ||||||
| 
 | 
 | ||||||
| Searx depends on external search services.  To avoid the abuse of these services | SearXNG depends on external search services.  To avoid the abuse of these services | ||||||
| it is advised to limit the number of requests processed by searx. | it is advised to limit the number of requests processed by searx. | ||||||
| 
 | 
 | ||||||
| An application firewall, filtron_ solves exactly this problem.  Filtron is just | An application firewall, filtron_ solves exactly this problem.  Filtron is just | ||||||
| @ -187,5 +187,5 @@ Use it along with ``nginx`` with the following example configuration. | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Requests are coming from port 4004 going through filtron and then forwarded to | Requests are coming from port 4004 going through filtron and then forwarded to | ||||||
| port 8888 where a searx is being run. For a complete setup see: :ref:`nginx | port 8888 where a SearXNG is being run. For a complete setup see: :ref:`nginx | ||||||
| searx site`. | searx site`. | ||||||
|  | |||||||
| @ -170,13 +170,13 @@ Apache Reverse Proxy | |||||||
| 
 | 
 | ||||||
| .. sidebar:: public to the internet? | .. sidebar:: public to the internet? | ||||||
| 
 | 
 | ||||||
|    If your searx instance is public, stop here and first install :ref:`filtron |    If your SearXNG instance is public, stop here and first install :ref:`filtron | ||||||
|    reverse proxy <filtron.sh>` and :ref:`result proxy morty <morty.sh>`, see |    reverse proxy <filtron.sh>` and :ref:`result proxy morty <morty.sh>`, see | ||||||
|    :ref:`installation scripts`.  If already done, follow setup: *searx via |    :ref:`installation scripts`.  If already done, follow setup: *SearXNG via | ||||||
|    filtron plus morty*. |    filtron plus morty*. | ||||||
| 
 | 
 | ||||||
| To setup a Apache revers proxy you have to enable the *headers* and *proxy* | To setup a Apache revers proxy you have to enable the *headers* and *proxy* | ||||||
| modules and create a `Location`_ configuration for the searx site.  In most | modules and create a `Location`_ configuration for the SearXNG site.  In most | ||||||
| distributions you have to un-comment the lines in the main configuration file, | distributions you have to un-comment the lines in the main configuration file, | ||||||
| except in :ref:`The Debian Layout`. | except in :ref:`The Debian Layout`. | ||||||
| 
 | 
 | ||||||
| @ -234,7 +234,7 @@ proxied host. | |||||||
| 
 | 
 | ||||||
| .. tabs:: | .. tabs:: | ||||||
| 
 | 
 | ||||||
|    .. group-tab:: searx via filtron plus morty |    .. group-tab:: SearXNG via filtron plus morty | ||||||
| 
 | 
 | ||||||
|       Use this setup, if your instance is public to the internet, compare |       Use this setup, if your instance is public to the internet, compare | ||||||
|       figure: :ref:`architecture <arch public>` and :ref:`installation scripts`. |       figure: :ref:`architecture <arch public>` and :ref:`installation scripts`. | ||||||
|  | |||||||
| @ -98,7 +98,7 @@ stoped.  To get rid of a container use ``container rm``: | |||||||
| 
 | 
 | ||||||
| .. sidebar:: Warning | .. sidebar:: Warning | ||||||
| 
 | 
 | ||||||
|    This might remove all docker items, not only those from searxng. |    This might remove all docker items, not only those from SearXNG. | ||||||
| 
 | 
 | ||||||
| If you won't use docker anymore and want to get rid of all conatiners & images | If you won't use docker anymore and want to get rid of all conatiners & images | ||||||
| use the following *prune* command: | use the following *prune* command: | ||||||
|  | |||||||
| @ -128,17 +128,17 @@ depends on the linux distribution: | |||||||
| 
 | 
 | ||||||
| .. _nginx searx site: | .. _nginx searx site: | ||||||
| 
 | 
 | ||||||
| A nginx searx site | A nginx SearXNG site | ||||||
| ================== | ==================== | ||||||
| 
 | 
 | ||||||
| .. sidebar:: public to the internet? | .. sidebar:: public to the internet? | ||||||
| 
 | 
 | ||||||
|    If your searx instance is public, stop here and first install :ref:`filtron |    If your SearXNG instance is public, stop here and first install :ref:`filtron | ||||||
|    reverse proxy <filtron.sh>` and :ref:`result proxy morty <morty.sh>`, see |    reverse proxy <filtron.sh>` and :ref:`result proxy morty <morty.sh>`, see | ||||||
|    :ref:`installation scripts`.  If already done, follow setup: *searx via |    :ref:`installation scripts`.  If already done, follow setup: *SearXNG via | ||||||
|    filtron plus morty*. |    filtron plus morty*. | ||||||
| 
 | 
 | ||||||
| Now you have to create a configuration for the searx site.  If nginx_ is new to | Now you have to create a configuration for the SearXNG site.  If nginx_ is new to | ||||||
| you, the `nginx beginners guide`_ is a good starting point and the `Getting | you, the `nginx beginners guide`_ is a good starting point and the `Getting | ||||||
| Started wiki`_ is always a good resource *to keep in the pocket*. | Started wiki`_ is always a good resource *to keep in the pocket*. | ||||||
| 
 | 
 | ||||||
| @ -167,7 +167,7 @@ Started wiki`_ is always a good resource *to keep in the pocket*. | |||||||
| 
 | 
 | ||||||
| .. tabs:: | .. tabs:: | ||||||
| 
 | 
 | ||||||
|    .. group-tab:: searx via filtron plus morty |    .. group-tab:: SearXNG via filtron plus morty | ||||||
| 
 | 
 | ||||||
|       Use this setup, if your instance is public to the internet, compare |       Use this setup, if your instance is public to the internet, compare | ||||||
|       figure: :ref:`architecture <arch public>` and :ref:`installation scripts`. |       figure: :ref:`architecture <arch public>` and :ref:`installation scripts`. | ||||||
| @ -292,7 +292,7 @@ Started wiki`_ is always a good resource *to keep in the pocket*. | |||||||
| 
 | 
 | ||||||
|       Be warned, with these setups, your instance isn't :ref:`protected <searx |       Be warned, with these setups, your instance isn't :ref:`protected <searx | ||||||
|       filtron>`.  The examples are just here to demonstrate how to export the |       filtron>`.  The examples are just here to demonstrate how to export the | ||||||
|       searx application from a subdirectory URL ``https://example.org/searx/``. |       SearXNG application from a subdirectory URL ``https://example.org/searx/``. | ||||||
| 
 | 
 | ||||||
|       .. code:: nginx |       .. code:: nginx | ||||||
| 
 | 
 | ||||||
| @ -313,7 +313,7 @@ Started wiki`_ is always a good resource *to keep in the pocket*. | |||||||
|              alias /usr/local/searx/searx-src/searx/static/; |              alias /usr/local/searx/searx-src/searx/static/; | ||||||
|          } |          } | ||||||
| 
 | 
 | ||||||
|       The ``X-Script-Name /searx`` is needed by the searx implementation to |       The ``X-Script-Name /searx`` is needed by the SearXNG implementation to | ||||||
|       calculate relative URLs correct.  The next example shows a uWSGI |       calculate relative URLs correct.  The next example shows a uWSGI | ||||||
|       configuration.  Since there are no HTTP headers in a (u)WSGI protocol, the |       configuration.  Since there are no HTTP headers in a (u)WSGI protocol, the | ||||||
|       value is shipped via the SCRIPT_NAME_ in the WSGI environment. |       value is shipped via the SCRIPT_NAME_ in the WSGI environment. | ||||||
| @ -332,7 +332,7 @@ Started wiki`_ is always a good resource *to keep in the pocket*. | |||||||
|              alias /usr/local/searx/searx-src/searx/; |              alias /usr/local/searx/searx-src/searx/; | ||||||
|          } |          } | ||||||
| 
 | 
 | ||||||
|       For searx to work correctly the ``base_url`` must be set in the |       For SearXNG to work correctly the ``base_url`` must be set in the | ||||||
|       :origin:`searx/settings.yml`. |       :origin:`searx/settings.yml`. | ||||||
| 
 | 
 | ||||||
|       .. code:: yaml |       .. code:: yaml | ||||||
|  | |||||||
| @ -36,8 +36,8 @@ Create user | |||||||
| 
 | 
 | ||||||
| .. _searx-src: | .. _searx-src: | ||||||
| 
 | 
 | ||||||
| install searx & dependencies | Install SearXNG & dependencies | ||||||
| ============================ | ============================== | ||||||
| 
 | 
 | ||||||
| Start a interactive shell from new created user and clone searx: | Start a interactive shell from new created user and clone searx: | ||||||
| 
 | 
 | ||||||
| @ -51,7 +51,7 @@ In the same shell create *virtualenv*: | |||||||
|    :start-after: START create virtualenv |    :start-after: START create virtualenv | ||||||
|    :end-before: END create virtualenv |    :end-before: END create virtualenv | ||||||
| 
 | 
 | ||||||
| To install searx's dependencies, exit the searx *bash* session you opened above | To install searx's dependencies, exit the SearXNG *bash* session you opened above | ||||||
| and restart a new.  Before install, first check if your *virtualenv* was sourced | and restart a new.  Before install, first check if your *virtualenv* was sourced | ||||||
| from the login (*~/.profile*): | from the login (*~/.profile*): | ||||||
| 
 | 
 | ||||||
| @ -106,8 +106,8 @@ For a *minimal setup*, configure like shown below – replace ``searx@$(uname | |||||||
| Check | Check | ||||||
| ===== | ===== | ||||||
| 
 | 
 | ||||||
| To check your searx setup, optional enable debugging and start the *webapp*. | To check your SearXNG setup, optional enable debugging and start the *webapp*. | ||||||
| Searx looks at the exported environment ``$SEARX_SETTINGS_PATH`` for a | SearXNG looks at the exported environment ``$SEARX_SETTINGS_PATH`` for a | ||||||
| configuration file. | configuration file. | ||||||
| 
 | 
 | ||||||
| .. kernel-include:: $DOCS_BUILD/includes/searx.rst | .. kernel-include:: $DOCS_BUILD/includes/searx.rst | ||||||
| @ -115,6 +115,6 @@ configuration file. | |||||||
|    :end-before: END check searx installation |    :end-before: END check searx installation | ||||||
| 
 | 
 | ||||||
| If everything works fine, hit ``[CTRL-C]`` to stop the *webapp* and disable the | If everything works fine, hit ``[CTRL-C]`` to stop the *webapp* and disable the | ||||||
| debug option in ``settings.yml``. You can now exit searx user bash (enter exit | debug option in ``settings.yml``. You can now exit SearXNG user bash (enter exit | ||||||
| command twice).  At this point searx is not demonized; uwsgi allows this. | command twice).  At this point SearXNG is not demonized; uwsgi allows this. | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -40,7 +40,7 @@ recommend two methods | |||||||
|     unit template    -->  /usr/lib/systemd/system/uwsgi@.service |     unit template    -->  /usr/lib/systemd/system/uwsgi@.service | ||||||
|     uwsgi ini files  -->  /etc/uwsgi/searx.ini |     uwsgi ini files  -->  /etc/uwsgi/searx.ini | ||||||
| 
 | 
 | ||||||
|   The searx app can be maintained as know from common systemd units:: |   The SearXNG app can be maintained as know from common systemd units:: | ||||||
| 
 | 
 | ||||||
|     systemctl enable  uwsgi@searx |     systemctl enable  uwsgi@searx | ||||||
|     systemctl start   uwsgi@searx |     systemctl start   uwsgi@searx | ||||||
| @ -57,7 +57,7 @@ The `uWSGI Emperor`_ mode which fits for maintaining a large range of uwsgi apps | |||||||
|   instance is started, reload or stopped.  Take Fedora and a searx.ini as |   instance is started, reload or stopped.  Take Fedora and a searx.ini as | ||||||
|   example:: |   example:: | ||||||
| 
 | 
 | ||||||
|     to start a new searx instance create   --> /etc/uwsgi.d/searx.ini |     to start a new SearXNG instance create --> /etc/uwsgi.d/searx.ini | ||||||
|     to reload the instance edit timestamp  --> touch /etc/uwsgi.d/searx.ini |     to reload the instance edit timestamp  --> touch /etc/uwsgi.d/searx.ini | ||||||
|     to stop instance remove ini            --> rm /etc/uwsgi.d/searx.ini |     to stop instance remove ini            --> rm /etc/uwsgi.d/searx.ini | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -11,7 +11,7 @@ Installation | |||||||
| - :ref:`installation basic` | - :ref:`installation basic` | ||||||
| 
 | 
 | ||||||
| The :ref:`installation basic` is good enough for intranet usage and it is a | The :ref:`installation basic` is good enough for intranet usage and it is a | ||||||
| excellent illustration of *how a searx instance is build up*.  If you place your | excellent illustration of *how a SearXNG instance is build up*.  If you place your | ||||||
| instance public to the internet you should really consider to install a | instance public to the internet you should really consider to install a | ||||||
| :ref:`filtron reverse proxy <filtron.sh>` and for privacy a :ref:`result proxy | :ref:`filtron reverse proxy <filtron.sh>` and for privacy a :ref:`result proxy | ||||||
| <morty.sh>` is mandatory. | <morty.sh>` is mandatory. | ||||||
| @ -51,9 +51,9 @@ the case if you clone into a folder below ``/root``. | |||||||
|    - :ref:`update searx` |    - :ref:`update searx` | ||||||
|    - :ref:`inspect searx` |    - :ref:`inspect searx` | ||||||
| 
 | 
 | ||||||
| **Install** :ref:`searx service <searx.sh>` | **Install** :ref:`SearXNG service <searx.sh>` | ||||||
| 
 | 
 | ||||||
| This installs searx as described in :ref:`installation basic`. | This installs SearXNG as described in :ref:`installation basic`. | ||||||
| 
 | 
 | ||||||
| .. code:: bash | .. code:: bash | ||||||
| 
 | 
 | ||||||
| @ -80,8 +80,8 @@ If all services are running fine, you can add it to your HTTP server: | |||||||
| 
 | 
 | ||||||
| **Install** :ref:`external plugins <dev plugin>` | **Install** :ref:`external plugins <dev plugin>` | ||||||
| 
 | 
 | ||||||
| Use searx's ``shell`` to install external plugins.  In the example below we | Use SearXNG's ``shell`` to install external plugins.  In the example below we | ||||||
| install the searx plugins from **The Green Web Foundation** `[ref] | install the SearXNG plugins from **The Green Web Foundation** `[ref] | ||||||
| <https://www.thegreenwebfoundation.org/news/searching-the-green-web-with-searx/>`__: | <https://www.thegreenwebfoundation.org/news/searching-the-green-web-with-searx/>`__: | ||||||
| 
 | 
 | ||||||
| .. code:: bash | .. code:: bash | ||||||
|  | |||||||
| @ -12,7 +12,7 @@ How to setup result proxy | |||||||
| .. _morty: https://github.com/asciimoo/morty | .. _morty: https://github.com/asciimoo/morty | ||||||
| .. _morty's README: https://github.com/asciimoo/morty | .. _morty's README: https://github.com/asciimoo/morty | ||||||
| 
 | 
 | ||||||
| By default searx can only act as an image proxy for result images, but it is | By default SearXNG can only act as an image proxy for result images, but it is | ||||||
| possible to proxify all the result URLs with an external service, morty_. | possible to proxify all the result URLs with an external service, morty_. | ||||||
| 
 | 
 | ||||||
| To use this feature, morty has to be installed and activated in searx's | To use this feature, morty has to be installed and activated in searx's | ||||||
| @ -29,7 +29,7 @@ Note that the example above (``http://127.0.0.1:3000``) is only for single-user | |||||||
| instances without a HTTP proxy.  If your morty service is public, the url is the | instances without a HTTP proxy.  If your morty service is public, the url is the | ||||||
| address of the reverse proxy (e.g ``https://example.org/morty``). | address of the reverse proxy (e.g ``https://example.org/morty``). | ||||||
| 
 | 
 | ||||||
| For more information about *result proxy* have a look at *"searx via filtron | For more information about *result proxy* have a look at *"SearXNG via filtron | ||||||
| plus morty"* in the :ref:`nginx <nginx searx via filtron plus morty>` and | plus morty"* in the :ref:`nginx <nginx searx via filtron plus morty>` and | ||||||
| :ref:`apache <apache searx via filtron plus morty>` sections. | :ref:`apache <apache searx via filtron plus morty>` sections. | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -7,7 +7,7 @@ How to update | |||||||
| How to update depends on the :ref:`installation` method.  If you have used the | How to update depends on the :ref:`installation` method.  If you have used the | ||||||
| :ref:`installation scripts`, use ``update`` command from the scripts. | :ref:`installation scripts`, use ``update`` command from the scripts. | ||||||
| 
 | 
 | ||||||
| **Update** :ref:`searx service <searx.sh>` | **Update** :ref:`SearXNG service <searx.sh>` | ||||||
| 
 | 
 | ||||||
| .. code:: sh | .. code:: sh | ||||||
| 
 | 
 | ||||||
| @ -39,7 +39,7 @@ How to inspect & debug | |||||||
| How to debug depends on the :ref:`installation` method.  If you have used the | How to debug depends on the :ref:`installation` method.  If you have used the | ||||||
| :ref:`installation scripts`, use ``inspect`` command from the scripts. | :ref:`installation scripts`, use ``inspect`` command from the scripts. | ||||||
| 
 | 
 | ||||||
| **Inspect** :ref:`searx service <searx.sh>` | **Inspect** :ref:`SearXNG service <searx.sh>` | ||||||
| 
 | 
 | ||||||
| .. code:: sh | .. code:: sh | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -118,7 +118,7 @@ ${fedora_build} | |||||||
|        pip install -U wheel |        pip install -U wheel | ||||||
|        pip install -U pyyaml |        pip install -U pyyaml | ||||||
| 
 | 
 | ||||||
|        # jump to searx's working tree and install searx into virtualenv |        # jump to searx's working tree and install SearXNG into virtualenv | ||||||
|        (${SERVICE_USER})$ cd \"$SEARX_SRC\" |        (${SERVICE_USER})$ cd \"$SEARX_SRC\" | ||||||
|        (${SERVICE_USER})$ pip install -e . |        (${SERVICE_USER})$ pip install -e . | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -14,7 +14,7 @@ copyright = '2021 SearXNG team, 2015-2021 Adam Tauber, Noémi Ványi' | |||||||
| author = '2021 SearXNG team, 2015-2021 Adam Tauber' | author = '2021 SearXNG team, 2015-2021 Adam Tauber' | ||||||
| release, version = VERSION_STRING, VERSION_STRING | release, version = VERSION_STRING, VERSION_STRING | ||||||
| 
 | 
 | ||||||
| SEARX_URL = get_setting('server.base_url') or 'https://example.org/searx' | SEARX_URL = get_setting('server.base_url') or 'https://example.org/searxng' | ||||||
| ISSUE_URL = get_setting('brand.issue_url') | ISSUE_URL = get_setting('brand.issue_url') | ||||||
| DOCS_URL = get_setting('brand.docs_url') | DOCS_URL = get_setting('brand.docs_url') | ||||||
| PUBLIC_INSTANCES = get_setting('brand.public_instances') | PUBLIC_INSTANCES = get_setting('brand.public_instances') | ||||||
| @ -132,7 +132,7 @@ html_sidebars = { | |||||||
| singlehtml_sidebars = {"index": ["project.html", "localtoc.html"]} | singlehtml_sidebars = {"index": ["project.html", "localtoc.html"]} | ||||||
| html_static_path = ["static"] | html_static_path = ["static"] | ||||||
| html_logo = "static/img/searx_logo_small.png" | html_logo = "static/img/searx_logo_small.png" | ||||||
| html_title = "Searx Documentation ({})".format(VERSION_STRING) | html_title = "SearXNG Documentation ({})".format(VERSION_STRING) | ||||||
| html_show_sourcelink = False | html_show_sourcelink = False | ||||||
| 
 | 
 | ||||||
| # LaTeX ---------------------------------------------------------------- | # LaTeX ---------------------------------------------------------------- | ||||||
|  | |||||||
| @ -12,21 +12,21 @@ How to contribute | |||||||
| Prime directives: Privacy, Hackability | Prime directives: Privacy, Hackability | ||||||
| ====================================== | ====================================== | ||||||
| 
 | 
 | ||||||
| Searx has two prime directives, **privacy-by-design and hackability** .  The | SearXNG has two prime directives, **privacy-by-design and hackability** .  The | ||||||
| hackability comes in three levels: | hackability comes in three levels: | ||||||
| 
 | 
 | ||||||
| - support of search engines | - support of search engines | ||||||
| - plugins to alter search behaviour | - plugins to alter search behaviour | ||||||
| - hacking searx itself | - hacking SearXNG itself | ||||||
| 
 | 
 | ||||||
| Note the lack of "world domination" among the directives.  Searx has no | Note the lack of "world domination" among the directives.  SearXNG has no | ||||||
| intention of wide mass-adoption, rounded corners, etc.  The prime directive | intention of wide mass-adoption, rounded corners, etc.  The prime directive | ||||||
| "privacy" deserves a separate chapter, as it's quite uncommon unfortunately. | "privacy" deserves a separate chapter, as it's quite uncommon unfortunately. | ||||||
| 
 | 
 | ||||||
| Privacy-by-design | Privacy-by-design | ||||||
| ----------------- | ----------------- | ||||||
| 
 | 
 | ||||||
| Searx was born out of the need for a **privacy-respecting** search tool which | SearXNG was born out of the need for a **privacy-respecting** search tool which | ||||||
| can be extended easily to maximize both, its search and its privacy protecting | can be extended easily to maximize both, its search and its privacy protecting | ||||||
| capabilities. | capabilities. | ||||||
| 
 | 
 | ||||||
| @ -46,7 +46,7 @@ Submitting a bugreport to the vendor of the tool that misbehaves might be a good | |||||||
| feedback to reconsider the disrespect to its customers (e.g. ``GET`` vs ``POST`` | feedback to reconsider the disrespect to its customers (e.g. ``GET`` vs ``POST`` | ||||||
| requests in various browsers). | requests in various browsers). | ||||||
| 
 | 
 | ||||||
| Remember the other prime directive of searx is to be hackable, so if the above | Remember the other prime directive of SearXNG is to be hackable, so if the above | ||||||
| privacy concerns do not fancy you, simply fork it. | privacy concerns do not fancy you, simply fork it. | ||||||
| 
 | 
 | ||||||
|   *Happy hacking.* |   *Happy hacking.* | ||||||
| @ -99,7 +99,7 @@ In order to submit a patch, please follow the steps below: | |||||||
| 
 | 
 | ||||||
| - Create a pull request. | - Create a pull request. | ||||||
| 
 | 
 | ||||||
| For more help on getting started with searx development, see :ref:`devquickstart`. | For more help on getting started with SearXNG development, see :ref:`devquickstart`. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Translation | Translation | ||||||
|  | |||||||
| @ -15,11 +15,11 @@ Engine Overview | |||||||
|    :depth: 3 |    :depth: 3 | ||||||
|    :backlinks: entry |    :backlinks: entry | ||||||
| 
 | 
 | ||||||
| searx is a metasearch-engine_, so it uses different search engines to provide | SearXNG is a metasearch-engine_, so it uses different search engines to provide | ||||||
| better results. | better results. | ||||||
| 
 | 
 | ||||||
| Because there is no general search API which could be used for every search | Because there is no general search API which could be used for every search | ||||||
| engine, an adapter has to be built between searx and the external search | engine, an adapter has to be built between SearXNG and the external search | ||||||
| engines.  Adapters are stored under the folder :origin:`searx/engines`. | engines.  Adapters are stored under the folder :origin:`searx/engines`. | ||||||
| 
 | 
 | ||||||
| .. _general engine configuration: | .. _general engine configuration: | ||||||
| @ -27,7 +27,7 @@ engines.  Adapters are stored under the folder :origin:`searx/engines`. | |||||||
| General Engine Configuration | General Engine Configuration | ||||||
| ============================ | ============================ | ||||||
| 
 | 
 | ||||||
| It is required to tell searx the type of results the engine provides. The | It is required to tell SearXNG the type of results the engine provides. The | ||||||
| arguments can be set in the engine file or in the settings file (normally | arguments can be set in the engine file or in the settings file (normally | ||||||
| ``settings.yml``). The arguments in the settings file override the ones in the | ``settings.yml``). The arguments in the settings file override the ones in the | ||||||
| engine file. | engine file. | ||||||
| @ -88,7 +88,7 @@ Overrides | |||||||
| A few of the options have default values in the namespace of engine's python | A few of the options have default values in the namespace of engine's python | ||||||
| modul, but are often overwritten by the settings.  If ``None`` is assigned to an | modul, but are often overwritten by the settings.  If ``None`` is assigned to an | ||||||
| option in the engine file, it has to be redefined in the settings, otherwise | option in the engine file, it has to be redefined in the settings, otherwise | ||||||
| searx will not start with that engine (global names with a leading underline can | SearXNG will not start with that engine (global names with a leading underline can | ||||||
| be ``None``). | be ``None``). | ||||||
| 
 | 
 | ||||||
| Here is an very simple example of the global names in the namespace of engine's | Here is an very simple example of the global names in the namespace of engine's | ||||||
|  | |||||||
| @ -52,7 +52,7 @@ software: | |||||||
| and the script :ref:`lxc.sh`, with we can scale our installation, maintenance or | and the script :ref:`lxc.sh`, with we can scale our installation, maintenance or | ||||||
| even development tasks over a stack of isolated containers / what we call the: | even development tasks over a stack of isolated containers / what we call the: | ||||||
| 
 | 
 | ||||||
|   **SearxNG LXC suite** |   **SearXNG LXC suite** | ||||||
| 
 | 
 | ||||||
| .. hint:: | .. hint:: | ||||||
| 
 | 
 | ||||||
| @ -211,7 +211,7 @@ To debug services from filtron and morty analogous use: | |||||||
|         $ ./utils/filtron.sh inspect service |         $ ./utils/filtron.sh inspect service | ||||||
|         $ ./utils/morty.sh inspect service |         $ ./utils/morty.sh inspect service | ||||||
| 
 | 
 | ||||||
| Another point we have to notice is that each service (:ref:`searx <searx.sh>`, | Another point we have to notice is that each service (:ref:`SearXNG <searx.sh>`, | ||||||
| :ref:`filtron <filtron.sh>` and :ref:`morty <morty.sh>`) runs under dedicated | :ref:`filtron <filtron.sh>` and :ref:`morty <morty.sh>`) runs under dedicated | ||||||
| system user account with the same name (compare :ref:`create searx user`).  To | system user account with the same name (compare :ref:`create searx user`).  To | ||||||
| get a shell from theses accounts, simply call one of the scripts: | get a shell from theses accounts, simply call one of the scripts: | ||||||
| @ -266,7 +266,7 @@ suite.  For this, we have to keep an eye on the :ref:`installation basic`: | |||||||
| - virtualenv in: ``/usr/local/searx/searx-pyenv`` | - virtualenv in: ``/usr/local/searx/searx-pyenv`` | ||||||
| - SearXNG software in: ``/usr/local/searx/searx-src`` | - SearXNG software in: ``/usr/local/searx/searx-src`` | ||||||
| 
 | 
 | ||||||
| With the use of the :ref:`searx.sh` the searx service was installed as | With the use of the :ref:`searx.sh` the SearXNG service was installed as | ||||||
| :ref:`uWSGI application <searx uwsgi>`.  To maintain this service, we can use | :ref:`uWSGI application <searx uwsgi>`.  To maintain this service, we can use | ||||||
| ``systemctl`` (compare :ref:`service architectures on distributions <uwsgi | ``systemctl`` (compare :ref:`service architectures on distributions <uwsgi | ||||||
| configuration>`). | configuration>`). | ||||||
| @ -280,7 +280,7 @@ configuration>`). | |||||||
|         $ sudo -H ./utils/lxc.sh cmd searx-archlinux \ |         $ sudo -H ./utils/lxc.sh cmd searx-archlinux \ | ||||||
|           systemctl stop uwsgi@searx |           systemctl stop uwsgi@searx | ||||||
| 
 | 
 | ||||||
| With the command above, we stopped the searx uWSGI-App in the archlinux | With the command above, we stopped the SearXNG uWSGI-App in the archlinux | ||||||
| container. | container. | ||||||
| 
 | 
 | ||||||
| The uWSGI-App for the archlinux dsitros is configured in | The uWSGI-App for the archlinux dsitros is configured in | ||||||
| @ -316,7 +316,7 @@ of the container: | |||||||
|           ln -s /share/searx/ /usr/local/searx/searx-src |           ln -s /share/searx/ /usr/local/searx/searx-src | ||||||
| 
 | 
 | ||||||
| Now we can develop as usual in the working tree of our desktop system.  Every | Now we can develop as usual in the working tree of our desktop system.  Every | ||||||
| time the software was changed, you have to restart the searx service (in the | time the software was changed, you have to restart the SearXNG service (in the | ||||||
| conatiner): | conatiner): | ||||||
| 
 | 
 | ||||||
| .. tabs:: | .. tabs:: | ||||||
|  | |||||||
| @ -38,7 +38,7 @@ Python Environment (``make install``) | |||||||
| 
 | 
 | ||||||
| We do no longer need to build up the virtualenv manually.  Jump into your git | We do no longer need to build up the virtualenv manually.  Jump into your git | ||||||
| working tree and release a ``make install`` to get a virtualenv with a | working tree and release a ``make install`` to get a virtualenv with a | ||||||
| *developer install* of searx (:origin:`setup.py`). :: | *developer install* of SearXNG (:origin:`setup.py`). :: | ||||||
| 
 | 
 | ||||||
|    $ cd ~/searx-clone |    $ cd ~/searx-clone | ||||||
|    $ make install |    $ make install | ||||||
| @ -193,7 +193,7 @@ commit. | |||||||
| .. _Pylint: https://www.pylint.org/ | .. _Pylint: https://www.pylint.org/ | ||||||
| 
 | 
 | ||||||
| Pylint_ is known as one of the best source-code, bug and quality checker for the | Pylint_ is known as one of the best source-code, bug and quality checker for the | ||||||
| Python programming language.  The pylint profile we use at searx project is | Python programming language.  The pylint profile used in the SearXNG project is | ||||||
| found in project's root folder :origin:`.pylintrc`. | found in project's root folder :origin:`.pylintrc`. | ||||||
| 
 | 
 | ||||||
| .. _make search.checker: | .. _make search.checker: | ||||||
|  | |||||||
| @ -11,7 +11,7 @@ Offline Engines | |||||||
|    - :ref:`engine command` |    - :ref:`engine command` | ||||||
|    - :origin:`Redis <searx/engines/redis_server.py>` |    - :origin:`Redis <searx/engines/redis_server.py>` | ||||||
| 
 | 
 | ||||||
| To extend the functionality of SearxNG, offline engines are going to be | To extend the functionality of SearXNG, offline engines are going to be | ||||||
| introduced.  An offline engine is an engine which does not need Internet | introduced.  An offline engine is an engine which does not need Internet | ||||||
| connection to perform a search and does not use HTTP to communicate. | connection to perform a search and does not use HTTP to communicate. | ||||||
| 
 | 
 | ||||||
| @ -47,14 +47,14 @@ Engine representation in ``/config`` | |||||||
| Extra Dependencies | Extra Dependencies | ||||||
| ================== | ================== | ||||||
| 
 | 
 | ||||||
| If an offline engine depends on an external tool, SearxNG does not install it by | If an offline engine depends on an external tool, SearXNG does not install it by | ||||||
| default.  When an administrator configures such engine and starts the instance, | default.  When an administrator configures such engine and starts the instance, | ||||||
| the process returns an error with the list of missing dependencies.  Also, | the process returns an error with the list of missing dependencies.  Also, | ||||||
| required dependencies will be added to the comment/description of the engine, so | required dependencies will be added to the comment/description of the engine, so | ||||||
| admins can install packages in advance. | admins can install packages in advance. | ||||||
| 
 | 
 | ||||||
| If there is a need to install additional packages in *Python's Virtual | If there is a need to install additional packages in *Python's Virtual | ||||||
| Environment* of your SearxNG instance you need to switch into the environment | Environment* of your SearXNG instance you need to switch into the environment | ||||||
| (:ref:`searx-src`) first, for this you can use :ref:`searx.sh`:: | (:ref:`searx-src`) first, for this you can use :ref:`searx.sh`:: | ||||||
| 
 | 
 | ||||||
|   $ sudo utils/searx.sh shell |   $ sudo utils/searx.sh shell | ||||||
| @ -66,7 +66,7 @@ Private engines (Security) | |||||||
| 
 | 
 | ||||||
| To limit the access to offline engines, if an instance is available publicly, | To limit the access to offline engines, if an instance is available publicly, | ||||||
| administrators can set token(s) for each of the :ref:`private engines`.  If a | administrators can set token(s) for each of the :ref:`private engines`.  If a | ||||||
| query contains a valid token, then SearxNG performs the requested private | query contains a valid token, then SearXNG performs the requested private | ||||||
| search.  If not, requests from an offline engines return errors. | search.  If not, requests from an offline engines return errors. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -6,7 +6,7 @@ Development Quickstart | |||||||
| 
 | 
 | ||||||
| .. _npm: https://www.npmjs.com/ | .. _npm: https://www.npmjs.com/ | ||||||
| 
 | 
 | ||||||
| Searx loves developers, just clone and start hacking.  All the rest is done for | SearXNG loves developers, just clone and start hacking.  All the rest is done for | ||||||
| you simply by using :ref:`make <makefile>`. | you simply by using :ref:`make <makefile>`. | ||||||
| 
 | 
 | ||||||
| .. code:: sh | .. code:: sh | ||||||
|  | |||||||
| @ -6,10 +6,10 @@ reST primer | |||||||
| 
 | 
 | ||||||
| .. sidebar:: KISS_ and readability_ | .. sidebar:: KISS_ and readability_ | ||||||
| 
 | 
 | ||||||
|    Instead of defining more and more roles, we at searx encourage our |    Instead of defining more and more roles, we at SearXNG encourage our | ||||||
|    contributors to follow principles like KISS_ and readability_. |    contributors to follow principles like KISS_ and readability_. | ||||||
| 
 | 
 | ||||||
| We at searx are using reStructuredText (aka reST_) markup for all kind of | We at SearXNG are using reStructuredText (aka reST_) markup for all kind of | ||||||
| documentation, with the builders from the Sphinx_ project a HTML output is | documentation, with the builders from the Sphinx_ project a HTML output is | ||||||
| generated and deployed at :docs:`github.io <.>`.  For build prerequisites read | generated and deployed at :docs:`github.io <.>`.  For build prerequisites read | ||||||
| :ref:`docs build`. | :ref:`docs build`. | ||||||
| @ -78,7 +78,7 @@ User's POV: :origin:`docs/user` | |||||||
| 
 | 
 | ||||||
| Admin's POV: :origin:`docs/admin` | Admin's POV: :origin:`docs/admin` | ||||||
|   A typical Admin knows about setting up services on a linux system, but he does |   A typical Admin knows about setting up services on a linux system, but he does | ||||||
|   not know all the pros and cons of a searx setup. |   not know all the pros and cons of a SearXNG setup. | ||||||
| 
 | 
 | ||||||
| Developer's POV: :origin:`docs/dev` | Developer's POV: :origin:`docs/dev` | ||||||
|   Depending on the readability_ of code, a typical developer is able to read and |   Depending on the readability_ of code, a typical developer is able to read and | ||||||
| @ -900,7 +900,7 @@ primer>`. | |||||||
| 
 | 
 | ||||||
|    .. sidebar:: KISS_ and readability_ |    .. sidebar:: KISS_ and readability_ | ||||||
| 
 | 
 | ||||||
|       Instead of defining more and more roles, we at searx encourage our |       Instead of defining more and more roles, we at SearXNG encourage our | ||||||
|       contributors to follow principles like KISS_ and readability_. |       contributors to follow principles like KISS_ and readability_. | ||||||
| 
 | 
 | ||||||
| Generic admonition | Generic admonition | ||||||
| @ -1280,7 +1280,7 @@ Templating | |||||||
| 
 | 
 | ||||||
| Templating is suitable for documentation which is created generic at the build | Templating is suitable for documentation which is created generic at the build | ||||||
| time.  The sphinx-jinja_ extension evaluates jinja_ templates in the :ref:`make | time.  The sphinx-jinja_ extension evaluates jinja_ templates in the :ref:`make | ||||||
| install` (with searx modules installed).  We use this e.g. to build chapter: | install` (with SearXNG modules installed).  We use this e.g. to build chapter: | ||||||
| :ref:`configured engines`.  Below the jinja directive from the | :ref:`configured engines`.  Below the jinja directive from the | ||||||
| :origin:`docs/admin/engines.rst` is shown: | :origin:`docs/admin/engines.rst` is shown: | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -24,7 +24,7 @@ Parameters | |||||||
| 
 | 
 | ||||||
| ``q`` : required | ``q`` : required | ||||||
|   The search query.  This string is passed to external search services.  Thus, |   The search query.  This string is passed to external search services.  Thus, | ||||||
|   searx supports syntax of each search service.  For example, ``site:github.com |   SearXNG supports syntax of each search service.  For example, ``site:github.com | ||||||
|   searx`` is a valid query for Google.  However, if simply the query above is |   searx`` is a valid query for Google.  However, if simply the query above is | ||||||
|   passed to any search engine which does not filter its results based on this |   passed to any search engine which does not filter its results based on this | ||||||
|   syntax, you might not get the results you wanted. |   syntax, you might not get the results you wanted. | ||||||
|  | |||||||
| @ -1,5 +1,5 @@ | |||||||
| ================== | ================== | ||||||
| Welcome to searxng | Welcome to SearXNG | ||||||
| ================== | ================== | ||||||
| 
 | 
 | ||||||
|     *Search without being tracked.* |     *Search without being tracked.* | ||||||
| @ -8,12 +8,12 @@ Welcome to searxng | |||||||
| 
 | 
 | ||||||
|    This is not searx, but searxng. |    This is not searx, but searxng. | ||||||
| 
 | 
 | ||||||
| Searxng is a free internet metasearch engine which aggregates results from more | SearXNG is a free internet metasearch engine which aggregates results from more | ||||||
| than 70 search services.  Users are neither tracked nor profiled.  Additionally, | than 70 search services.  Users are neither tracked nor profiled.  Additionally, | ||||||
| searxng can be used over Tor for online anonymity. | SearXNG can be used over Tor for online anonymity. | ||||||
| 
 | 
 | ||||||
| Get started with searxng by using one of the Searx-instances_.  If you don't trust | Get started with SearXNG by using one of the instances listed at searx.space_. | ||||||
| anyone, you can set up your own, see :ref:`installation`. | If you don't trust anyone, you can set up your own, see :ref:`installation`. | ||||||
| 
 | 
 | ||||||
| .. sidebar::  Features | .. sidebar::  Features | ||||||
| 
 | 
 | ||||||
| @ -36,4 +36,4 @@ anyone, you can set up your own, see :ref:`installation`. | |||||||
|    utils/index |    utils/index | ||||||
|    src/index |    src/index | ||||||
| 
 | 
 | ||||||
| .. _Searx-instances: https://searx.space | .. _searx.space: https://searx.space | ||||||
|  | |||||||
| @ -4,22 +4,22 @@ Why use a private instance? | |||||||
| 
 | 
 | ||||||
|   *"Is it worth to run my own instance?"* |   *"Is it worth to run my own instance?"* | ||||||
| 
 | 
 | ||||||
| \.\. is a common question among searx users.  Before answering this question, | \.\. is a common question among SearXNG users.  Before answering this question, | ||||||
| see what options a searx user has. | see what options a SearXNG user has. | ||||||
| 
 | 
 | ||||||
| Public instances are open to everyone who has access to its URL.  Usually, these | Public instances are open to everyone who has access to its URL.  Usually, these | ||||||
| are operated by unknown parties (from the users' point of view).  Private | are operated by unknown parties (from the users' point of view).  Private | ||||||
| instances can be used by a select group of people.  It is for example a searx of | instances can be used by a select group of people.  It is for example a SearXNG of | ||||||
| group of friends or a company which can be accessed through VPN.  Also it can be | group of friends or a company which can be accessed through VPN.  Also it can be | ||||||
| single user one which runs on the user's laptop. | single user one which runs on the user's laptop. | ||||||
| 
 | 
 | ||||||
| To gain more insight on how these instances work let's dive into how searx | To gain more insight on how these instances work let's dive into how SearXNG | ||||||
| protects its users. | protects its users. | ||||||
| 
 | 
 | ||||||
| How does searx protect privacy? | How does SearXNG protect privacy? | ||||||
| =============================== | ================================= | ||||||
| 
 | 
 | ||||||
| Searx protects the privacy of its users in multiple ways regardless of the type | SearXNG protects the privacy of its users in multiple ways regardless of the type | ||||||
| of the instance (private, public).  Removal of private data from search requests | of the instance (private, public).  Removal of private data from search requests | ||||||
| comes in three forms: | comes in three forms: | ||||||
| 
 | 
 | ||||||
| @ -31,11 +31,11 @@ comes in three forms: | |||||||
| Removing private data means not sending cookies to external search engines and | Removing private data means not sending cookies to external search engines and | ||||||
| generating a random browser profile for every request.  Thus, it does not matter | generating a random browser profile for every request.  Thus, it does not matter | ||||||
| if a public or private instance handles the request, because it is anonymized in | if a public or private instance handles the request, because it is anonymized in | ||||||
| both cases.  IP addresses will be the IP of the instance.  But searx can be | both cases.  IP addresses will be the IP of the instance.  But SearXNG can be | ||||||
| configured to use proxy or Tor.  `Result proxy | configured to use proxy or Tor.  `Result proxy | ||||||
| <https://github.com/asciimoo/morty>`__ is supported, too. | <https://github.com/asciimoo/morty>`__ is supported, too. | ||||||
| 
 | 
 | ||||||
| Searx does not serve ads or tracking content unlike most search services.  So | SearXNG does not serve ads or tracking content unlike most search services.  So | ||||||
| private data is not forwarded to third parties who might monetize it.  Besides | private data is not forwarded to third parties who might monetize it.  Besides | ||||||
| protecting users from search services, both referring page and search query are | protecting users from search services, both referring page and search query are | ||||||
| hidden from visited result pages. | hidden from visited result pages. | ||||||
| @ -61,7 +61,7 @@ control: the source code, logging settings and private data.  Unknown instance | |||||||
| administrators do not have to be trusted. | administrators do not have to be trusted. | ||||||
| 
 | 
 | ||||||
| Furthermore, as the default settings of their instance is editable, there is no | Furthermore, as the default settings of their instance is editable, there is no | ||||||
| need to use cookies to tailor searx to their needs.  So preferences will not be | need to use cookies to tailor SearXNG to their needs.  So preferences will not be | ||||||
| reset to defaults when clearing browser cookies.  As settings are stored on | reset to defaults when clearing browser cookies.  As settings are stored on | ||||||
| their computer, it will not be accessible to others as long as their computer is | their computer, it will not be accessible to others as long as their computer is | ||||||
| not compromised. | not compromised. | ||||||
| @ -70,10 +70,10 @@ Conclusion | |||||||
| ========== | ========== | ||||||
| 
 | 
 | ||||||
| Always use an instance which is operated by people you trust.  The privacy | Always use an instance which is operated by people you trust.  The privacy | ||||||
| features of searx are available to users no matter what kind of instance they | features of SearXNG are available to users no matter what kind of instance they | ||||||
| use. | use. | ||||||
| 
 | 
 | ||||||
| If someone is on the go or just wants to try searx for the first time public | If someone is on the go or just wants to try SearXNG for the first time public | ||||||
| instances are the best choices.  Additionally, public instance are making a | instances are the best choices.  Additionally, public instance are making a | ||||||
| world a better place, because those who cannot or do not want to run an | world a better place, because those who cannot or do not want to run an | ||||||
| instance, have access to a privacy respecting search service. | instance, have access to a privacy respecting search service. | ||||||
|  | |||||||
| @ -5,7 +5,7 @@ | |||||||
| Search syntax | Search syntax | ||||||
| ============= | ============= | ||||||
| 
 | 
 | ||||||
| Searx allows you to modify the default categories, engines and search language | SearXNG allows you to modify the default categories, engines and search language | ||||||
| via the search query. | via the search query. | ||||||
| 
 | 
 | ||||||
| Prefix ``!`` | Prefix ``!`` | ||||||
| @ -44,11 +44,11 @@ Custom language in wikipedia: | |||||||
| Multilingual Search | Multilingual Search | ||||||
| =================== | =================== | ||||||
| 
 | 
 | ||||||
| Searx does not support true multilingual search. | SearXNG does not support true multilingual search. | ||||||
| You have to use the language prefix in your search query when searching in a different language. | You have to use the language prefix in your search query when searching in a different language. | ||||||
| 
 | 
 | ||||||
| But there is a workaround: | But there is a workaround: | ||||||
| By adding a new search engine with a different language, Searx will search in your default and other language. | By adding a new search engine with a different language, SearXNG will search in your default and other language. | ||||||
| 
 | 
 | ||||||
| Example configuration in settings.yml for a German and English speaker: | Example configuration in settings.yml for a German and English speaker: | ||||||
|  .. code-block:: yaml |  .. code-block:: yaml | ||||||
|  | |||||||
| @ -35,7 +35,7 @@ Scripts to maintain services often dispose of common commands and environments. | |||||||
| ``FORCE_TIMEOUT`` : environment | ``FORCE_TIMEOUT`` : environment | ||||||
|   Sets timeout for interactive prompts. If you want to run a script in batch |   Sets timeout for interactive prompts. If you want to run a script in batch | ||||||
|   job, with defaults choices, set ``FORCE_TIMEOUT=0``.  By example; to install a |   job, with defaults choices, set ``FORCE_TIMEOUT=0``.  By example; to install a | ||||||
|   reverse proxy for filtron on all containers of the :ref:`searx suite |   reverse proxy for filtron on all containers of the :ref:`SearXNG suite | ||||||
|   <lxc-searx.env>` use :: |   <lxc-searx.env>` use :: | ||||||
| 
 | 
 | ||||||
|     sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/filtron.sh apache install |     sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/filtron.sh apache install | ||||||
|  | |||||||
| @ -22,7 +22,7 @@ | |||||||
|    - `LXD@github`_ |    - `LXD@github`_ | ||||||
| 
 | 
 | ||||||
| With the use of *Linux Containers* (LXC_) we can scale our tasks over a stack of | With the use of *Linux Containers* (LXC_) we can scale our tasks over a stack of | ||||||
| containers, what we call the: *lxc suite*.  The *searx suite* | containers, what we call the: *lxc suite*.  The *SearXNG suite* | ||||||
| (:origin:`lxc-searx.env <utils/lxc-searx.env>`) is loaded by default, every time | (:origin:`lxc-searx.env <utils/lxc-searx.env>`) is loaded by default, every time | ||||||
| you start the ``lxc.sh`` script (*you do not need to care about*). | you start the ``lxc.sh`` script (*you do not need to care about*). | ||||||
| 
 | 
 | ||||||
| @ -32,7 +32,7 @@ once:: | |||||||
|   $ snap install lxd |   $ snap install lxd | ||||||
|   $ lxd init --auto |   $ lxd init --auto | ||||||
| 
 | 
 | ||||||
| To make use of the containers from the *searx suite*, you have to build the | To make use of the containers from the *SearXNG suite*, you have to build the | ||||||
| :ref:`LXC suite containers <lxc.sh help>` initial.  But be warned, **this might | :ref:`LXC suite containers <lxc.sh help>` initial.  But be warned, **this might | ||||||
| take some time**:: | take some time**:: | ||||||
| 
 | 
 | ||||||
| @ -120,12 +120,12 @@ Reboot your system and check the iptables rules:: | |||||||
| Install suite | Install suite | ||||||
| ============= | ============= | ||||||
| 
 | 
 | ||||||
| To install the complete :ref:`searx suite (includes searx, morty & filtron) | To install the complete :ref:`SearXNG suite (includes searx, morty & filtron) | ||||||
| <lxc-searx.env>` into all LXC_ use:: | <lxc-searx.env>` into all LXC_ use:: | ||||||
| 
 | 
 | ||||||
|   $ sudo -H ./utils/lxc.sh install suite |   $ sudo -H ./utils/lxc.sh install suite | ||||||
| 
 | 
 | ||||||
| The command above installs a searx suite (see :ref:`installation scripts`).  To | The command above installs a SearXNG suite (see :ref:`installation scripts`).  To | ||||||
| get the IP (URL) of the filtron service in the containers use ``show suite`` | get the IP (URL) of the filtron service in the containers use ``show suite`` | ||||||
| command.  To test instances from containers just open the URLs in your | command.  To test instances from containers just open the URLs in your | ||||||
| WEB-Browser:: | WEB-Browser:: | ||||||
| @ -156,10 +156,10 @@ Makefile target ``test`` in the archlinux_ container:: | |||||||
|   sudo -H ./utils/lxc.sh cmd searx-archlinux make test |   sudo -H ./utils/lxc.sh cmd searx-archlinux make test | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Setup searx buildhost | Setup SearXNG buildhost | ||||||
| ===================== | ======================= | ||||||
| 
 | 
 | ||||||
| You can **install the searx buildhost environment** into one or all containers. | You can **install the SearXNG buildhost environment** into one or all containers. | ||||||
| The installation procedure to set up a :ref:`build host<buildhosts>` takes its | The installation procedure to set up a :ref:`build host<buildhosts>` takes its | ||||||
| time.  Installation in all containers will take more time (time for another cup | time.  Installation in all containers will take more time (time for another cup | ||||||
| of coffee).:: | of coffee).:: | ||||||
| @ -191,8 +191,8 @@ The ``--help`` output of the script is largely self-explanatory: | |||||||
| 
 | 
 | ||||||
| .. _lxc-searx.env: | .. _lxc-searx.env: | ||||||
| 
 | 
 | ||||||
| searx suite | SearXNG suite | ||||||
| =========== | ============= | ||||||
| 
 | 
 | ||||||
| .. literalinclude:: ../../utils/lxc-searx.env | .. literalinclude:: ../../utils/lxc-searx.env | ||||||
|    :language: bash |    :language: bash | ||||||
|  | |||||||
| @ -37,7 +37,7 @@ into this user account: | |||||||
| 
 | 
 | ||||||
| .. hint:: | .. hint:: | ||||||
| 
 | 
 | ||||||
|    To add morty to your searx instance read chapter :ref:`searx morty`. |    To add morty to your SearXNG instance read chapter :ref:`searx morty`. | ||||||
| 
 | 
 | ||||||
| Create user | Create user | ||||||
| =========== | =========== | ||||||
|  | |||||||
| @ -12,13 +12,13 @@ | |||||||
|    - :ref:`installation nginx` |    - :ref:`installation nginx` | ||||||
|    - :ref:`installation apache` |    - :ref:`installation apache` | ||||||
| 
 | 
 | ||||||
| To simplify installation and maintenance of a searx instance you can use the | To simplify installation and maintenance of a SearXNG instance you can use the | ||||||
| script :origin:`utils/searx.sh`. | script :origin:`utils/searx.sh`. | ||||||
| 
 | 
 | ||||||
| Install | Install | ||||||
| ======= | ======= | ||||||
| 
 | 
 | ||||||
| In most cases you will install searx simply by running the command: | In most cases you will install SearXNG simply by running the command: | ||||||
| 
 | 
 | ||||||
| .. code::  bash | .. code::  bash | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -1,6 +1,6 @@ | |||||||
| general: | general: | ||||||
|   debug: false              # Debug mode, only for development |   debug: false              # Debug mode, only for development | ||||||
|   instance_name: "searxng"  # displayed name |   instance_name: "SearXNG"  # displayed name | ||||||
|   contact_url: false        # mailto:contact@example.com |   contact_url: false        # mailto:contact@example.com | ||||||
| 
 | 
 | ||||||
| brand: | brand: | ||||||
|  | |||||||
| @ -99,7 +99,7 @@ class ViewsTestCase(SearxTestCase): | |||||||
|     def test_search_empty_html(self): |     def test_search_empty_html(self): | ||||||
|         result = self.app.post('/search', data={'q': ''}) |         result = self.app.post('/search', data={'q': ''}) | ||||||
|         self.assertEqual(result.status_code, 200) |         self.assertEqual(result.status_code, 200) | ||||||
|         self.assertIn(b'<span class="instance pull-left"><a href="/">searxng</a></span>', result.data) |         self.assertIn(b'<span class="instance pull-left"><a href="/">SearXNG</a></span>', result.data) | ||||||
| 
 | 
 | ||||||
|     def test_search_empty_json(self): |     def test_search_empty_json(self): | ||||||
|         result = self.app.post('/search', data={'q': '', 'format': 'json'}) |         result = self.app.post('/search', data={'q': '', 'format': 'json'}) | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user