diff --git a/Makefile b/Makefile index 20f89a79b..9d49e8d5f 100644 --- a/Makefile +++ b/Makefile @@ -50,8 +50,8 @@ search.checker.%: install $(Q)./manage pyenv.cmd searx-checker -v "$(subst _, ,$(patsubst search.checker.%,%,$@))" PHONY += test ci.test test.shell -ci.test: test.yamllint test.black test.pylint test.unit test.robot -test: test.yamllint test.black test.pylint test.unit test.robot test.shell +ci.test: test.yamllint test.black test.pylint test.unit test.robot test.rst +test: test.yamllint test.black test.pylint test.unit test.robot test.rst test.shell test.shell: $(Q)shellcheck -x -s dash \ dockerfiles/docker-entrypoint.sh @@ -86,7 +86,7 @@ MANAGE += py.build py.clean MANAGE += pyenv pyenv.install pyenv.uninstall MANAGE += pypi.upload pypi.upload.test MANAGE += format.python -MANAGE += test.yamllint test.pylint test.black test.unit test.coverage test.robot test.clean +MANAGE += test.yamllint test.pylint test.black test.unit test.coverage test.robot test.rst test.clean MANAGE += themes.all themes.oscar themes.simple themes.simple.test pygments.less MANAGE += static.build.commit static.build.drop static.build.restore MANAGE += nvm.install nvm.clean nvm.status nvm.nodejs diff --git a/README.rst b/README.rst index becf7b989..38a50a62f 100644 --- a/README.rst +++ b/README.rst @@ -1,11 +1,21 @@ .. SPDX-License-Identifier: AGPL-3.0-or-later +---- + .. figure:: https://raw.githubusercontent.com/searxng/searxng/master/src/brand/searxng.svg :target: https://docs.searxng.org/ :alt: SearXNG :width: 100% :align: center - + +---- + +Privacy-respecting, hackable `metasearch engine`_ + +If you are looking for running instances, ready to use, then visit searx.space_. +Otherwise jump to the user_, admin_ and developer_ handbooks you will find on +our homepage_. + |SearXNG install| |SearXNG homepage| |SearXNG wiki| @@ -15,12 +25,7 @@ |weblate| |SearXNG logo| -Privacy-respecting, hackable `metasearch engine`_ - -If you are looking for running instances, ready to use, then visit searx.space_. - -Otherwise jump to the user_, admin_ and developer_ handbooks you will find on -our homepage_. +---- .. _searx.space: https://searx.space .. _user: https://docs.searxng.org/user @@ -58,26 +63,76 @@ our homepage_. :target: https://weblate.bubu1.eu/projects/searxng/ -SearXNG is a fork of `searx`_: +Contact +======= -* `the differences with searx `_ -* `exhaustive changelog `_ +Come join us if you have questions or just want to chat about SearXNG. + +Matrix + `#searxng:matrix.org `_ + +IRC + `#searxng on libera.chat `_ + which is bridged to Matrix. + + +Differences to searx +==================== + +SearXNG is a fork of `searx`_. Here are some of the changes: .. _searx: https://github.com/searx/searx -Contact -""""""" +User experience +--------------- -Matrix: `#searxng:matrix.org `_ +- Huge update of the simple theme: + + * usable on desktop, tablet and mobile + * light and dark versions (you can choose in the preferences) + * support right-to-left languages + +- the translations are up to date, you can contribute on `Weblate`_ +- the preferences page has been updated: + + * you can see which engines are reliable or not + * engines are grouped inside each tab + * each engine has a description + +- it is easier to report a bug of an engine +- but you can also disable the recording of the metrics on the server + + +Setup +----- + +- the Docker image is now also built for ARM64 and ARM/v7 architectures +- you don't need `Morty`_ to proxy the images even on a public instance +- on the way to embed `Filtron`_ into SearXNG +- up to date installation scripts + + +Contributing is easier +---------------------- + +- readable debug log +- contributions to the themes are made easier, check out our `Development + Quickstart`_ guide +- a lot of code cleanup and bug fixes +- the dependencies are up to date + +.. _Morty: https://github.com/asciimoo/morty +.. _Filtron: https://github.com/searxng/filtron +.. _Weblate: https://weblate.bubu1.eu/projects/searxng/searxng/ +.. _Development Quickstart: https://docs.searxng.org/dev/quickstart.html -IRC: `#searxng on libera.chat `_ which is bridged to Matrix. - Translations -"""""""""""" +============ -We need translators, suggestions are welcome at https://weblate.bubu1.eu/projects/searxng/searxng/ +We need translators, suggestions are welcome at +https://weblate.bubu1.eu/projects/searxng/searxng/ .. figure:: https://weblate.bubu1.eu/widgets/searxng/-/multi-auto.svg :target: https://weblate.bubu1.eu/projects/searxng/ diff --git a/manage b/manage index 1643802f4..88ac75aac 100755 --- a/manage +++ b/manage @@ -46,6 +46,10 @@ while IFS= read -r line; do YAMLLINT_FILES+=("$line") done <<< "$(git ls-files './tests/*.yml' './searx/*.yml' './utils/templates/etc/searxng/*.yml')" +RST_FILES=( + 'README.rst' +) + PYLINT_SEARXNG_DISABLE_OPTION="\ I,C,R,\ W0105,W0212,W0511,W0603,W0613,W0621,W0702,W0703,W1401,\ @@ -103,6 +107,7 @@ test.: unit : run unit tests coverage : run unit tests with coverage robot : run robot test + rst : test .rst files incl. README.rst clean : clean intermediate test stuff themes.: all : build all themes @@ -707,6 +712,13 @@ test.robot() { dump_return $? } +test.rst() { + build_msg TEST "[reST markup] ${RST_FILES[@]}" + for rst in "${RST_FILES[@]}"; do + pyenv.cmd rst2html.py --halt error "$rst" > /dev/null || die 42 "fix issue in $rst" + done +} + test.clean() { build_msg CLEAN "test stuff" rm -rf geckodriver.log .coverage coverage/