Upstream installation guide: https://asciimoo.github.io/searx/dev/install/installation.html The Debian setup varies at some points. Here is the most simple setup that starts searx in the foreground without daemonization: 1. Copy the default configuration file $ mkdir /etc/searx $ gzip --to-stdout --decompress /usr/share/doc/searx/examples/settings.yml.gz > /etc/searx/settings.yml 2. Generate a secret key $ sed -i -e "s/ultrasecretkey/$(openssl rand -hex 16)/g" /etc/searx/settings.yml 3. Start searx $ searx-run 4. Try it out $ sensible-browser 127.0.0.1:8888 It follows a step by step instruction of how to setup searx as a uwsgi service behind nginx: 1. Copy and symlink the nginx configuration $ cp /usr/share/doc/searx/examples/nginx/sites-available/searx /etc/nginx/sites-available $ ln -s ../sites-available/searx /etc/nginx/sites-enabled/searx 2. Copy and symlink the uwsgi configuration $ cp /usr/share/doc/searx/examples/uwsgi/apps-available/searx.ini /etc/uwsgi/apps-available $ ln -s ../apps-available/searx.ini /etc/uwsgi/apps-enabled/searx.ini 3. Copy the default configuration file $ mkdir /etc/searx $ gzip --to-stdout --decompress /usr/share/doc/searx/examples/settings.yml.gz > /etc/searx/settings.yml 4. Generate a secret key $ sed -i -e "s/ultrasecretkey/$(openssl rand -hex 16)/g" /etc/searx/settings.yml 5. Restart nginx and uwsgi $ systemctl restart nginx $ systemctl restart uwsgi The differences to the upstream instructions are: - the uwsgi user and group are www-data - python3 is used instead of python2 - no virtualenv is used - uwsgi pythonpath and chdir are Debian-specific - no root directive is set in nginx configuration