aboutsummaryrefslogtreecommitdiff
path: root/modules/common/searx/default.nix
diff options
context:
space:
mode:
authoraethrvmn <me@aethrvmn.gr>2025-08-31 14:21:34 +0000
committeraethrvmn <me@aethrvmn.gr>2025-08-31 14:21:34 +0000
commitbfd970a07c231b5781871c16cb4612eb4c6b8fd4 (patch)
tree50a4ac5138d1f438e4d5bad3a3dd880a0784cd3e /modules/common/searx/default.nix
parentadded flake (diff)
imported system/home-manager config
Diffstat (limited to 'modules/common/searx/default.nix')
-rw-r--r--modules/common/searx/default.nix115
1 files changed, 115 insertions, 0 deletions
diff --git a/modules/common/searx/default.nix b/modules/common/searx/default.nix
new file mode 100644
index 0000000..659c700
--- /dev/null
+++ b/modules/common/searx/default.nix
@@ -0,0 +1,115 @@
+{ config, pkgs, lib, ... }:
+{
+ services = {
+ searx = {
+ enable = true;
+ package = pkgs.searxng;
+
+ settings = {
+ server = {
+ port = 3040;
+ bind_address = "127.0.0.1";
+ secret_key = "secret_key";
+ };
+
+ general = {
+ debug = false;
+ instance_name = "SearXNG Instance";
+ 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.8;
+ };
+ "duckduckgo" = {
+ disabled = false;
+ weight = 0.8;
+ };
+ "ecosia" = {
+ disabled = false;
+ weight = 0.7;
+ };
+ "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;
+
+ # wikimedia
+ "wikidata".disabled = false;
+ "wikibooks".disabled = false;
+ "wikiquote".disabled = false;
+ "wikisource".disabled = false;
+ "wikivoyage".disabled = false;
+ "wikispecies".disabled = false;
+ "wikiversity".disabled = false;
+ "wikicommons".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;
+ };
+ };
+ };
+
+ nginx.virtualHosts = {
+ "search.internal" = {
+ locations."/" = {
+ proxyPass = "http://127.0.0.1:3040";
+ proxyWebsockets = true;
+ };
+ };
+ };
+ };
+}
Directive (EU) 2019/790, Article 4(3); all rights regarding Text and Data Mining (TDM) are reserved.