108 lines
2.6 KiB
Nix
108 lines
2.6 KiB
Nix
{ config, pkgs, ... }:
|
|
{
|
|
services.searx = {
|
|
enable = true;
|
|
package = pkgs.searxng;
|
|
# REF: https://github.com/searxng/searxng/blob/master/searx/settings.yml
|
|
settings = {
|
|
general = {
|
|
debug = false;
|
|
enable_metrics = false;
|
|
instance_name = "SearX";
|
|
};
|
|
server = {
|
|
# bind_address = cfg.address;
|
|
image_proxy = false;
|
|
limiter = false;
|
|
method = "GET";
|
|
port = 34972;
|
|
public_instance = false;
|
|
secret_key = "searxxx";
|
|
};
|
|
search = {
|
|
autocomplete = "";
|
|
autocomplete_min = 4;
|
|
default_lang = "auto";
|
|
safe_search = 0;
|
|
};
|
|
ui = {
|
|
center_alignment = false;
|
|
default_locale = "";
|
|
default_theme = "simple";
|
|
hotkeys = "vim";
|
|
infinite_scroll = false;
|
|
simple_style = "dark";
|
|
};
|
|
outgoing = {
|
|
enable_http2 = true;
|
|
max_request_timeout = 10.0;
|
|
pool_connections = 100;
|
|
pool_maxsize = 20;
|
|
request_timeout = 3.0;
|
|
# proxies = {
|
|
# "all://" = with config.container.module; [
|
|
# # "socks5:${frkn.address}:${frkn.port}"
|
|
# "socks5:${frkn.address}:1081"
|
|
# # "socks5:${frkn.address}:9150"
|
|
# ];
|
|
# };
|
|
# using_tor_proxy = true;
|
|
# extra_proxy_timeout = 10;
|
|
};
|
|
# plugins = [ ];
|
|
enabled_plugins = [
|
|
"Basic Calculator"
|
|
"Hostnames plugin"
|
|
"Tracker URL remover"
|
|
];
|
|
hostnames = {
|
|
replace = {
|
|
"(.*\.)?youtu\.be$" = "yt.voronind.com";
|
|
"(.*\.)?youtube\.com$" = "yt.voronind.com";
|
|
};
|
|
remove = [
|
|
"(.*\.)?dzen\.ru$"
|
|
"(.*\.)?facebook.com$"
|
|
"(.*\.)?gosuslugi\.ru$"
|
|
"(.*\.)?quora\.com$"
|
|
"(.*\.)?rutube\.ru$"
|
|
"(.*\.)?vk\.com$"
|
|
];
|
|
low_priority = [
|
|
"(.*\.)?google(\..*)?$"
|
|
"(.*\.)?microsoft\.com$"
|
|
];
|
|
high_priority = [
|
|
"(.*\.)?4pda.to$"
|
|
"(.*\.)?github.com$"
|
|
"(.*\.)?wikipedia.org$"
|
|
];
|
|
};
|
|
categories_as_tabs = {
|
|
files = { };
|
|
general = { };
|
|
images = { };
|
|
it = { };
|
|
map = { };
|
|
news = { };
|
|
videos = { };
|
|
};
|
|
engines =
|
|
let
|
|
mkEnable = name: {
|
|
inherit name;
|
|
disabled = false;
|
|
};
|
|
mkDisable = name: {
|
|
inherit name;
|
|
disabled = true;
|
|
};
|
|
in
|
|
[
|
|
(mkEnable "bing")
|
|
(mkDisable "qwant")
|
|
];
|
|
};
|
|
};
|
|
}
|