vanadium: use parameterized google search engine

This commit is contained in:
Primrose 2025-05-30 13:59:10 +02:00
parent 20e8bcfe6e
commit e66b0d54d0
Signed by: primrose
GPG key ID: 4E887A4CA9714ADA

View file

@ -1,20 +1,44 @@
{ {
pkgs, pkgs,
config, config,
lib,
... ...
}: let }: let
inherit (pkgs) nur; inherit (pkgs) nur;
# reference: https://developers.google.com/custom-search/docs/xml_results?hl=zh-tw#advanced-search-query-parameters
mkLrFlag = languageRestrictions:
"&lr=" + lib.escapeURL (builtins.concatStringsSep "|" languageRestrictions);
mkGlFlag = preferredCountry:
"&gl=" + preferredCountry;
mkHlFlag = hostLanguage:
"&hl=" + hostLanguage;
in { in {
programs.firefox = { programs.firefox = {
enable = true; enable = true;
policies.SearchEngines = { policies.SearchEngines = {
Default = "searxng"; Default = "Google Customized";
Add = [ Add = [
/*
searxng doesn't
- have good multilingual search support
- use google backend on my server for some reason
*/
{ {
Name = "searxng"; Name = "searxng";
URLTemplate = "https://sxng.confusedcompiler.org/search?q={searchTerms}"; URLTemplate = "https://sxng.confusedcompiler.org/search?q={searchTerms}";
} }
{
Name = "Google Customized";
URLTemplate =
"https://google.com/search?q={searchTerms}"
+ mkLrFlag ["lang_fr" "lang_en" "lang_zh-TW"]
+ mkGlFlag "fr"
+ mkHlFlag "fr";
}
]; ];
}; };