2023-08-31 01:55:45 +03:00
|
|
|
{ config, depot, lib, ... }:
|
2022-05-25 12:11:10 +03:00
|
|
|
let
|
2022-06-18 03:44:51 +03:00
|
|
|
inherit (config) links;
|
2022-05-25 12:11:10 +03:00
|
|
|
in
|
|
|
|
{
|
2022-06-18 03:44:51 +03:00
|
|
|
links.searxng.protocol = "http";
|
2022-05-25 12:11:10 +03:00
|
|
|
|
2023-06-05 01:54:23 +03:00
|
|
|
age.secrets.searxng-secrets.file = ../../../secrets/searxng-secrets.age;
|
2022-05-25 12:11:10 +03:00
|
|
|
services.searx = {
|
|
|
|
enable = true;
|
|
|
|
runInUwsgi = true;
|
2023-02-24 16:16:15 +02:00
|
|
|
package = depot.packages.searxng;
|
2022-05-25 12:11:10 +03:00
|
|
|
environmentFile = config.age.secrets.searxng-secrets.path;
|
|
|
|
settings = {
|
|
|
|
server = {
|
|
|
|
secret_key = "@SEARXNG_SECRET@";
|
|
|
|
};
|
2022-06-22 19:39:01 +03:00
|
|
|
search.formats = [
|
|
|
|
"html"
|
|
|
|
"json"
|
|
|
|
];
|
2022-05-26 20:14:25 +03:00
|
|
|
engines = [
|
|
|
|
{ name = "bing"; disabled = true; }
|
|
|
|
{ name = "brave"; disabled = true; }
|
|
|
|
];
|
2022-05-26 21:16:24 +03:00
|
|
|
ui.theme_args.simple_style = "dark";
|
2024-04-30 04:09:17 +03:00
|
|
|
outgoing = {
|
|
|
|
using_tor_proxy = true;
|
|
|
|
proxies = rec {
|
|
|
|
http = [ config.links.torSocks.url ];
|
|
|
|
https = http;
|
|
|
|
};
|
2022-05-26 19:12:01 +03:00
|
|
|
};
|
2022-05-25 12:11:10 +03:00
|
|
|
};
|
|
|
|
uwsgiConfig = {
|
2022-06-18 03:44:51 +03:00
|
|
|
http = links.searxng.tuple;
|
2022-05-25 12:11:10 +03:00
|
|
|
cache2 = "name=searxcache,items=2000,blocks=2000,blocksize=65536,bitmap=1";
|
|
|
|
buffer-size = 65536;
|
2022-05-25 21:45:08 +03:00
|
|
|
disable-logging = true;
|
2022-05-25 12:11:10 +03:00
|
|
|
};
|
|
|
|
};
|
2023-08-31 01:55:45 +03:00
|
|
|
services.nginx.virtualHosts."search.${depot.lib.meta.domain}" = lib.recursiveUpdate (depot.lib.nginx.vhosts.proxy links.searxng.url) {
|
2022-05-25 21:45:08 +03:00
|
|
|
extraConfig = "access_log off;";
|
|
|
|
};
|
2024-04-30 04:09:17 +03:00
|
|
|
systemd.services.uwsgi.after = [ "tor.service" ];
|
2022-05-25 12:11:10 +03:00
|
|
|
}
|