nix-conf/modules/servers/odin/searx.nix

34 lines
769 B
Nix

{config, ...}: {
services.searx = {
enable = true;
settings = {
general.instance_name = "Crony's SearXNG";
server.port = "8090";
server.bind_address = "127.0.0.1";
server.secret_key = "@SEARX_SECRET_KEY@";
};
uwsgiConfig = {
http = ":8090";
};
redisCreateLocally = true;
runInUwsgi = true;
environmentFile = "${config.age.secrets.searx.path}";
};
services.traefik.dynamicConfigOptions.http = {
services.searx.loadBalancer.servers = [
{
url = "http://localhost:8090";
}
];
routers.searx = {
rule = "Host(`searx.cronyakatsuki.xyz`)";
tls = {
certResolver = "porkbun";
};
service = "searx";
entrypoints = "websecure";
};
};
}