summaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)Author
2024-03-11[mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTIONMarkus Heiser
In the past, some files were tested with the standard profile, others with a profile in which most of the messages were switched off ... some files were not checked at all. - ``PYLINT_SEARXNG_DISABLE_OPTION`` has been abolished - the distinction ``# lint: pylint`` is no longer necessary - the pylint tasks have been reduced from three to two 1. ./searx/engines -> lint engines with additional builtins 2. ./searx ./searxng_extra ./tests -> lint all other python files Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-03-10[doc] engine: mullvad letaMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-02-29[feat] engine: implementation of void linux packagesBnyro
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2024-02-25[refactor] images: add resolution, image format and filesize fieldsBnyro
Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2024-02-25[docs] engine_overview: add packages result templateBnyro
2024-02-20[mod] reduce memory footprint by not calling babel.Locale.parse at runtimeAlexandre Flament
babel.Locale.parse loads more than 60MB in RAM. The only purpose is to get: LOCALE_NAMES - searx.data.LOCALES["LOCALE_NAMES"] RTL_LOCALES - searx.data.LOCALES["RTL_LOCALES"] This commit calls babel.Locale.parse when the translations are update from weblate and stored in:: searx/data/locales.json This file can be build by:: ./manage data.locales By store these variables in searx.data when the translations are updated we save round about 65MB (usually 4 worker = 260MB of RAM saved. Suggested-by: https://github.com/searxng/searxng/discussions/2633#discussioncomment-8490494 Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2024-02-16[fix] remove twine from requirements-devMarkus Heiser
SearXNG is a rolling release / we do not deploy packages on PyPi Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-01-31[mod] remove X-XSS-Protection headersMarkus Heiser
Deprecated header not used by browsers nowadays[1]: """In modern browsers, X-XSS-Protection has been deprecated in favor of the Content-Security-Policy to disable the use of inline JavaScript. Its use can introduce XSS vulnerabilities in otherwise safe websites. This should not be used unless you need to support older web browsers that don’t yet support CSP. It is thus recommended to set the header as X-XSS-Protection: 0."""[2] [1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection [2] https://infosec.mozilla.org/guidelines/web_security#x-xss-protection Closes: https://github.com/searxng/searxng/issues/3171 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-01-15[mod] presearch: add language & region supportMarkus Heiser
In Presearch there are languages for the UI and regions for narrowing down the search. With this change the SearXNG engine supports a search by region. The details can be found in the documentation of the source code. To test, you can search terms like:: !presearch bmw :zh-TW !presearch bmw :en-CA 1. You should get results corresponding to the region (Taiwan, Canada) 2. and in the language (Chinese, Englisch). 3. The context in info box content is in the same language. Exceptions: 1. Region or language is not supported by Presearch or 2. SearXNG user did not selected a region tag, example:: !presearch bmw :en Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-01-09[mod] get rid of ./utils/brand.env and its workflowMarkus Heiser
All the environments defined in ./utils/brand.env are generated on the fly, so there is no longer a need to define the brand environment in this file and all the workflows to handle this file. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2024-01-07[feat] autocompleter: implementation of stract (beta)Bnyro
2023-11-27[feat] engine: implementation of bpbBnyro
2023-11-12[dev] manage runtime versions with asdfMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-11-12Docker: add UWSGI_WORKERS and UWSGI_THREAD environment variables (#2992)Alexandre Flament
* Docker: add UWSGI_WORKERS and UWSGI_THREAD. UWSGI_WORKERS specifies the number of process. UWSGI_THREADS specifies the number of threads. The Docker convention is to specify the whole configuration through environment variables. While not done in SearXNG, these two additional variables allows admins to skip uwsgi.ini In additional, https://github.com/searxng/preview-environments starts Docker without additional files through searxng-helm-chat. Each instance consumes 1Go of RAM which is a lot especially when there are a lot of instances / pull requests. * [scripts] add environments UWSGI_WORKERS and UWSGI_THREADS - UWSGI_WORKERS specifies the number of process. - UWSGI_THREADS specifies the number of threads. Templates for uwsgi scripts can be tested by:: UWSGI_WORKERS=8 UWSGI_THREADS=9 \ ./utils/searxng.sh --cmd\ eval "echo \"$(cat utils/templates/etc/uwsgi/*/searxng.ini*)\""\ | grep "workers\|threads" Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> --------- Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> Co-authored-by: Markus Heiser <markus.heiser@darmarit.de>
2023-11-01[mod] document server:public_instance & remove it out of the botdetectionMarkus Heiser
- the option server:public_instance lacks some documentation - the processing of this option belongs in the limiter and not in botdetection module Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-11-01[mod] isolation of botdetection from the limiterMarkus Heiser
This patch was inspired by the discussion around PR-2882 [2]. The goals of this patch are: 1. Convert plugin searx.plugin.limiter to normal code [1] 2. isolation of botdetection from the limiter [2] 3. searx/{tools => botdetection}/config.py and drop searx.tools 4. in URL /config, 'limiter.enabled' is true only if the limiter is really enabled (Redis is available). This patch moves all the code that belongs to botdetection into namespace searx.botdetection and code that belongs to limiter is placed in namespace searx.limiter. Tthe limiter used to be a plugin at some point botdetection was added, it was not a plugin. The modularization of these two components was long overdue. With the clear modularization, the documentation could then also be organized according to the architecture. [1] https://github.com/searxng/searxng/pull/2882 [2] https://github.com/searxng/searxng/pull/2882#issuecomment-1741716891 To test: - check the app works without the limiter, check `/config` - check the app works with the limiter and with the token, check `/config` - make docs.live .. and read - http://0.0.0.0:8000/admin/searx.limiter.html - http://0.0.0.0:8000/src/searx.botdetection.html#botdetection Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-10-09[mod] add hotkeys option to settings.ymlAlex Balgavy
The change in the hotkey mechanism introduced in 317db5b04 does not allow configuration via `settings.yml`. This commit adds that functionality. Closes: #2898
2023-10-09[fix] matrixrooms add proper MRS integrationAine
Related: - https://github.com/searxng/searxng/issues/2918
2023-10-09[feat] duckduckgo: support for videos and newsBnyro
2023-10-06[feat] engine: implementation of mastodonBnyro
2023-10-05[mod] engine - simplify region & lang handling, make filters configurableMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-09-29[mod] settings.yml: remove plugin settings for plugins that don't exist anymoreBnyro
2023-09-23[doc] move dosc of botdetection from developer to admin sectionMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-09-21[feat] engine: implementation of wallhavenBnyro
2023-09-18[feat] search on category select without JSBnyro
Co-authored-by: Alexandre Flament <alex@al-f.net>
2023-09-18[fix] spellingjazzzooo
2023-09-17[feat] implementation of qwant lite for web searchMarkus Heiser
Related: https://github.com/searxng/searxng/issues/2719 Replace: https://github.com/searxng/searxng/pull/2748 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-09-17[feat] engine: implemenation of moviepilot (de)Bnyro
2023-09-11[mod] library of congress: fix engineBnyro
2023-09-02[feat] engine: implementation of odyseeHackurei
2023-08-27[doc] add documentation of Mwmbl engine & autocompleterMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-27[mod] autocomplete.py: add support for mwmbl completionsBnyro
2023-08-27[dev-env] upgrade Sphinx-doc 7.2.3 and unpin at v7.1.2 on py3.8Markus Heiser
- Sphinx-doc 7.2.0 drops py3.8 support [1][2] - last version with py3.8 support is 7.1.2 Many LTS distributions still have py3.8 which EOL is in 2024-10 [3]. To continue to support a development environment on py3.8 the rigid dependency in the development environment is unpinned in py3.8 / environment markers [4]. To get 7.2.3. work, a fix in sphinx-notfound-page is needed [5][6]. [1] https://github.com/searxng/searxng/pull/2658#issuecomment-1684867270 [2] https://github.com/sphinx-doc/sphinx/issues/11621 [3] https://devguide.python.org/versions/#supported-versions [4] https://peps.python.org/pep-0508/#environment-markers [5] https://github.com/readthedocs/sphinx-notfound-page/issues/219 [6] https://github.com/readthedocs/sphinx-notfound-page/issues/219#issuecomment-1694691135 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-15[mod] improve seekr engines and add documentationMarkus Heiser
Tis patch adds some more fields to the result items and changed paging to the ``nextResultSet`` given in seekr's JSON response. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-13[fix] typos in documentation & messagesToxyFlog1627
2023-08-11[doc] add tagesschau API to the debveloper documentationMarkus Heiser
supplement to the commit e25d1c728 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-11[fix] typo in docs/admin/settings/settings_general.rst (doc)Markus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-10[feat] engine: support for lemmy communities, posts, comments and usersBnyro
2023-08-08[mod] implement brave (WEB) engine to replace XPath configurationMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-06[doc] improve documentation of make targets and ./manage scriptMarkus Heiser
BTW force modularization of the ./mange script into sub modules: - utils/lib_sxng_data.sh - utils/lib_sxng_node.sh - utils/lib_sxng_static.sh - utils/lib_sxng_test.sh - utils/lib_sxng_themes.sh Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-06[doc] engine bt4g: add documentation to docs/dev/engines/online/Markus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-04[mod] engine: wikimedia - improve results, add addition settings & docMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-03[doc] engine: YacyMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-08-03[doc] engine piped: add documentation to docs/dev/engines/online/Markus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-07-29[doc] reduce copyright remark in the footer to the SearXNG teamMarkus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-07-07[feat] engine: re-enables z-library (zlibrary-global.se)Paolo Basso
- re-enables z-library as the new domain zlibrary-global.se is now available from the open web. The announcement of the domain: https://www.reddit.com/r/zlibrary/comments/13whe08/mod_note_zlibraryglobalse_domain_is_officially/ It is an official domain, it requires to log in to the "personal" subdomain only to download files, but the search works. - changes the result template of zlibrary to paper.html, filling the appropriate fields - implements language filtering for zlibrary - implement zlibrary custom filters (engine traits) - refactor and document the zlibrary engine
2023-07-01[doc] rearranges Settings & Engines docs for better readabilityMarkus Heiser
We have built up detailed documentation of the *settings* and the *engines* over the past few years. However, this documentation was still spread over various chapters and was difficult to navigate in its entirety. This patch rearranges the Settings & Engines documentation for better readability. To review new ordered docs:: make docs.clean docs.live Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-06-29[mod] engine: Anna's Archive - additionl settings (content, sort, ext)Markus Heiser
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-06-28[mod] engine torznab - refactor & option to hide linksPaolo Basso
- torznab engine using types and clearer code - torznab option to hide torrent and magnet links. - document the torznab engine - add myself to authors Closes: https://github.com/searxng/searxng/issues/1124 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-06-25[fix] engine & network issues / documentation and type annotationsMarkus Heiser
This patch fixes some quirks and issues related to the engines and the network. Each engine has its own network and this network was broken for the following engines[1]: - archlinux - bing - dailymotion - duckduckgo - google - peertube - startpage - wikipedia Since the files have been touched anyway, the type annotaions of the engine modules has also been completed so that error messages from the type checker are no longer reported. Related and (partial) fixed issue: - [1] https://github.com/searxng/searxng/issues/762#issuecomment-1605323861 - [2] https://github.com/searxng/searxng/issues/2513 - [3] https://github.com/searxng/searxng/issues/2515 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>