I'm currently trying to set up a self-hosted SearX search engine on Ubuntu 22.04. In order for the search engine to work, I have to manually run the following commands on startup:
This is kind of annoying to have to do, so I put the script into /etc/rc.local and went through all the steps to enable all that. Now my rc.local file looks like:
systemd[1]: Starting /etc/rc.local Compatibility...
sudo[8469]: root : PWD=/usr/local/searx ; USER=searx ; COMMAND=/bin/bash
sudo[8469]: pam_unix(sudo-i:session): session opened for user searx(uid=999) by (uid=0)
sudo[8469]: pam_unix(sudo-i:session): session closed for user searx
rc.local[8468]: /etc/rc.local: 6: python: not found
systemd[1]: rc-local.service: Control process exited, code=exited, status=127/n/a
systemd[1]: rc-local.service: Failed with result 'exit-code'.
systemd[1]: Failed to start /etc/rc.local Compatibility.
I understand that an Exit Code 127 means that the code is failing because it can't access the following directory:
cd /usr/local/searx/searx-src
But I honestly have no idea how to fix my code to make this possible. Please lmk if you have any suggestions
why not create a systemd service directly for this instead of going through ancient rc.local way? you can specify with which user to run it (without sudo or su schenanigans) and in which directory to start with
environmental variables are also possible