From c8fbef35cc7fde81993331f735c1787dd2b8712f Mon Sep 17 00:00:00 2001 From: "nekomimi.pet" Date: Sun, 18 Oct 2026 09:28:01 -0400 Subject: [PATCH] valefar: searx tracks upstream master and queries every useful engine web-extract's answers failed because only Bing still answered and returned junk for long questions (brave, google, qwant rate-limited or denied; startpage, mojeek and marginalia inactive upstream). Move the searx config to its own module, build SearXNG from upstream master (1c10abe, 2026-10-17; nixpkgs had 2026-09-22), and enable the web, it and science engines with inactive cleared so they actually run. --- hosts/valefar/default.nix | 48 +------------------ hosts/valefar/searx.nix | 98 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+), 47 deletions(-) create mode 100644 hosts/valefar/searx.nix diff --git a/hosts/valefar/default.nix b/hosts/valefar/default.nix index 979c11a..86f78be 100644 --- a/hosts/valefar/default.nix +++ b/hosts/valefar/default.nix @@ -18,6 +18,7 @@ ./secrets.nix ./boot-resilience.nix ./nat-guard.nix + ./searx.nix ./pia-qbittorrent.nix ./pia-exit.nix ./wg-mesh.nix @@ -92,53 +93,6 @@ services.printing.enable = true; - services.searx = { - enable = true; - environmentFile = config.age.secrets."searx.env".path; - redisCreateLocally = false; - settings = { - use_default_settings = true; - server = { - secret_key = "$SEARX_SECRET_KEY"; - port = 8888; - bind_address = "0.0.0.0"; - limiter = false; - image_proxy = true; - base_url = "http://valefar:8888/"; - }; - engines = - map - (name: { - inherit name; - disabled = false; - }) - [ - "bing" - "duckduckgo" - "brave" - "startpage" - "qwant" - "mojeek" - "marginalia" - "wikipedia" - ] - ++ [ - { - name = "google"; - disabled = false; - use_mobile_ui = true; - } - ]; - search = { - safe_search = 0; - formats = [ - "html" - "json" - ]; - }; - }; - }; - networking = { useNetworkd = true; useDHCP = false; diff --git a/hosts/valefar/searx.nix b/hosts/valefar/searx.nix new file mode 100644 index 0000000..f2a6fd2 --- /dev/null +++ b/hosts/valefar/searx.nix @@ -0,0 +1,98 @@ +{ config, pkgs, ... }: +# SearXNG for web-extract (vassago) and anyone on the tailnet: http://valefar:8888. +# Ana 2026-10-18: track upstream (searxng has no releases) and query every engine +# that can help; web-extract asks the general, it and science categories. +let + # Upstream master; bump rev and hash together (nix-prefetch-url --unpack ). + rev = "1c10abe2d3e4ab7ddcc4e9da1a7d07dc7ca7f8f4"; + enable = name: { + inherit name; + disabled = false; + inactive = false; + }; +in +{ + services.searx = { + enable = true; + package = pkgs.searxng.overrideAttrs (_: { + version = "0-unstable-2026-10-17"; + src = pkgs.fetchzip { + url = "https://github.com/searxng/searxng/archive/${rev}.tar.gz"; + sha256 = "06shclmi1f920243l8kczzgyi08lws7f87i791d1iwxhfnaar0lq"; + }; + }); + environmentFile = config.age.secrets."searx.env".path; + redisCreateLocally = false; + settings = { + use_default_settings = true; + server = { + secret_key = "$SEARX_SECRET_KEY"; + port = 8888; + bind_address = "0.0.0.0"; + limiter = false; + image_proxy = true; + base_url = "http://valefar:8888/"; + }; + engines = + map enable [ + # web + "bing" + "brave" + "duckduckgo" + "dogpile" + "marginalia" + "mojeek" + "mwmbl" + "qwant" + "startpage" + "yahoo" + "yandex" + "yep" + "wikipedia" + "wikidata" + "wolframalpha" + # it + "arch linux wiki" + "askubuntu" + "codeberg" + "crates.io" + "docker hub" + "free software directory" + "gentoo" + "github" + "gitlab" + "hackernews" + "huggingface" + "lib.rs" + "lobste.rs" + "mdn" + "nixos wiki" + "npm" + "pkg.go.dev" + "pypi" + "sourcehut" + "stackoverflow" + "superuser" + # science + "arxiv" + "google scholar" + "openalex" + "semantic scholar" + ] + ++ [ + { + name = "google"; + disabled = false; + use_mobile_ui = true; + } + ]; + search = { + safe_search = 0; + formats = [ + "html" + "json" + ]; + }; + }; + }; +} -- 2.51.2