system/services: add searx

This commit is contained in:
Anthony Rodriguez 2024-10-23 17:35:05 +02:00
parent d472424a4e
commit 6c75a3644f
Signed by: nezia
GPG key ID: EE3BE97C040A86CE
2 changed files with 53 additions and 0 deletions

View file

@ -4,7 +4,9 @@ in {
imports = [ imports = [
./hardware-configuration.nix ./hardware-configuration.nix
./networking.nix # generated at runtime by nixos-infect ./networking.nix # generated at runtime by nixos-infect
"${mod}/services/forgejo.nix" "${mod}/services/forgejo.nix"
"${mod}/services/searx.nix"
]; ];
boot.tmp.cleanOnBoot = true; boot.tmp.cleanOnBoot = true;

51
system/services/searx.nix Normal file
View file

@ -0,0 +1,51 @@
{pkgs, ...}: {
services = {
searx = {
enable = true;
package = pkgs.searxng;
settings = {
server = {
secret_key = "TODO_USE_SOPS_INSTEAD";
port = 8888; # Internal port
bind_address = "localhost"; # Only listen locally
base_url = "https://search.nezia.dev/";
image_proxy = true;
default_http_headers = {
X-Content-Type-Options = "nosniff";
X-XSS-Protection = "1; mode=block";
X-Download-Options = "noopen";
X-Robots-Tag = "noindex, nofollow";
Referrer-Policy = "no-referrer";
};
};
engines = [
{
name = "qwant";
disabled = true;
}
];
};
};
caddy = {
enable = true;
virtualHosts."search.nezia.dev" = {
extraConfig = ''
encode gzip
reverse_proxy localhost:8888 {
header_up Host {host}
header_up X-Real-IP {remote_addr}
header_up X-Forwarded-For {remote_addr}
header_up X-Forwarded-Proto {scheme}
}
'';
};
};
};
# Open required ports
networking.firewall = {
allowedTCPPorts = [80 443]; # For Caddy
};
}