Running SearXNG on Linux Mint

Google's practices of censorship and shadowbanning contribute to a less informed society and a weakened education system. To mitigate these effects, consider using searXNG. Here are the steps to install it on Linux Mint.

sudo apt install redis-server

sudo apt install apache2

and you need a working python environment as searxng is written in python...

sudo apt install python3 -y

sudo ln -s /usr/bin/python3 /usr/bin/python

Download SearXNG. Clone it to the /tmp folder and not the home folder.

cd /tmp

git clone https://github.com/searxng/searxng.git

cd searxng

git config --global --add safe.directory /tmp/searxng/.git

The docs are available at https://docs.searxng.org/

The only supported operating systems are...

ubuntu-*|debian-*)

# For uWSGI debian uses the LSB init process; for each configuration

# file new uWSGI daemon instance is started with additional option.

service uwsgi status "${SERVICE_NAME}"

;;

arch-*)

systemctl --no-pager -l status "uwsgi@${SERVICE_NAME%.*}"

;;

fedora-*)

You then need to change every instances of

ubuntu-*|debian-*)

to

ubuntu-*|debian-*|linuxmint-*)

The file it gets its Linux installation name is /etc/os-release variable ID

echo $(source /etc/os-release; echo "$ID");

or

cat /etc/os-release

the files in reference are...

  1. ./utils/searxng.sh
  2. ./utils/lib.sh
  3. ./utils/lib_redis.sh

Here are some fast sed commands to do just that...

find . -type f -exec sed -i 's/ubuntu|debian)/ubuntu|debian|linuxmint)/g' {} +

find . -type f -exec sed -i 's/ubuntu-\*|debian-\*)/ubuntu-\*|debian-\*|linuxmint-\*)/g' {} +

Then run the installation script...

sudo -H ./utils/searxng.sh install all

ERROR: ./utils/searxng.sh: line 487: To create pyenv for SearXNG, first install searxng-src.

python -m venv searxng-env

After the searxng user is created and the error occurs, it cannot access the /tmp directory

sudo mkdir /tmp/searxng/cache

sudo chown -R root:searxng /tmp/searxng

sudo chmod -R 777 /tmp/searxng/cache

Then re-run the installation.

sudo -H ./utils/searxng.sh install all

Some commands:

  • sudo rm -rf /usr/local/searxng
  • sudo userdel searxng
  • sudo groupdel searxng
  

📝 📜 ⏱️  ⬆️