Update: Install Whoogle On Devuan 2024-04-05
I actually moved my Whoogle instance from one VPS to another (looks like Whoogle will have to just stay on a VPS and migration to home-host isn't going to work well) and while following my own instructions I found that I also had to install a bunch of other python related dependencies. It sucks that they had to be installed, but here they are:
# apt-get install python3-cssutils python3-bs4 python3-cryptography python3-flask python3-requests \
python3-brotli python3-defusedxml python3-stem python3-validators python3-waitress
Install Whoogle On Devuan 2024-02-05
So, one of the services I have to migrate off of my VPSs is my Whoogle instance. Unfortunately though, the install instructions are a little lacking. I assume the docker install instructions are just fine, but what kind of monster runs anything on docker? Anyways, this is what I did to my Whoogle instance in Devuan Ceres (equivalent of Debian Sid), but I also tested to see that it works if you skip the upgrade to Ceres and just leave it at Devuan Daedalus (equivalent of Debian Bookworm). Just sayin'.
It should also be said that this is just the Whoogle service, and that it is only clear text. To get TLS this requires that you setup a reverse proxy [I'll use nginx for this] that will manage the certs. So, starting with a fresh install of Daedalus (standard system utilities only):
# apt-get update
# apt-get install usrmerge
# echo "deb http://deb.devuan.org/merged ceres main" > /etc/apt/sources.list
# apt-get update
# apt-get upgrade
# reboot
# apt-get dist-upgrade
# reboot
# apt-get install libcurl4-openssl-dev libssl-dev git python3.11-venv python3-pip pkg-config rustc cargo
# useradd -d /home/whoogle -U -m -s /bin/bash whoogle
# su whoogle
$ cd ~
$ git clone https://github.com/benbusby/whoogle-search.git
$ cd whoogle-search
$ python3 -m venv venv
$ source venv/bin/activate
$ python3 -m pip install --upgrade pip
$ pip install -r requirements.txt
$ export WHOOGLE_AUTOCOMPLETE=0
$ export WHOOGLE_MINIMAL=1
$ export WHOOGLE_CONFIG_THEME=dark
$ export WHOOGLE_CONFIG_LANGUAGE=en
$ export WHOOGLE_CONFIG_SEARCH_LANGUAGE=en
$ export WHOOGLE_CONFIG_COUNTRY=ca
$ export WHOOGLE_RESULTS_PER_PAGE=15
$ ./run
Yes, that is about a gigabyte and a half of dependencies. Seriously though, don't use docker. Just don't. Anyways, if you want to restart the service after a reboot (and you probably would) you could follow the setup instructions for a systemd service or you could just put the export commands above in a file called mywhooglesettings.txt, then create a script like this and cron it (as the whoogle user) to start on reboot.
#!/bin/bash
cd ~/whoogle-search
source venv/bin/activate
source mywhooglesettings.txt
./run