This quickstart guide gets your environment set up with searx. Furthermore, it
gives a short introduction to the
How to setup your development environment¶
First, clone the source code of searx to the desired folder. In this case the
source is cloned to
~/myprojects/searx. Then create and activate the
searx-ve virtualenv and install the required packages using
cd ~/myprojects git clone https://github.com/asciimoo/searx.git cd searx python3 -m venv searx-ve . ./searx-ve/bin/activate ./manage.sh update_dev_packages
How to run tests¶
Tests can be run using the
manage.sh script. Following tests and checks are
Unit test coverage check
For example unit tests are run with the command below:
For further test options, please consult the help of the
manage.sh script or
read make test.
How to build styles¶
sudo -H apt-get install nodejs sudo -H npm install -g less
sudo -H apt-get install node-less
After satisfying the requirements styles can be build using
How to build the source of the themes¶
sudo -H apt-get install nodejs make node.env
After installing grunt, the files can be built using the following command:
Tips for debugging/development¶
- Turn on debug logging
Whether you are working on a new engine or trying to eliminate a bug, it is always a good idea to turn on debug logging. When debug logging is enabled a stack trace appears, instead of the cryptic
Internal Server Errormessage. It can be turned on by setting
debug: Truein settings.yml.
./manage.sh testsbefore creating a PR.
Failing build on Travis is common because of PEP8 checks. So a new commit must be created containing these format fixes. This phase can be skipped if
./manage.sh testsis run locally before creating a PR.