mirror of
				https://github.com/searxng/searxng.git
				synced 2025-10-31 02:27: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 | ||||
| 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 | ||||
| 
 | ||||
|  | ||||
| @ -14,10 +14,10 @@ Architecture | ||||
|    - Searx: :ref:`installation basic` | ||||
| 
 | ||||
| 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>`. | ||||
| 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`. | ||||
| 
 | ||||
| .. _arch public: | ||||
| @ -25,4 +25,4 @@ maintained by the scripts from our :ref:`toolboxing`. | ||||
| .. kernel-figure:: 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 | ||||
| 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 | ||||
| :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. | ||||
| 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 | ||||
| see how you can simplify your *user defined* ``settings.yml``. | ||||
| 
 | ||||
| @ -71,11 +71,11 @@ Global Settings | ||||
| 
 | ||||
|    general: | ||||
|      debug: false               # Debug mode, only for development | ||||
|      instance_name:  "searxng"  # displayed name | ||||
|      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 | ||||
|   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. | ||||
| 
 | ||||
| ``contact_url``: | ||||
| @ -110,29 +110,29 @@ Global Settings | ||||
|    rebuild instance's environment :ref:`utils/brand.env <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 | ||||
|   (:ref:`utils/brand.env <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 | ||||
|   directly using ``python searx/webapp.py``.  Doesn't apply to searx running on | ||||
|   Port number and *bind address* of the SearXNG web application if you run it | ||||
|   directly using ``python searx/webapp.py``.  Doesn't apply to SearXNG 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. | ||||
|   Allow your instance of SearXNG of being able to proxy images.  Uses memory space. | ||||
| 
 | ||||
| ``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 | ||||
|   specific instance of searx, a locale can be defined using an ISO language | ||||
|   code, like ``fr``, ``en``, ``de``. | ||||
| 
 | ||||
| ``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 | ||||
| 
 | ||||
| @ -171,11 +171,11 @@ Communication with search engines. | ||||
| ``request_timeout`` : | ||||
|   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 | ||||
|   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` | ||||
| 
 | ||||
| ``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. | ||||
| 
 | ||||
| ``keepalive_expiry``: | ||||
| @ -201,7 +201,7 @@ Communication with search engines. | ||||
|   * ``[ 192.168.0.1, fe80::/126 ]`` | ||||
| 
 | ||||
| ``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. | ||||
| 
 | ||||
| ``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 | ||||
| 
 | ||||
| ``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... | ||||
| 
 | ||||
| ``engine`` : | ||||
| @ -361,7 +361,7 @@ and can relied on the default configuration :origin:`searx/settings.yml` using: | ||||
| ``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 | ||||
|   ``name``.  In this example, SearXNG will load all the engine and the arch linux | ||||
|   wiki engine has a :ref:`token <private engines>`: | ||||
| 
 | ||||
|   .. code-block:: yaml | ||||
| @ -375,7 +375,7 @@ and can relied on the default configuration :origin:`searx/settings.yml` using: | ||||
| 
 | ||||
| ``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 | ||||
|   example is similar to the above one, but SearXNG doesn't load the the google | ||||
|   engine: | ||||
| 
 | ||||
|   .. code-block:: yaml | ||||
| @ -392,7 +392,7 @@ and can relied on the default configuration :origin:`searx/settings.yml` using: | ||||
| 
 | ||||
| ``engines:`` / ``keep_only:`` | ||||
|   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 | ||||
| 
 | ||||
|  | ||||
| @ -10,7 +10,7 @@ SQL Engines | ||||
|    - `PostgreSQL <https://www.postgresql.org>`_ | ||||
|    - `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: | ||||
| 
 | ||||
| - :ref:`engine sqlite` | ||||
| @ -98,7 +98,7 @@ Extra Dependencies | ||||
| ------------------ | ||||
| 
 | ||||
| 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 | ||||
| :ref:`searx.sh`:: | ||||
| 
 | ||||
|  | ||||
| @ -18,7 +18,7 @@ How to protect an instance | ||||
| 
 | ||||
| .. _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. | ||||
| 
 | ||||
| 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 | ||||
| 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`. | ||||
|  | ||||
| @ -170,13 +170,13 @@ Apache Reverse Proxy | ||||
| 
 | ||||
| .. 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 | ||||
|    :ref:`installation scripts`.  If already done, follow setup: *searx via | ||||
|    :ref:`installation scripts`.  If already done, follow setup: *SearXNG via | ||||
|    filtron plus morty*. | ||||
| 
 | ||||
| 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, | ||||
| except in :ref:`The Debian Layout`. | ||||
| 
 | ||||
| @ -234,7 +234,7 @@ proxied host. | ||||
| 
 | ||||
| .. 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 | ||||
|       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 | ||||
| 
 | ||||
|    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 | ||||
| use the following *prune* command: | ||||
|  | ||||
| @ -128,17 +128,17 @@ depends on the linux distribution: | ||||
| 
 | ||||
| .. _nginx searx site: | ||||
| 
 | ||||
| A nginx searx site | ||||
| ================== | ||||
| A nginx SearXNG site | ||||
| ==================== | ||||
| 
 | ||||
| .. 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 | ||||
|    :ref:`installation scripts`.  If already done, follow setup: *searx via | ||||
|    :ref:`installation scripts`.  If already done, follow setup: *SearXNG via | ||||
|    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 | ||||
| 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:: | ||||
| 
 | ||||
|    .. 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 | ||||
|       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 | ||||
|       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 | ||||
| 
 | ||||
| @ -313,7 +313,7 @@ Started wiki`_ is always a good resource *to keep in the pocket*. | ||||
|              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 | ||||
|       configuration.  Since there are no HTTP headers in a (u)WSGI protocol, the | ||||
|       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/; | ||||
|          } | ||||
| 
 | ||||
|       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`. | ||||
| 
 | ||||
|       .. code:: yaml | ||||
|  | ||||
| @ -36,8 +36,8 @@ Create user | ||||
| 
 | ||||
| .. _searx-src: | ||||
| 
 | ||||
| install searx & dependencies | ||||
| ============================ | ||||
| Install SearXNG & dependencies | ||||
| ============================== | ||||
| 
 | ||||
| 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 | ||||
|    :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 | ||||
| from the login (*~/.profile*): | ||||
| 
 | ||||
| @ -106,8 +106,8 @@ For a *minimal setup*, configure like shown below – replace ``searx@$(uname | ||||
| Check | ||||
| ===== | ||||
| 
 | ||||
| To check your searx setup, optional enable debugging and start the *webapp*. | ||||
| Searx looks at the exported environment ``$SEARX_SETTINGS_PATH`` for a | ||||
| To check your SearXNG setup, optional enable debugging and start the *webapp*. | ||||
| SearXNG looks at the exported environment ``$SEARX_SETTINGS_PATH`` for a | ||||
| configuration file. | ||||
| 
 | ||||
| .. kernel-include:: $DOCS_BUILD/includes/searx.rst | ||||
| @ -115,6 +115,6 @@ configuration file. | ||||
|    :end-before: END check searx installation | ||||
| 
 | ||||
| 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 | ||||
| command twice).  At this point searx is not demonized; uwsgi allows this. | ||||
| debug option in ``settings.yml``. You can now exit SearXNG user bash (enter exit | ||||
| 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 | ||||
|     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 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 | ||||
|   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 stop instance remove ini            --> rm /etc/uwsgi.d/searx.ini | ||||
| 
 | ||||
|  | ||||
| @ -11,7 +11,7 @@ Installation | ||||
| - :ref:`installation basic` | ||||
| 
 | ||||
| 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 | ||||
| :ref:`filtron reverse proxy <filtron.sh>` and for privacy a :ref:`result proxy | ||||
| <morty.sh>` is mandatory. | ||||
| @ -51,9 +51,9 @@ the case if you clone into a folder below ``/root``. | ||||
|    - :ref:`update 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 | ||||
| 
 | ||||
| @ -80,8 +80,8 @@ If all services are running fine, you can add it to your HTTP server: | ||||
| 
 | ||||
| **Install** :ref:`external plugins <dev plugin>` | ||||
| 
 | ||||
| Use searx's ``shell`` to install external plugins.  In the example below we | ||||
| install the searx plugins from **The Green Web Foundation** `[ref] | ||||
| Use SearXNG's ``shell`` to install external plugins.  In the example below we | ||||
| install the SearXNG plugins from **The Green Web Foundation** `[ref] | ||||
| <https://www.thegreenwebfoundation.org/news/searching-the-green-web-with-searx/>`__: | ||||
| 
 | ||||
| .. code:: bash | ||||
|  | ||||
| @ -12,7 +12,7 @@ How to setup result proxy | ||||
| .. _morty: 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_. | ||||
| 
 | ||||
| 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 | ||||
| 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 | ||||
| :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 | ||||
| :ref:`installation scripts`, use ``update`` command from the scripts. | ||||
| 
 | ||||
| **Update** :ref:`searx service <searx.sh>` | ||||
| **Update** :ref:`SearXNG service <searx.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 | ||||
| :ref:`installation scripts`, use ``inspect`` command from the scripts. | ||||
| 
 | ||||
| **Inspect** :ref:`searx service <searx.sh>` | ||||
| **Inspect** :ref:`SearXNG service <searx.sh>` | ||||
| 
 | ||||
| .. code:: sh | ||||
| 
 | ||||
|  | ||||
| @ -118,7 +118,7 @@ ${fedora_build} | ||||
|        pip install -U wheel | ||||
|        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})$ 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' | ||||
| 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') | ||||
| DOCS_URL = get_setting('brand.docs_url') | ||||
| PUBLIC_INSTANCES = get_setting('brand.public_instances') | ||||
| @ -132,7 +132,7 @@ html_sidebars = { | ||||
| singlehtml_sidebars = {"index": ["project.html", "localtoc.html"]} | ||||
| html_static_path = ["static"] | ||||
| 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 | ||||
| 
 | ||||
| # LaTeX ---------------------------------------------------------------- | ||||
|  | ||||
| @ -12,21 +12,21 @@ How to contribute | ||||
| 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: | ||||
| 
 | ||||
| - support of search engines | ||||
| - 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 | ||||
| "privacy" deserves a separate chapter, as it's quite uncommon unfortunately. | ||||
| 
 | ||||
| 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 | ||||
| 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`` | ||||
| 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. | ||||
| 
 | ||||
|   *Happy hacking.* | ||||
| @ -99,7 +99,7 @@ In order to submit a patch, please follow the steps below: | ||||
| 
 | ||||
| - 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 | ||||
|  | ||||
| @ -15,11 +15,11 @@ Engine Overview | ||||
|    :depth: 3 | ||||
|    :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. | ||||
| 
 | ||||
| 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`. | ||||
| 
 | ||||
| .. _general engine configuration: | ||||
| @ -27,7 +27,7 @@ engines.  Adapters are stored under the folder :origin:`searx/engines`. | ||||
| 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 | ||||
| ``settings.yml``). The arguments in the settings file override the ones in the | ||||
| engine file. | ||||
| @ -88,7 +88,7 @@ Overrides | ||||
| 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 | ||||
| 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``). | ||||
| 
 | ||||
| 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 | ||||
| even development tasks over a stack of isolated containers / what we call the: | ||||
| 
 | ||||
|   **SearxNG LXC suite** | ||||
|   **SearXNG LXC suite** | ||||
| 
 | ||||
| .. hint:: | ||||
| 
 | ||||
| @ -211,7 +211,7 @@ To debug services from filtron and morty analogous use: | ||||
|         $ ./utils/filtron.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 | ||||
| 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: | ||||
| @ -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`` | ||||
| - 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 | ||||
| ``systemctl`` (compare :ref:`service architectures on distributions <uwsgi | ||||
| configuration>`). | ||||
| @ -280,7 +280,7 @@ configuration>`). | ||||
|         $ sudo -H ./utils/lxc.sh cmd searx-archlinux \ | ||||
|           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. | ||||
| 
 | ||||
| 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 | ||||
| 
 | ||||
| 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): | ||||
| 
 | ||||
| .. tabs:: | ||||
|  | ||||
| @ -38,7 +38,7 @@ Python Environment (``make install``) | ||||
| 
 | ||||
| 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 | ||||
| *developer install* of searx (:origin:`setup.py`). :: | ||||
| *developer install* of SearXNG (:origin:`setup.py`). :: | ||||
| 
 | ||||
|    $ cd ~/searx-clone | ||||
|    $ make install | ||||
| @ -193,7 +193,7 @@ commit. | ||||
| .. _Pylint: https://www.pylint.org/ | ||||
| 
 | ||||
| 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`. | ||||
| 
 | ||||
| .. _make search.checker: | ||||
|  | ||||
| @ -11,7 +11,7 @@ Offline Engines | ||||
|    - :ref:`engine command` | ||||
|    - :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 | ||||
| connection to perform a search and does not use HTTP to communicate. | ||||
| 
 | ||||
| @ -47,14 +47,14 @@ Engine representation in ``/config`` | ||||
| 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, | ||||
| 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 | ||||
| admins can install packages in advance. | ||||
| 
 | ||||
| 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`:: | ||||
| 
 | ||||
|   $ 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, | ||||
| 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. | ||||
| 
 | ||||
| 
 | ||||
|  | ||||
| @ -6,7 +6,7 @@ Development Quickstart | ||||
| 
 | ||||
| .. _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>`. | ||||
| 
 | ||||
| .. code:: sh | ||||
|  | ||||
| @ -6,10 +6,10 @@ reST primer | ||||
| 
 | ||||
| .. 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_. | ||||
| 
 | ||||
| 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 | ||||
| generated and deployed at :docs:`github.io <.>`.  For build prerequisites read | ||||
| :ref:`docs build`. | ||||
| @ -78,7 +78,7 @@ User's POV: :origin:`docs/user` | ||||
| 
 | ||||
| Admin's POV: :origin:`docs/admin` | ||||
|   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` | ||||
|   Depending on the readability_ of code, a typical developer is able to read and | ||||
| @ -900,7 +900,7 @@ primer>`. | ||||
| 
 | ||||
|    .. 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_. | ||||
| 
 | ||||
| Generic admonition | ||||
| @ -1280,7 +1280,7 @@ Templating | ||||
| 
 | ||||
| Templating is suitable for documentation which is created generic at the build | ||||
| 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 | ||||
| :origin:`docs/admin/engines.rst` is shown: | ||||
| 
 | ||||
|  | ||||
| @ -24,7 +24,7 @@ Parameters | ||||
| 
 | ||||
| ``q`` : required | ||||
|   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 | ||||
|   passed to any search engine which does not filter its results based on this | ||||
|   syntax, you might not get the results you wanted. | ||||
|  | ||||
| @ -1,5 +1,5 @@ | ||||
| ================== | ||||
| Welcome to searxng | ||||
| Welcome to SearXNG | ||||
| ================== | ||||
| 
 | ||||
|     *Search without being tracked.* | ||||
| @ -8,12 +8,12 @@ Welcome to 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, | ||||
| 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 | ||||
| anyone, you can set up your own, see :ref:`installation`. | ||||
| Get started with SearXNG by using one of the instances listed at searx.space_. | ||||
| If you don't trust anyone, you can set up your own, see :ref:`installation`. | ||||
| 
 | ||||
| .. sidebar::  Features | ||||
| 
 | ||||
| @ -36,4 +36,4 @@ anyone, you can set up your own, see :ref:`installation`. | ||||
|    utils/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 a common question among searx users.  Before answering this question, | ||||
| see what options a searx user has. | ||||
| \.\. is a common question among SearXNG users.  Before answering this question, | ||||
| see what options a SearXNG user has. | ||||
| 
 | ||||
| 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 | ||||
| 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 | ||||
| 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. | ||||
| 
 | ||||
| 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 | ||||
| comes in three forms: | ||||
| 
 | ||||
| @ -31,11 +31,11 @@ comes in three forms: | ||||
| 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 | ||||
| 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 | ||||
| <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 | ||||
| protecting users from search services, both referring page and search query are | ||||
| 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. | ||||
| 
 | ||||
| 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 | ||||
| their computer, it will not be accessible to others as long as their computer is | ||||
| not compromised. | ||||
| @ -70,10 +70,10 @@ Conclusion | ||||
| ========== | ||||
| 
 | ||||
| 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. | ||||
| 
 | ||||
| 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 | ||||
| world a better place, because those who cannot or do not want to run an | ||||
| instance, have access to a privacy respecting search service. | ||||
|  | ||||
| @ -5,7 +5,7 @@ | ||||
| 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. | ||||
| 
 | ||||
| Prefix ``!`` | ||||
| @ -44,11 +44,11 @@ Custom language in wikipedia: | ||||
| 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. | ||||
| 
 | ||||
| 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: | ||||
|  .. code-block:: yaml | ||||
|  | ||||
| @ -35,7 +35,7 @@ Scripts to maintain services often dispose of common commands and environments. | ||||
| ``FORCE_TIMEOUT`` : environment | ||||
|   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 | ||||
|   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 :: | ||||
| 
 | ||||
|     sudo -H ./utils/lxc.sh cmd -- FORCE_TIMEOUT=0 ./utils/filtron.sh apache install | ||||
|  | ||||
| @ -22,7 +22,7 @@ | ||||
|    - `LXD@github`_ | ||||
| 
 | ||||
| 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 | ||||
| you start the ``lxc.sh`` script (*you do not need to care about*). | ||||
| 
 | ||||
| @ -32,7 +32,7 @@ once:: | ||||
|   $ snap install lxd | ||||
|   $ 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 | ||||
| take some time**:: | ||||
| 
 | ||||
| @ -120,12 +120,12 @@ Reboot your system and check the iptables rules:: | ||||
| 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:: | ||||
| 
 | ||||
|   $ 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`` | ||||
| command.  To test instances from containers just open the URLs in your | ||||
| WEB-Browser:: | ||||
| @ -156,10 +156,10 @@ Makefile target ``test`` in the archlinux_ container:: | ||||
|   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 | ||||
| time.  Installation in all containers will take more time (time for another cup | ||||
| of coffee).:: | ||||
| @ -191,8 +191,8 @@ The ``--help`` output of the script is largely self-explanatory: | ||||
| 
 | ||||
| .. _lxc-searx.env: | ||||
| 
 | ||||
| searx suite | ||||
| =========== | ||||
| SearXNG suite | ||||
| ============= | ||||
| 
 | ||||
| .. literalinclude:: ../../utils/lxc-searx.env | ||||
|    :language: bash | ||||
|  | ||||
| @ -37,7 +37,7 @@ into this user account: | ||||
| 
 | ||||
| .. 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 | ||||
| =========== | ||||
|  | ||||
| @ -12,13 +12,13 @@ | ||||
|    - :ref:`installation nginx` | ||||
|    - :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`. | ||||
| 
 | ||||
| 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 | ||||
| 
 | ||||
|  | ||||
| @ -1,6 +1,6 @@ | ||||
| general: | ||||
|   debug: false              # Debug mode, only for development | ||||
|   instance_name: "searxng"  # displayed name | ||||
|   instance_name: "SearXNG"  # displayed name | ||||
|   contact_url: false        # mailto:contact@example.com | ||||
| 
 | ||||
| brand: | ||||
|  | ||||
| @ -99,7 +99,7 @@ class ViewsTestCase(SearxTestCase): | ||||
|     def test_search_empty_html(self): | ||||
|         result = self.app.post('/search', data={'q': ''}) | ||||
|         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): | ||||
|         result = self.app.post('/search', data={'q': '', 'format': 'json'}) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user