update searxng
This commit is contained in:
parent
1a226c8d6f
commit
f8153d4929
3 changed files with 127 additions and 128 deletions
|
@ -1,121 +1,121 @@
|
|||
{ lib, ... }:
|
||||
{
|
||||
lib,
|
||||
inputs,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
services = let
|
||||
socket = "/var/run/searx/socket";
|
||||
domain = "search.federated.nexus";
|
||||
in {
|
||||
searx = {
|
||||
enable = true;
|
||||
package = inputs.nixpkgs-master.legacyPackages.${pkgs.system}.searxng;
|
||||
settings = let
|
||||
enginesByCategory = {
|
||||
general = {
|
||||
google = {};
|
||||
duckduckgo = {};
|
||||
};
|
||||
services =
|
||||
let
|
||||
socket = "/var/run/searx/socket";
|
||||
domain = "search.federated.nexus";
|
||||
in
|
||||
{
|
||||
searx = {
|
||||
enable = true;
|
||||
settings =
|
||||
let
|
||||
enginesByCategory = {
|
||||
general = {
|
||||
google = { };
|
||||
duckduckgo = { };
|
||||
};
|
||||
|
||||
"social media" = {
|
||||
tootfinder = {};
|
||||
"mastodon users" = {};
|
||||
"lemmy communities" = {};
|
||||
"lemmy comments" = {};
|
||||
"lemmy users" = {};
|
||||
"lemmy posts" = {};
|
||||
};
|
||||
"social media" = {
|
||||
tootfinder = { };
|
||||
"mastodon users" = { };
|
||||
"lemmy communities" = { };
|
||||
"lemmy comments" = { };
|
||||
"lemmy users" = { };
|
||||
"lemmy posts" = { };
|
||||
};
|
||||
|
||||
images = {
|
||||
"duckduckgo images".disabled = false;
|
||||
"google images" = {};
|
||||
};
|
||||
images = {
|
||||
"duckduckgo images".disabled = false;
|
||||
"google images" = { };
|
||||
};
|
||||
|
||||
map.openstreetmap = {};
|
||||
map.openstreetmap = { };
|
||||
|
||||
videos = {
|
||||
peertube.disabled = false;
|
||||
youtube = {};
|
||||
};
|
||||
videos = {
|
||||
peertube.disabled = false;
|
||||
youtube = { };
|
||||
};
|
||||
|
||||
it = {
|
||||
github = {};
|
||||
askubuntu = {};
|
||||
superuser = {};
|
||||
stackoverflow = {};
|
||||
codeberg.disabled = false;
|
||||
"gitea.com".disabled = false;
|
||||
"git.federated.nexus" = {
|
||||
engine = "gitea";
|
||||
base_url = "https://git.federated.nexus";
|
||||
it = {
|
||||
github = { };
|
||||
askubuntu = { };
|
||||
superuser = { };
|
||||
stackoverflow = { };
|
||||
codeberg.disabled = false;
|
||||
"gitea.com".disabled = false;
|
||||
"git.federated.nexus" = {
|
||||
engine = "gitea";
|
||||
base_url = "https://git.federated.nexus";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
engines =
|
||||
builtins.foldl'
|
||||
(
|
||||
acc: category:
|
||||
engines = builtins.foldl' (
|
||||
acc: category:
|
||||
acc
|
||||
// lib.mapAttrs' (name: val: {
|
||||
name = name;
|
||||
value = val // {categories = [category];};
|
||||
})
|
||||
enginesByCategory.${category}
|
||||
)
|
||||
{}
|
||||
(lib.attrNames enginesByCategory);
|
||||
in {
|
||||
general = {
|
||||
instance_name = "Federated Nexus Search";
|
||||
contact_url = "mailto:henry@henryhiles.com";
|
||||
};
|
||||
value = val // {
|
||||
categories = [ category ];
|
||||
};
|
||||
}) enginesByCategory.${category}
|
||||
) { } (lib.attrNames enginesByCategory);
|
||||
in
|
||||
{
|
||||
general = {
|
||||
instance_name = "Federated Nexus Search";
|
||||
contact_url = "mailto:henry@henryhiles.com";
|
||||
};
|
||||
|
||||
search = {
|
||||
autocomplete = "duckduckgo";
|
||||
favicon_resolver = "google";
|
||||
};
|
||||
search = {
|
||||
autocomplete = "duckduckgo";
|
||||
favicon_resolver = "google";
|
||||
};
|
||||
|
||||
ui = {
|
||||
query_in_title = true;
|
||||
infinite_scroll = true;
|
||||
center_alignment = true;
|
||||
};
|
||||
ui = {
|
||||
query_in_title = true;
|
||||
infinite_scroll = true;
|
||||
center_alignment = true;
|
||||
};
|
||||
|
||||
server = {
|
||||
method = "GET";
|
||||
base_url = "https://${domain}";
|
||||
bind_address = "unix://${socket}";
|
||||
secret_key = "I don't use anything that requires a secret key.";
|
||||
};
|
||||
server = {
|
||||
method = "GET";
|
||||
base_url = "https://${domain}";
|
||||
bind_address = "unix://${socket}";
|
||||
secret_key = "I don't use anything that requires a secret key.";
|
||||
};
|
||||
|
||||
plugins = {
|
||||
"searx.plugins.oa_doi_rewrite.SXNGPlugin".active = true;
|
||||
"searx.plugins.tracker_url_remover.SXNGPlugin".active = true;
|
||||
};
|
||||
plugins = {
|
||||
"searx.plugins.oa_doi_rewrite.SXNGPlugin".active = true;
|
||||
"searx.plugins.tracker_url_remover.SXNGPlugin".active = true;
|
||||
};
|
||||
|
||||
categories_as_tabs = builtins.listToAttrs (
|
||||
map (category: {
|
||||
name = category;
|
||||
value = {};
|
||||
}) (lib.attrNames enginesByCategory)
|
||||
);
|
||||
use_default_settings.engines.keep_only = lib.attrNames engines;
|
||||
engines = lib.mapAttrsToList (name: value: {inherit name;} // value) engines;
|
||||
categories_as_tabs = builtins.listToAttrs (
|
||||
map (category: {
|
||||
name = category;
|
||||
value = { };
|
||||
}) (lib.attrNames enginesByCategory)
|
||||
);
|
||||
use_default_settings.engines.keep_only = lib.attrNames engines;
|
||||
engines = lib.mapAttrsToList (name: value: { inherit name; } // value) engines;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
caddy.authedHosts."${domain}" = "reverse_proxy unix/${socket}";
|
||||
};
|
||||
systemd.services = let
|
||||
commonConfig = builtins.mapAttrs (_: value: lib.mkForce value) {
|
||||
Group = "caddy";
|
||||
RuntimeDirectoryMode = "0770";
|
||||
UMask = "007";
|
||||
caddy.authedHosts."${domain}" = "reverse_proxy unix/${socket}";
|
||||
};
|
||||
systemd.services =
|
||||
let
|
||||
commonConfig = builtins.mapAttrs (_: value: lib.mkForce value) {
|
||||
Group = "caddy";
|
||||
RuntimeDirectoryMode = "0770";
|
||||
UMask = "007";
|
||||
};
|
||||
in
|
||||
{
|
||||
searx.serviceConfig = commonConfig // {
|
||||
Restart = "always";
|
||||
};
|
||||
searx-init.serviceConfig = commonConfig;
|
||||
};
|
||||
in {
|
||||
searx.serviceConfig = commonConfig // {Restart = "always";};
|
||||
searx-init.serviceConfig = commonConfig;
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue