diff options
| author | aethrvmn <me@aethrvmn.gr> | 2025-11-30 21:59:43 +0000 |
|---|---|---|
| committer | aethrvmn <me@aethrvmn.gr> | 2025-11-30 21:59:43 +0000 |
| commit | 893ea11e1dc05fe1a2a34e66d4ebcfdffda34720 (patch) | |
| tree | ef454e299f49cbb58e1b9fbafd0b759b4379ac2a /modules/searx | |
| parent | added .lock to ignorelist (diff) | |
huge restructure of modules
Diffstat (limited to 'modules/searx')
| -rw-r--r-- | modules/searx/default.nix | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/modules/searx/default.nix b/modules/searx/default.nix new file mode 100644 index 0000000..e8b3873 --- /dev/null +++ b/modules/searx/default.nix @@ -0,0 +1,126 @@ +{ config, pkgs, lib, ... }: +{ + services = { + searx = { + enable = true; + package = pkgs.searxng; + + settings = { + server = { + port = 4000; + bind_address = "127.0.0.1"; + secret_key = "secret_key"; + }; + + general = { + debug = false; + instance_name = "SearXNG"; + donation_url = false; + contact_url = false; + privacypolicy_url = false; + enable_metrics = false; + autocomplete = "startpage"; + }; + + # Search engines + engines = lib.mapAttrsToList (name: value: { inherit name; } // value) { + # main boys + "brave" = { + disabled = false; + weight = 0.7; + }; + "duckduckgo" = { + disabled = false; + weight = 0.7; + }; + "ecosia" = { + disabled = false; + weight = 0.6; + }; + "mojeek" = { + disabled = true; + weight = 0.4; + }; + "qwant" = { + disabled = false; + weight = 0.4; + }; + "startpage" = { + disabled = false; + weight = 1; + }; + "wiby" = { + disabled = false; + weight = 0.4; + }; + + # + "openverse".disabled = false; + + # repos + "bitbucket".disabled = false; + "codeberg".disabled = false; + "gitea.com".disabled = false; + "github".disabled = false; + "gitlab".disabled = false; + "huggingface".disabled = false; + "huggingface datasets".disabled = false; + "huggingface spaces".disabled = false; + "ollama".disabled = false; + "sourcehut".disabled = false; + + # software wikis + "gentoo".disabled = false; + "nixos wiki".disabled = false; + "arch linux wiki".disabled = false; + "free software directory".disabled = false; + + # IT etc + "mankier".disabled = false; + "searchcode code".disabled = false; + + # translate + "mozhi".disabled = false; + "lingva".disabled = false; + "dictzone".disabled = false; + "libretranslate".disabled = false; + + # # scams/don't trusts + "bing".disabled = true; + "yahoo".disabled = true; + "google".disabled = true; + }; + + # Outgoing requests + outgoing = { + request_timeout = 15.0; + max_request_timeout = 25.0; + pool_connections = 100; + pool_maxsize = 15; + useragent_suffix = "me@aethrvmn.gr"; + retries = 5; + }; + + # Enabled plugins + enabled_plugins = [ + "Basic Calculator" + "Hash plugin" + "Tor check plugin" + "Open Access DOI rewrite" + "Hostnames plugin" + "Unit converter plugin" + "Tracker URL remover" + ]; + }; + }; + + nginx.virtualHosts = { + "search.internal" = { + locations."/" = { + proxyPass = "http://127.0.0.1:4000"; + proxyWebsockets = true; + }; + }; + }; + }; +} |
