From 0921b7cdf5d71f75da2bcd356a7028cf5420c4f3 Mon Sep 17 00:00:00 2001 From: "Trez.One" Date: Mon, 22 Sep 2025 07:58:38 -0400 Subject: [PATCH 1/2] Migrating SearxNG config to new version. --- app-configs/rinoa/searxng/settings.yml.j2 | 1579 ++++++++++++++------- app-configs/rinoa/searxng/uwsgi.ini.j2 | 24 +- 2 files changed, 1101 insertions(+), 502 deletions(-) diff --git a/app-configs/rinoa/searxng/settings.yml.j2 b/app-configs/rinoa/searxng/settings.yml.j2 index 2cec16d..61b42b8 100644 --- a/app-configs/rinoa/searxng/settings.yml.j2 +++ b/app-configs/rinoa/searxng/settings.yml.j2 @@ -1,11 +1,10 @@ {% set vault_addr = 'https://vault.trez.wtf' %} {% set secrets_path = 'rinoa-docker/env' %} - general: # Debug mode, only for development. Is overwritten by ${SEARXNG_DEBUG} debug: false # displayed name - instance_name: "Rinoa - SearXNG" + instance_name: "SearXNG" # For example: https://example.com/privacy privacypolicy_url: false # use true to use your own donation page written in searx/info/en/donate.md @@ -15,6 +14,10 @@ general: contact_url: false # record stats enable_metrics: true + # expose stats in open metrics format at /metrics + # leave empty to disable (no password set) + # open_metrics: + open_metrics: '' brand: new_issue_url: https://github.com/searxng/searxng/issues/new @@ -22,19 +25,29 @@ brand: public_instances: https://searx.space wiki_url: https://github.com/searxng/searxng/wiki issue_url: https://github.com/searxng/searxng/issues + # custom: + # maintainer: "Jon Doe" + # # Custom entries in the footer: [title]: [link] + # links: + # Uptime: https://uptime.searxng.org/history/darmarit-org + # About: "https://searxng.org" search: # Filter results. 0: None, 1: Moderate, 2: Strict safe_search: 0 - # Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "yandex", "mwmbl", - # "seznam", "startpage", "swisscows", "qwant", "wikipedia" - leave blank to turn it off - # by default. - autocomplete: "duckduckgo" + # Existing autocomplete backends: "360search", "baidu", "brave", "dbpedia", "duckduckgo", "google", "yandex", + # "mwmbl", "naver", "seznam", "sogou", "startpage", "stract", "swisscows", "quark", "qwant", "wikipedia" - + # leave blank to turn it off by default. + autocomplete: "" # minimun characters to type before autocompleter starts autocomplete_min: 4 + # backend for the favicon near URL in search results. + # Available resolvers: "allesedv", "duckduckgo", "google", "yandex" - leave blank to turn it off by default. + favicon_resolver: "" # Default search language - leave blank to detect from browser information or # use codes from 'languages.py' default_lang: "auto" + # max_page: 0 # if engine supports paging, 0 means unlimited numbers of pages # Available languages # languages: # - all @@ -68,44 +81,47 @@ search: - html server: - # If you change port, bind_address or base_url don't forget to rebuild - # instance's environment (make buildenv). Is overwritten by ${SEARXNG_PORT} - # and ${SEARXNG_BIND_ADDRESS} + # Is overwritten by ${SEARXNG_PORT} and ${SEARXNG_BIND_ADDRESS} port: 8888 bind_address: "127.0.0.1" # public URL of the instance, to ensure correct inbound links. Is overwritten - # by ${SEARXNG_URL}. - base_url: / # "http://example.com/location" - limiter: false # rate limit the number of request on the instance, block some bots - public_instance: false # enable features designed only for public instances + # by ${SEARXNG_BASE_URL}. + base_url: false # "http://example.com/location" + # rate limit the number of request on the instance, block some bots. + # Is overwritten by ${SEARXNG_LIMITER} + limiter: false + # enable features designed only for public instances. + # Is overwritten by ${SEARXNG_PUBLIC_INSTANCE} + public_instance: false # If your instance owns a /etc/searxng/settings.yml file, then set the following # values there. secret_key: {{ lookup('community.hashi_vault.vault_kv2_get', 'env', engine_mount_point='rinoa-docker', url=vault_addr, token=vault_token)['secret']['SEARXNG_SECRET_KEY'] }} # Is overwritten by ${SEARXNG_SECRET} - # Proxying image results through searx + # Proxy image results through SearXNG. Is overwritten by ${SEARXNG_IMAGE_PROXY} image_proxy: true # 1.0 and 1.1 are supported http_protocol_version: "1.0" - # POST queries are more secure as they don't show up in history but may cause - # problems when using Firefox containers + # POST queries are "more secure!" but are also the source of hard-to-locate + # annoyances, which is why GET may be better for end users and their browsers. + # see https://github.com/searxng/searxng/pull/3619 + # Is overwritten by ${SEARXNG_METHOD} method: "POST" default_http_headers: X-Content-Type-Options: nosniff - X-XSS-Protection: 1; mode=block X-Download-Options: noopen X-Robots-Tag: noindex, nofollow Referrer-Policy: no-referrer -redis: - # URL to connect redis database. Is overwritten by ${SEARXNG_REDIS_URL}. - # https://docs.searxng.org/admin/settings/settings_redis.html#settings-redis +valkey: + # URL to connect valkey database. Is overwritten by ${SEARXNG_VALKEY_URL}. + # https://docs.searxng.org/admin/settings/settings_valkey.html#settings-valkey + # url: valkey://localhost:6379/0 url: redis://searxng-valkey:6379/0 ui: # Custom static path - leave it blank if you didn't change static_path: "" - static_use_hash: false # Custom templates path - leave it blank if you didn't change templates_path: "" # query_in_title: When true, the result page's titles contains the query @@ -132,29 +148,29 @@ ui: search_on_category_select: true # Hotkeys: default or vim hotkeys: default + # URL formatting: pretty, full or host + url_formatting: pretty -# Lock arbitrary settings on the preferences page. To find the ID of the user -# setting you want to lock, check the ID of the form on the page "preferences". +# Lock arbitrary settings on the preferences page. # # preferences: # lock: +# - categories # - language # - autocomplete +# - favicon +# - safesearch # - method +# - doi_resolver +# - locale +# - theme +# - results_on_new_tab +# - infinite_scroll +# - search_on_category_select +# - method +# - image_proxy # - query_in_title -# searx supports result proxification using an external service: -# https://github.com/asciimoo/morty uncomment below section if you have running -# morty proxy the key is base64 encoded (keep the !!binary notation) -# Note: since commit af77ec3, morty accepts a base64 encoded key. -# -# result_proxy: -# url: http://127.0.0.1:3000/ -# # the key is a base64 encoded string, the YAML !!binary prefix is optional -# key: !!binary "your_morty_proxy_key" -# # [true|false] enable the "proxy" button next to each result -# proxify_results: true - # communication with search engines # outgoing: @@ -162,7 +178,7 @@ outgoing: request_timeout: 3.0 # the maximum timeout in seconds # max_request_timeout: 10.0 - # suffix of searx_useragent, could contain information like an email address + # suffix of searxng_useragent, could contain information like an email address # to the administrator useragent_suffix: "" # The maximum number of concurrent connections that may be established. @@ -191,7 +207,7 @@ outgoing: # # Extra seconds to add in order to account for the time taken by the proxy # - # extra_proxy_timeout: 10.0 + # extra_proxy_timeout: 10 # # uncomment below section only if you have more than one network interface # which can be the source of outgoing search requests @@ -201,50 +217,73 @@ outgoing: # - 1.1.1.2 # - fe80::/126 -# External plugin configuration, for more details see -# https://docs.searxng.org/dev/plugins.html +# Plugin configuration, for more details see +# https://docs.searxng.org/admin/settings/settings_plugins.html # -# plugins: -# - plugin1 -# - plugin2 -# - ... +plugins: -# Comment or un-comment plugin to activate / deactivate by default. -# -enabled_plugins: -# # these plugins are enabled if nothing is configured .. - - 'Hash plugin' - - 'Self Information' - - 'Tracker URL remover' - - 'Basic Calculator' - - 'Unit converter plugin' -# - 'Ahmia blacklist' # activation depends on outgoing.using_tor_proxy -# # these plugins are disabled if nothing is configured .. -# - 'Hostname replace' # see hostname_replace configuration below -# - 'Open Access DOI rewrite' -# - 'Tor check plugin' -# # Read the docs before activate: auto-detection of the language could be -# # detrimental to users expectations / users can activate the plugin in the -# # preferences if they want. -# - 'Autodetect search language' + searx.plugins.calculator.SXNGPlugin: + active: true -# Configuration of the "Hostname replace" plugin: + searx.plugins.hash_plugin.SXNGPlugin: + active: true + + searx.plugins.self_info.SXNGPlugin: + active: true + + searx.plugins.unit_converter.SXNGPlugin: + active: true + + searx.plugins.ahmia_filter.SXNGPlugin: + active: true + + searx.plugins.hostnames.SXNGPlugin: + active: true + + searx.plugins.time_zone.SXNGPlugin: + active: true + + searx.plugins.oa_doi_rewrite.SXNGPlugin: + active: false + + searx.plugins.tor_check.SXNGPlugin: + active: false + + searx.plugins.tracker_url_remover.SXNGPlugin: + active: true + + +# Configuration of the "Hostnames plugin": +# +# hostnames: +# replace: +# '(.*\.)?youtube\.com$': 'yt.example.com' +# '(.*\.)?youtu\.be$': 'yt.example.com' +# '(.*\.)?reddit\.com$': 'teddit.example.com' +# '(.*\.)?redd\.it$': 'teddit.example.com' +# '(www\.)?twitter\.com$': 'nitter.example.com' +# remove: +# - '(.*\.)?facebook.com$' +# low_priority: +# - '(.*\.)?google(\..*)?$' +# high_priority: +# - '(.*\.)?wikipedia.org$' +# +# Alternatively you can use external files for configuring the "Hostnames plugin": +# +# hostnames: +# replace: 'rewrite-hosts.yml' +# +# Content of 'rewrite-hosts.yml' (place the file in the same directory as 'settings.yml'): +# '(.*\.)?youtube\.com$': 'yt.example.com' +# '(.*\.)?youtu\.be$': 'yt.example.com' # -# hostname_replace: -# '(.*\.)?youtube\.com$': 'invidious.example.com' -# '(.*\.)?youtu\.be$': 'invidious.example.com' -# '(.*\.)?youtube-noocookie\.com$': 'yotter.example.com' -# '(.*\.)?reddit\.com$': 'teddit.example.com' -# '(.*\.)?redd\.it$': 'teddit.example.com' -# '(www\.)?twitter\.com$': 'nitter.example.com' -# # to remove matching host names from result list, set value to false -# 'spam\.example\.com': false checker: # disable checker when in debug mode off_when_debug: true - # use "scheduling: false" to disable scheduling + # use "scheduling: {}" to disable scheduling # scheduling: interval or int # to activate the scheduler: @@ -301,23 +340,105 @@ categories_as_tabs: social media: engines: + - name: 360search + engine: 360search + shortcut: 360so + disabled: true + + - name: 360search videos + engine: 360search_videos + shortcut: 360sov + disabled: true + - name: 9gag engine: 9gag shortcut: 9g disabled: true + - name: acfun + engine: acfun + shortcut: acf + disabled: true + + - name: adobe stock + engine: adobe_stock + shortcut: asi + categories: ["images"] + # https://docs.searxng.org/dev/engines/online/adobe_stock.html + adobe_order: relevance + adobe_content_types: ["photo", "illustration", "zip_vector", "template", "3d", "image"] + timeout: 6 + disabled: true + + - name: adobe stock video + engine: adobe_stock + shortcut: asv + network: adobe stock + categories: ["videos"] + adobe_order: relevance + adobe_content_types: ["video"] + timeout: 6 + disabled: true + + - name: adobe stock audio + engine: adobe_stock + shortcut: asa + network: adobe stock + categories: ["music"] + adobe_order: relevance + adobe_content_types: ["audio"] + timeout: 6 + disabled: true + + - name: alexandria + engine: json_engine + shortcut: alx + categories: general + paging: true + search_url: https://api.alexandria.org/?a=1&q={query}&p={pageno} + results_query: results + title_query: title + url_query: url + content_query: snippet + timeout: 1.5 + disabled: true + about: + website: https://alexandria.org/ + official_api_documentation: https://github.com/alexandria-org/alexandria-api/raw/master/README.md + use_official_api: true + require_api_key: false + results: JSON + + - name: astrophysics data system + engine: astrophysics_data_system + shortcut: ads + # read https://docs.searxng.org/dev/engines/online/astrophysics_data_system.html + api_key: "" + inactive: true + + - name: alpine linux packages + engine: alpinelinux + disabled: true + shortcut: alp + - name: annas archive engine: annas_archive disabled: true shortcut: aa + timeout: 5 + + - name: ansa + engine: ansa + shortcut: ans + disabled: true # - name: annas articles # engine: annas_archive # shortcut: aaa # # https://docs.searxng.org/dev/engines/online/annas_archive.html - # aa_content: 'journal_article' # book_any .. magazine, standards_document + # aa_content: 'magazine' # book_fiction, book_unknown, book_nonfiction, book_comic # aa_ext: 'pdf' # pdf, epub, .. - # aa_sort: 'newest' # newest, oldest, largest, smallest + # aa_sort: oldest' # newest, oldest, largest, smallest - name: apk mirror engine: apkmirror @@ -355,6 +476,14 @@ engines: engine: archlinux shortcut: al + - name: nixos wiki + engine: mediawiki + shortcut: nixw + base_url: https://wiki.nixos.org/ + search_type: text + disabled: true + categories: [it, software wikis] + - name: artic engine: artic shortcut: arc @@ -363,7 +492,11 @@ engines: - name: arxiv engine: arxiv shortcut: arx - timeout: 4.0 + + - name: ask + engine: ask + shortcut: ask + disabled: true # tmp suspended: dh key too small # - name: base @@ -375,12 +508,32 @@ engines: shortcut: bc categories: music + - name: baidu + baidu_category: general + categories: [general] + engine: baidu + shortcut: bd + disabled: true + + - name: baidu images + baidu_category: images + categories: [images] + engine: baidu + shortcut: bdi + disabled: true + + - name: baidu kaifa + baidu_category: it + categories: [it] + engine: baidu + shortcut: bdk + disabled: true + - name: wikipedia engine: wikipedia shortcut: wp # add "list" to the array to get results in the results list display_type: ["infobox"] - base_url: 'https://{language}.wikipedia.org/' categories: [general] - name: bilibili @@ -405,6 +558,11 @@ engines: engine: bing_videos shortcut: biv + - name: bitchute + engine: bitchute + shortcut: bit + disabled: true + - name: bitbucket engine: xpath paging: true @@ -424,49 +582,96 @@ engines: require_api_key: false results: HTML + - name: bpb + engine: bpb + shortcut: bpb + disabled: true + - name: btdigg engine: btdigg shortcut: bt disabled: true - - name: ccc-tv - engine: xpath - paging: false - search_url: https://media.ccc.de/search/?q={query} - url_xpath: //div[@class="caption"]/h3/a/@href - title_xpath: //div[@class="caption"]/h3/a/text() - content_xpath: //div[@class="caption"]/h4/@title - categories: videos - disabled: true - shortcut: c3tv - about: - website: https://media.ccc.de/ - wikidata_id: Q80729951 - official_api_documentation: https://github.com/voc/voctoweb - use_official_api: false - require_api_key: false - results: HTML - # We don't set language: de here because media.ccc.de is not just - # for a German audience. It contains many English videos and many - # German videos have English subtitles. - - name: openverse engine: openverse categories: images shortcut: opv + - name: media.ccc.de + engine: ccc_media + shortcut: c3tv + # We don't set language: de here because media.ccc.de is not just + # for a German audience. It contains many English videos and many + # German videos have English subtitles. + disabled: true + - name: chefkoch engine: chefkoch shortcut: chef # to show premium or plus results too: # skip_premium: false - # - name: core.ac.uk - # engine: core - # categories: science - # shortcut: cor - # # get your API key from: https://core.ac.uk/api-keys/register/ - # api_key: 'unset' + # WARNING: links from chinaso.com voilate users privacy + # Before activate these engines its mandatory to read + # - https://github.com/searxng/searxng/issues/4694 + # - https://docs.searxng.org/dev/engines/online/chinaso.html + + - name: chinaso news + engine: chinaso + shortcut: chinaso + categories: [news] + chinaso_category: news + chinaso_news_source: all + disabled: true + inactive: true + + - name: chinaso images + engine: chinaso + network: chinaso news + shortcut: chinasoi + categories: [images] + chinaso_category: images + disabled: true + inactive: true + + - name: chinaso videos + engine: chinaso + network: chinaso news + shortcut: chinasov + categories: [videos] + chinaso_category: videos + disabled: true + inactive: true + + - name: cloudflareai + engine: cloudflareai + shortcut: cfai + # get api token and accont id from https://developers.cloudflare.com/workers-ai/get-started/rest-api/ + cf_account_id: 'your_cf_accout_id' + cf_ai_api: 'your_cf_api' + # create your ai gateway by https://developers.cloudflare.com/ai-gateway/get-started/creating-gateway/ + cf_ai_gateway: 'your_cf_ai_gateway_name' + # find the model name from https://developers.cloudflare.com/workers-ai/models/#text-generation + cf_ai_model: 'ai_model_name' + # custom your preferences + # cf_ai_model_display_name: 'Cloudflare AI' + # cf_ai_model_assistant: 'prompts_for_assistant_role' + # cf_ai_model_system: 'prompts_for_system_role' + timeout: 30 + disabled: true + + - name: core.ac.uk + engine: core + shortcut: cor + # read https://docs.searxng.org/dev/engines/online/core.html + api_key: "" + inactive: true + + - name: cppreference + engine: cppreference + shortcut: cpp + paging: false + disabled: true - name: crossref engine: crossref @@ -484,52 +689,36 @@ engines: url_query: link title_query: title content_query: snippet + title_html_to_text: true + content_html_to_text: true disabled: true about: website: https://crowdview.ai/ - name: yep - engine: json_engine + engine: yep shortcut: yep categories: general + search_type: web + timeout: 5 disabled: true - paging: false - content_html_to_text: true - title_html_to_text: true - search_url: https://api.yep.com/fs/1/?type=web&q={query}&no_correct=false&limit=100 - results_query: 1/results - title_query: title - url_query: url - content_query: snippet - about: - website: https://yep.com - use_official_api: false - require_api_key: false - results: JSON - - name: curlie - engine: xpath - shortcut: cl - categories: general + - name: yep images + engine: yep + shortcut: yepi + categories: images + search_type: images + disabled: true + + - name: yep news + engine: yep + shortcut: yepn + categories: news + search_type: news disabled: true - paging: true - lang_all: '' - search_url: https://curlie.org/search?q={query}&lang={lang}&start={pageno}&stime=92452189 - page_size: 20 - results_xpath: //div[@id="site-list-content"]/div[@class="site-item"] - url_xpath: ./div[@class="title-and-desc"]/a/@href - title_xpath: ./div[@class="title-and-desc"]/a/div - content_xpath: ./div[@class="title-and-desc"]/div[@class="site-descr"] - about: - website: https://curlie.org/ - wikidata_id: Q60715723 - use_official_api: false - require_api_key: false - results: HTML - name: currency engine: currency_convert - categories: general shortcut: cc - name: deezer @@ -537,6 +726,11 @@ engines: shortcut: dz disabled: true + - name: destatis + engine: destatis + shortcut: destat + disabled: true + - name: deviantart engine: deviantart shortcut: da @@ -561,6 +755,24 @@ engines: shortcut: dh categories: [it, packages] + - name: encyclosearch + engine: json_engine + shortcut: es + categories: general + paging: true + search_url: https://encyclosearch.org/encyclosphere/search?q={query}&page={pageno}&resultsPerPage=15 + results_query: Results + url_query: SourceURL + title_query: Title + content_query: Description + disabled: true + about: + website: https://encyclosearch.org + official_api_documentation: https://encyclosearch.org/docs/#/rest-api + use_official_api: true + require_api_key: false + results: JSON + - name: erowid engine: xpath paging: true @@ -582,17 +794,18 @@ engines: results: HTML # - name: elasticsearch - # shortcut: es + # shortcut: els # engine: elasticsearch # base_url: http://localhost:9200 # username: elastic # password: changeme # index: my-index + # enable_http: true # # available options: match, simple_query_string, term, terms, custom # query_type: match # # if query_type is set to custom, provide your query here - # #custom_query_json: {"query":{"match_all": {}}} - # #show_metadata: false + # # custom_query_json: {"query":{"match_all": {}}} + # # show_metadata: false # disabled: true - name: wikidata @@ -689,6 +902,11 @@ engines: shortcut: fd disabled: true + - name: findthatmeme + engine: findthatmeme + shortcut: ftm + disabled: true + - name: flickr categories: images shortcut: fl @@ -724,59 +942,87 @@ engines: shortcut: frk disabled: true + - name: fyyd + engine: fyyd + shortcut: fy + timeout: 8.0 + disabled: true + + - name: geizhals + engine: geizhals + shortcut: geiz + disabled: true + - name: genius engine: genius shortcut: gen - name: gentoo - engine: gentoo + engine: mediawiki shortcut: ge - timeout: 10.0 + categories: ["it", "software wikis"] + base_url: "https://wiki.gentoo.org/" + api_path: "api.php" + search_type: text + timeout: 10 - name: gitlab - engine: json_engine - paging: true - search_url: https://gitlab.com/api/v4/projects?search={query}&page={pageno} - url_query: web_url - title_query: name_with_namespace - content_query: description - page_size: 20 - categories: [it, repos] + engine: gitlab + base_url: https://gitlab.com shortcut: gl - timeout: 10.0 disabled: true about: - website: https://about.gitlab.com/ + website: https://gitlab.com/ wikidata_id: Q16639197 - official_api_documentation: https://docs.gitlab.com/ee/api/ - use_official_api: false - require_api_key: false - results: JSON + + # - name: gnome + # engine: gitlab + # base_url: https://gitlab.gnome.org + # shortcut: gn + # about: + # website: https://gitlab.gnome.org + # wikidata_id: Q44316 - name: github engine: github shortcut: gh - # This a Gitea service. If you would like to use a different instance, - # change codeberg.org to URL of the desired Gitea host. Or you can create a - # new engine by copying this and changing the name, shortcut and search_url. + - name: github code + engine: github_code + shortcut: ghc + disabled: true + ghc_auth: + # type is one of: + # * none + # * personal_access_token + # * bearer + # When none is passed, the token is not requried. + type: "none" + token: "token" + # specify whether to highlight the matching lines to the query + ghc_highlight_matching_lines: true + ghc_strip_new_lines: true + ghc_strip_whitespace: false + timeout: 10.0 - name: codeberg - engine: json_engine - search_url: https://codeberg.org/api/v1/repos/search?q={query}&limit=10 - url_query: html_url - title_query: name - content_query: description - categories: [it, repos] + # https://docs.searxng.org/dev/engines/online/gitea.html + engine: gitea + base_url: https://codeberg.org shortcut: cb disabled: true - about: - website: https://codeberg.org/ - wikidata_id: - official_api_documentation: https://try.gitea.io/api/swagger - use_official_api: false - require_api_key: false - results: JSON + + - name: gitea.com + engine: gitea + base_url: https://gitea.com + shortcut: gitea + disabled: true + + - name: goodreads + engine: goodreads + shortcut: good + timeout: 4.0 + disabled: true - name: google engine: google @@ -828,30 +1074,9 @@ engines: - name: material icons engine: material_icons - categories: images shortcut: mi disabled: true - - name: gpodder - engine: json_engine - shortcut: gpod - timeout: 4.0 - paging: false - search_url: https://gpodder.net/search.json?q={query} - url_query: url - title_query: title - content_query: description - page_size: 19 - categories: music - disabled: true - about: - website: https://gpodder.net - wikidata_id: Q3093354 - official_api_documentation: https://gpoddernet.readthedocs.io/en/latest/api/ - use_official_api: false - requires_api_key: false - results: JSON - - name: habrahabr engine: xpath paging: true @@ -877,10 +1102,23 @@ engines: shortcut: hn disabled: true + - name: hex + engine: hex + shortcut: hex + disabled: true + # Valid values: name inserted_at updated_at total_downloads recent_downloads + sort_criteria: "recent_downloads" + page_size: 10 + + - name: crates.io + engine: crates + shortcut: crates + disabled: true + timeout: 6.0 + - name: hoogle engine: xpath - paging: true - search_url: https://hoogle.haskell.org/?hoogle={query}&start={pageno} + search_url: https://hoogle.haskell.org/?hoogle={query} results_xpath: '//div[@class="result"]' title_xpath: './/div[@class="ans"]//a' url_xpath: './/div[@class="ans"]//a/@href' @@ -896,6 +1134,28 @@ engines: require_api_key: false results: JSON + - name: il post + engine: il_post + shortcut: pst + disabled: true + + - name: huggingface + engine: huggingface + shortcut: hf + disabled: true + + - name: huggingface datasets + huggingface_endpoint: datasets + engine: huggingface + shortcut: hfd + disabled: true + + - name: huggingface spaces + huggingface_endpoint: spaces + engine: huggingface + shortcut: hfs + disabled: true + - name: imdb engine: imdb shortcut: imdb @@ -913,21 +1173,24 @@ engines: timeout: 6.0 disabled: true - - name: invidious - engine: invidious - # Instanes will be selected randomly, see https://api.invidious.io/ for - # instances that are stable (good uptime) and close to you. - base_url: - - https://invidious.io.lol - - https://invidious.fdn.fr - - https://yt.artemislena.eu - - https://invidious.tiekoetter.com - - https://invidious.flokinet.to - - https://vid.puffyan.us - - https://invidious.privacydev.net - - https://inv.tux.pizza - shortcut: iv - timeout: 3.0 + # - name: invidious + # engine: invidious + # # if you want to use invidious with SearXNG you should setup one locally + # # https://github.com/searxng/searxng/issues/2722#issuecomment-2884993248 + # base_url: + # - https://invidious.example1.com + # - https://invidious.example2.com + # shortcut: iv + # timeout: 3.0 + + - name: ipernity + engine: ipernity + shortcut: ip + disabled: true + + - name: iqiyi + engine: iqiyi + shortcut: iq disabled: true - name: jisho @@ -972,8 +1235,9 @@ engines: - name: library genesis engine: xpath - search_url: https://libgen.fun/search.php?req={query} - url_xpath: //a[contains(@href,"get.php?md5")]/@href + # search_url: https://libgen.is/search.php?req={query} + search_url: https://libgen.rs/search.php?req={query} + url_xpath: //a[contains(@href,"book/index.php?md5")]/@href title_xpath: //a[contains(@href,"book/")]/text()[1] content_xpath: //td/a[1][contains(@href,"=author")]/text() categories: files @@ -991,23 +1255,35 @@ engines: - name: z-library engine: zlibrary shortcut: zlib - categories: files timeout: 7.0 + disabled: true + # https://github.com/searxng/searxng/issues/3610 + inactive: true - name: library of congress engine: loc shortcut: loc categories: images + disabled: true + + - name: libretranslate + engine: libretranslate + # https://github.com/LibreTranslate/LibreTranslate?tab=readme-ov-file#mirrors + base_url: + - https://libretranslate.com/translate + # api_key: abc123 + shortcut: lt + disabled: true - name: lingva engine: lingva shortcut: lv # set lingva instance in url, by default it will use the official instance - # url: https://lingva.ml + # url: https://lingva.thedaviddelta.com - name: lobste.rs engine: xpath - search_url: https://lobste.rs/search?utf8=%E2%9C%93&q={query}&what=stories&order=relevance + search_url: https://lobste.rs/search?q={query}&what=stories&order=relevance results_xpath: //li[contains(@class, "story")] url_xpath: .//a[@class="u-url"]/@href title_xpath: .//a[@class="u-url"] @@ -1024,24 +1300,14 @@ engines: require_api_key: false results: HTML - - name: azlyrics - shortcut: lyrics - engine: xpath - timeout: 4.0 + - name: marginalia + engine: marginalia + shortcut: mar + # To get an API key, please follow the instructions at + # - https://about.marginalia-search.com/article/api/ + # api_key: ... disabled: true - categories: [music, lyrics] - paging: true - search_url: https://search.azlyrics.com/search.php?q={query}&w=lyrics&p={pageno} - url_xpath: //td[@class="text-left visitedlyr"]/a/@href - title_xpath: //span/b/text() - content_xpath: //td[@class="text-left visitedlyr"]/a/small - about: - website: https://azlyrics.com - wikidata_id: Q66372542 - official_api_documentation: - use_official_api: false - require_api_key: false - results: HTML + inactive: true - name: mastodon users engine: mastodon @@ -1062,18 +1328,44 @@ engines: # shortcut: mtrx # disabled: true + - name: mdn + shortcut: mdn + engine: json_engine + categories: [it] + paging: true + search_url: https://developer.mozilla.org/api/v1/search?q={query}&page={pageno} + results_query: documents + url_query: mdn_url + url_prefix: https://developer.mozilla.org + title_query: title + content_query: summary + about: + website: https://developer.mozilla.org + wikidata_id: Q3273508 + official_api_documentation: null + use_official_api: false + require_api_key: false + results: JSON + - name: metacpan engine: metacpan shortcut: cpan disabled: true number_of_results: 20 + # https://docs.searxng.org/dev/engines/offline/search-indexer-engines.html#module-searx.engines.meilisearch # - name: meilisearch # engine: meilisearch # shortcut: mes # enable_http: true # base_url: http://localhost:7700 # index: my-index + # auth_key: Bearer XXXX + + - name: microsoft learn + engine: microsoft_learn + shortcut: msl + disabled: true - name: mixcloud engine: mixcloud @@ -1093,33 +1385,33 @@ engines: # collection: 'reviews' # name of the db collection # key: 'name' # key in the collection to search for + - name: mozhi + engine: mozhi + base_url: + - https://mozhi.aryak.me + - https://translate.bus-hit.me + - https://nyc1.mz.ggtyler.dev + # mozhi_engine: google - see https://mozhi.aryak.me for supported engines + timeout: 4.0 + shortcut: mz + disabled: true + - name: mwmbl engine: mwmbl # api_url: https://api.mwmbl.org shortcut: mwm disabled: true - - name: npm - engine: json_engine - paging: true - first_page_num: 0 - search_url: https://api.npms.io/v2/search?q={query}&size=25&from={pageno} - results_query: results - url_query: package/links/npm - title_query: package/name - content_query: package/description - page_size: 25 - categories: [it, packages] + - name: niconico + engine: niconico + shortcut: nico disabled: true - timeout: 5.0 + + - name: npm + engine: npm shortcut: npm - about: - website: https://npms.io/ - wikidata_id: Q7067518 - official_api_documentation: https://api-docs.npms.io/ - use_official_api: false - require_api_key: false - results: JSON + timeout: 5.0 + disabled: true - name: nyaa engine: nyaa @@ -1142,11 +1434,32 @@ engines: require_api_key: false results: JSON + # https://docs.searxng.org/dev/engines/online/mullvad_leta.html + - name: mullvadleta + engine: mullvad_leta + disabled: true + leta_engine: google + categories: [general, web] + shortcut: ml + + - name: mullvadleta brave + engine: mullvad_leta + network: mullvadleta + disabled: true + leta_engine: brave + categories: [general, web] + shortcut: mlb + - name: odysee engine: odysee shortcut: od disabled: true + - name: ollama + engine: ollama + shortcut: ollama + disabled: true + - name: openairedatasets engine: json_engine paging: true @@ -1187,6 +1500,33 @@ engines: require_api_key: false results: JSON + - name: openalex + engine: openalex + shortcut: oa + # https://docs.searxng.org/dev/engines/online/openalex.html + # Recommended by OpenAlex: join the polite pool with an email address + # mailto: "[email protected]" + timeout: 5.0 + disabled: true + + - name: openclipart + engine: openclipart + shortcut: ocl + inactive: true + disabled: true + timeout: 30 + + - name: openlibrary + engine: openlibrary + shortcut: ol + timeout: 10 + disabled: true + + - name: openmeteo + engine: open_meteo + shortcut: om + disabled: true + # - name: opensemanticsearch # engine: opensemantic # shortcut: oss @@ -1255,14 +1595,14 @@ engines: categories: videos piped_filter: videos timeout: 3.0 + inactive: true # URL to use as link and for embeds frontend_url: https://srv.piped.video # Instance will be selected randomly, for more see https://piped-instances.kavin.rocks/ backend_url: - - https://pipedapi.kavin.rocks - - https://pipedapi-libre.kavin.rocks - - https://pipedapi.adminforge.de + - https://pipedapi.ducks.party + - https://api.piped.private.coffee - name: piped.music engine: piped @@ -1271,6 +1611,7 @@ engines: categories: music piped_filter: music_songs timeout: 3.0 + inactive: true - name: piratebay engine: piratebay @@ -1280,7 +1621,50 @@ engines: url: https://thepiratebay.org/ timeout: 3.0 - {# # Required dependency: psychopg2 + - name: pixabay images + engine: pixabay + pixabay_type: images + categories: images + shortcut: pixi + disabled: true + + - name: pixabay videos + engine: pixabay + pixabay_type: videos + categories: videos + shortcut: pixv + disabled: true + + - name: pixiv + shortcut: pv + engine: pixiv + disabled: true + inactive: true + pixiv_image_proxies: + - https://pximg.example.org + # A proxy is required to load the images. Hosting an image proxy server + # for Pixiv: + # --> https://pixivfe.pages.dev/hosting-image-proxy-server/ + # Proxies from public instances. Ask the public instances owners if they + # agree to receive traffic from SearXNG! + # --> https://codeberg.org/VnPower/PixivFE#instances + # --> https://github.com/searxng/searxng/pull/3192#issuecomment-1941095047 + # image proxy of https://pixiv.cat + # - https://i.pixiv.cat + # image proxy of https://www.pixiv.pics + # - https://pximg.cocomi.eu.org + # image proxy of https://pixivfe.exozy.me + # - https://pximg.exozy.me + # image proxy of https://pixivfe.ducks.party + # - https://pixiv.ducks.party + # image proxy of https://pixiv.perennialte.ch + # - https://pximg.perennialte.ch + + - name: podcastindex + engine: podcastindex + shortcut: podcast + + # Required dependency: psychopg2 # - name: postgresql # engine: postgresql # database: postgres @@ -1288,7 +1672,42 @@ engines: # password: postgres # limit: 10 # query_str: 'SELECT * from my_table WHERE my_column = %(query)s' - # shortcut : psql #} + # shortcut : psql + + - name: presearch + engine: presearch + search_type: search + categories: [general, web] + shortcut: ps + timeout: 4.0 + disabled: true + + - name: presearch images + engine: presearch + network: presearch + search_type: images + categories: [images, web] + timeout: 4.0 + shortcut: psimg + disabled: true + + - name: presearch videos + engine: presearch + network: presearch + search_type: videos + categories: [general, web] + timeout: 4.0 + shortcut: psvid + disabled: true + + - name: presearch news + engine: presearch + network: presearch + search_type: news + categories: [news, web] + timeout: 4.0 + shortcut: psnews + disabled: true - name: pub.dev engine: xpath @@ -1310,36 +1729,39 @@ engines: require_api_key: false results: HTML + - name: public domain image archive + engine: public_domain_image_archive + shortcut: pdia + disabled: true + - name: pubmed engine: pubmed shortcut: pub - timeout: 3.0 - name: pypi shortcut: pypi - engine: xpath - paging: true - search_url: https://pypi.org/search/?q={query}&page={pageno} - results_xpath: /html/body/main/div/div/div/form/div/ul/li/a[@class="package-snippet"] - url_xpath: ./@href - title_xpath: ./h3/span[@class="package-snippet__name"] - content_xpath: ./p - suggestion_xpath: /html/body/main/div/div/div/form/div/div[@class="callout-block"]/p/span/a[@class="link"] - first_page_num: 1 - categories: [it, packages] - about: - website: https://pypi.org - wikidata_id: Q2984686 - official_api_documentation: https://warehouse.readthedocs.io/api-reference/index.html - use_official_api: false - require_api_key: false - results: HTML + engine: pypi + + - name: quark + quark_category: general + categories: [general] + engine: quark + shortcut: qk + disabled: true + + - name: quark images + quark_category: images + categories: [images] + engine: quark + shortcut: qki + disabled: true - name: qwant qwant_categ: web engine: qwant shortcut: qw categories: [general, web] + disabled: true additional_tests: rosebud: *test_rosebud @@ -1364,7 +1786,7 @@ engines: categories: [videos, web] network: qwant - {# # - name: library + # - name: library # engine: recoll # shortcut: lib # base_url: 'https://recoll.example.org/' @@ -1384,7 +1806,7 @@ engines: # shortcut: libr # timeout: 30.0 # categories: files - # disabled: true #} + # disabled: true - name: radio browser engine: radio_browser @@ -1394,11 +1816,41 @@ engines: engine: reddit shortcut: re page_size: 25 + disabled: true - {# # Required dependency: redis - # - name: myredis + - name: reuters + engine: reuters + shortcut: reu + # https://docs.searxng.org/dev/engines/online/reuters.html + # sort_order = "relevance" + + - name: right dao + engine: xpath + paging: true + page_size: 12 + search_url: https://rightdao.com/search?q={query}&start={pageno} + results_xpath: //div[contains(@class, "description")] + url_xpath: ../div[contains(@class, "title")]/a/@href + title_xpath: ../div[contains(@class, "title")] + content_xpath: . + categories: general + shortcut: rd + disabled: true + about: + website: https://rightdao.com/ + use_official_api: false + require_api_key: false + results: HTML + + - name: rottentomatoes + engine: rottentomatoes + shortcut: rt + disabled: true + + # Required dependency: valkey + # - name: myvalkey # shortcut : rds - # engine: redis_server + # engine: valkey_server # exact_match_only: false # host: '127.0.0.1' # port: 6379 @@ -1410,12 +1862,51 @@ engines: # - name: scanr structures # shortcut: scs # engine: scanr_structures - # disabled: true #} + # disabled: true + + - name: searchmysite + engine: xpath + shortcut: sms + categories: general + paging: true + search_url: https://searchmysite.net/search/?q={query}&page={pageno} + results_xpath: //div[contains(@class,'search-result')] + url_xpath: .//a[contains(@class,'result-link')]/@href + title_xpath: .//span[contains(@class,'result-title-txt')]/text() + content_xpath: ./p[@id='result-hightlight'] + disabled: true + about: + website: https://searchmysite.net + + - name: selfhst icons + engine: selfhst + shortcut: si + disabled: true - name: sepiasearch engine: sepiasearch shortcut: sep + - name: sogou + engine: sogou + shortcut: sogou + disabled: true + + - name: sogou images + engine: sogou_images + shortcut: sogoui + disabled: true + + - name: sogou videos + engine: sogou_videos + shortcut: sogouv + disabled: true + + - name: sogou wechat + engine: sogou_wechat + shortcut: sogouw + disabled: true + - name: soundcloud engine: soundcloud shortcut: sc @@ -1432,41 +1923,52 @@ engines: api_site: 'askubuntu' categories: [it, q&a] - - name: internetarchivescholar - engine: internet_archive_scholar - shortcut: ias - timeout: 5.0 - - name: superuser engine: stackexchange shortcut: su api_site: 'superuser' categories: [it, q&a] + - name: discuss.python + engine: discourse + shortcut: dpy + base_url: 'https://discuss.python.org' + categories: [it, q&a] + disabled: true + + - name: caddy.community + engine: discourse + shortcut: caddy + base_url: 'https://caddy.community' + categories: [it, q&a] + disabled: true + + - name: pi-hole.community + engine: discourse + shortcut: pi + categories: [it, q&a] + base_url: 'https://discourse.pi-hole.net' + disabled: true + - name: searchcode code engine: searchcode_code shortcut: scc disabled: true + inactive: true - - name: framalibre - engine: framalibre - shortcut: frl - disabled: true - - {# # - name: searx + # - name: searx # engine: searx_engine # shortcut: se # instance_urls : # - http://127.0.0.1:8888/ # - ... - # disabled: true #} + # disabled: true - name: semantic scholar engine: semantic_scholar - disabled: true shortcut: se - {# # Spotify needs API credentials + # Spotify needs API credentials # - name: spotify # engine: spotify # shortcut: stf @@ -1484,22 +1986,39 @@ engines: # query_fields: '' # query fields # enable_http: true - # - name: springer nature - # engine: springer - # # get your API key from: https://dev.springernature.com/signup - # # working API key, for test & debug: "a69685087d07eca9f13db62f65b8f601" - # api_key: 'unset' - # shortcut: springer - # timeout: 15.0 #} + - name: springer nature + engine: springer + shortcut: springer + timeout: 5 + # read https://docs.searxng.org/dev/engines/online/springer.html + api_key: "" + inactive: true - name: startpage engine: startpage shortcut: sp - timeout: 6.0 - disabled: true + startpage_categ: web + categories: [general, web] additional_tests: rosebud: *test_rosebud + - name: startpage news + engine: startpage + startpage_categ: news + categories: [news, web] + shortcut: spn + + - name: startpage images + engine: startpage + startpage_categ: images + categories: [images, web] + shortcut: spi + + - name: steam + engine: steam + shortcut: stm + disabled: true + - name: tokyotoshokan engine: tokyotoshokan shortcut: tt @@ -1517,15 +2036,15 @@ engines: # For this demo of the sqlite engine download: # https://liste.mediathekview.de/filmliste-v2.db.bz2 # and unpack into searx/data/filmliste-v2.db - # Query to test: "!demo concert" + # Query to test: "!mediathekview concert" # - # - name: demo + # - name: mediathekview # engine: sqlite - # shortcut: demo - # categories: general - # result_template: default.html + # shortcut: mediathekview + # categories: [general, videos] + # result_type: MainResult # database: searx/data/filmliste-v2.db - # query_str: >- + # query_str: >- # SELECT title || ' (' || time(duration, 'unixepoch') || ')' AS title, # COALESCE( NULLIF(url_video_hd,''), NULLIF(url_video_sd,''), url_video) AS url, # description AS content @@ -1568,6 +2087,16 @@ engines: enable_http: true shortcut: tch + # TubeArchivist is a self-hosted Youtube archivist software. + # https://docs.searxng.org/dev/engines/online/tubearchivist.html + # + # - name: tubearchivist + # engine: tubearchivist + # shortcut: tuba + # base_url: + # ta_token: + # ta_link_to_mp4: false + # torznab engine lets you query any torznab compatible indexer. Using this # engine in combination with Jackett opens the possibility to query a lot of # public and private indexers directly from SearXNG. More details at: @@ -1599,6 +2128,29 @@ engines: engine: unsplash shortcut: us + - name: yandex + engine: yandex + categories: general + search_type: web + shortcut: yd + disabled: true + inactive: true + + - name: yandex images + engine: yandex + categories: images + search_type: images + shortcut: ydi + disabled: true + inactive: true + + - name: yandex music + engine: yandex_music + shortcut: ydm + disabled: true + # https://yandex.com/support/music/access.html + inactive: true + - name: yahoo engine: yahoo shortcut: yh @@ -1640,25 +2192,6 @@ engines: about: website: https://wiby.me/ - - name: alexandria - engine: json_engine - shortcut: alx - categories: general - paging: true - search_url: https://api.alexandria.org/?a=1&q={query}&p={pageno} - results_query: results - title_query: title - url_query: url - content_query: snippet - timeout: 1.5 - disabled: true - about: - website: https://alexandria.org/ - official_api_documentation: https://github.com/alexandria-org/alexandria-api/raw/master/README.md - use_official_api: true - require_api_key: false - results: JSON - - name: wikibooks engine: mediawiki weight: 0.5 @@ -1718,6 +2251,16 @@ engines: about: website: https://species.wikimedia.org/ wikidata_id: Q13679 + tests: + wikispecies: + matrix: + query: "Campbell, L.I. et al. 2011: MicroRNAs" + lang: en + result_container: + - not_empty + - ['one_title_contains', 'Tardigrada'] + test: + - unique_results - name: wiktionary engine: mediawiki @@ -1757,6 +2300,28 @@ engines: engine: wikicommons shortcut: wc categories: images + search_type: images + number_of_results: 10 + + - name: wikicommons.videos + engine: wikicommons + shortcut: wcv + categories: videos + search_type: videos + number_of_results: 10 + + - name: wikicommons.audio + engine: wikicommons + shortcut: wca + categories: music + search_type: audio + number_of_results: 10 + + - name: wikicommons.files + engine: wikicommons + shortcut: wcf + categories: files + search_type: files number_of_results: 10 - name: wolframalpha @@ -1795,6 +2360,16 @@ engines: # query_str: 'SELECT * from mytable WHERE fieldname=%(query)s' # shortcut: mysql + # Required dependency: mariadb + # - name: mariadb + # engine: mariadb_server + # database: mydatabase + # username: user + # password: pass + # limit: 10 + # query_str: 'SELECT * from mytable WHERE fieldname=%(query)s' + # shortcut: mdb + - name: 1337x engine: 1337x shortcut: 1337x @@ -1821,25 +2396,25 @@ engines: - name: mojeek shortcut: mjk - engine: xpath - paging: true + engine: mojeek categories: [general, web] - search_url: https://www.mojeek.com/search?q={query}&s={pageno}&lang={lang}&lb={lang} - results_xpath: //ul[@class="results-standard"]/li/a[@class="ob"] - url_xpath: ./@href - title_xpath: ../h2/a - content_xpath: ..//p[@class="s"] - suggestion_xpath: //div[@class="top-info"]/p[@class="top-info spell"]/em/a - first_page_num: 0 - page_size: 10 disabled: true - about: - website: https://www.mojeek.com/ - wikidata_id: Q60747299 - official_api_documentation: https://www.mojeek.com/services/api.html/ - use_official_api: false - require_api_key: false - results: HTML + + - name: mojeek images + shortcut: mjkimg + engine: mojeek + categories: [images, web] + search_type: images + paging: false + disabled: true + + - name: mojeek news + shortcut: mjknews + engine: mojeek + categories: [news, web] + search_type: news + paging: false + disabled: true - name: moviepilot engine: moviepilot @@ -1847,25 +2422,31 @@ engines: disabled: true - name: naver - shortcut: nvr categories: [general, web] - engine: xpath - paging: true - search_url: https://search.naver.com/search.naver?where=webkr&sm=osp_hty&ie=UTF-8&query={query}&start={pageno} - url_xpath: //a[@class="link_tit"]/@href - title_xpath: //a[@class="link_tit"] - content_xpath: //a[@class="total_dsc"]/div - first_page_num: 1 - page_size: 10 + engine: naver + shortcut: nvr + disabled: true + + - name: naver images + naver_category: images + categories: [images] + engine: naver + shortcut: nvri + disabled: true + + - name: naver news + naver_category: news + categories: [news] + engine: naver + shortcut: nvrn + disabled: true + + - name: naver videos + naver_category: videos + categories: [videos] + engine: naver + shortcut: nvrv disabled: true - about: - website: https://www.naver.com/ - wikidata_id: Q485639 - official_api_documentation: https://developers.naver.com/docs/nmt/examples/ - use_official_api: false - require_api_key: false - results: HTML - language: ko - name: rubygems shortcut: rbg @@ -1904,25 +2485,30 @@ engines: disabled: true - name: yacy + # https://docs.searxng.org/dev/engines/online/yacy.html engine: yacy categories: general search_type: text - base_url: https://yacy.searchlab.eu + # see https://github.com/searxng/searxng/pull/3631#issuecomment-2240903027 + base_url: + - https://yacy.searchlab.eu shortcut: ya disabled: true - # required if you aren't using HTTPS for your local yacy instance - # https://docs.searxng.org/dev/engines/online/yacy.html - # enable_http: true - # timeout: 3.0 - # search_mode: 'global' + # if you aren't using HTTPS for your local yacy instance disable https + # enable_http: false + search_mode: 'global' + # timeout can be reduced in 'local' search mode + timeout: 5.0 - name: yacy images engine: yacy + network: yacy categories: images search_type: image - base_url: https://yacy.searchlab.eu shortcut: yai disabled: true + # timeout can be reduced in 'local' search mode + timeout: 5.0 - name: rumble engine: rumble @@ -1932,11 +2518,22 @@ engines: categories: videos disabled: true + - name: repology + engine: repology + shortcut: rep + disabled: true + inactive: true + + - name: livespace + engine: livespace + shortcut: ls + categories: videos + disabled: true + timeout: 5.0 + - name: wordnik engine: wordnik - shortcut: def - base_url: https://www.wordnik.com/ - categories: [dictionaries] + shortcut: wnik timeout: 5.0 - name: woxikon.de synonyme @@ -1981,11 +2578,9 @@ engines: seekr_category: videos disabled: true - - name: sjp.pwn - engine: sjp - shortcut: sjp - base_url: https://sjp.pwn.pl/ - timeout: 5.0 + - name: stract + engine: stract + shortcut: str disabled: true - name: svgrepo @@ -1995,26 +2590,24 @@ engines: disabled: true - name: tootfinder - engine: json_engine - categories: ['social media'] - paging: false - search_url: https://www.tootfinder.ch/rest/api/search/{query} - url_query: uri - title_query: card/title - content_query: content - thumbnail_query: card/image + engine: tootfinder shortcut: toot - about: - website: https://tootfinder.ch/ - official_api_documentation: https://wiki.tootfinder.ch/index.php?name=the-tootfinder-rest-api - use_official_api: true - require_api_key: false - results: 'JSON' + + - name: uxwing + engine: uxwing + shortcut: ux + disabled: true + + - name: voidlinux + engine: voidlinux + shortcut: void + disabled: true - name: wallhaven engine: wallhaven # api_key: abcdefghijklmnopqrstuvwxyz shortcut: wh + disabled: true # wikimini: online encyclopedia for children # The fulltext and title parameter is necessary for Wikimini because @@ -2041,11 +2634,6 @@ engines: shortcut: wttr timeout: 9.0 - - name: yummly - engine: yummly - shortcut: yum - disabled: true - - name: brave engine: brave shortcut: br @@ -2076,22 +2664,20 @@ engines: categories: news brave_category: news + # - name: brave.goggles + # engine: brave + # network: brave + # shortcut: brgog + # time_range_support: true + # paging: true + # categories: [general, web] + # brave_category: goggles + # Goggles: # required! This should be a URL ending in .goggle + - name: lib.rs shortcut: lrs - engine: xpath - search_url: https://lib.rs/search?q={query} - results_xpath: /html/body/main/div/ol/li/a - url_xpath: ./@href - title_xpath: ./div[@class="h"]/h4 - content_xpath: ./div[@class="h"]/p - categories: [it, packages] + engine: lib_rs disabled: true - about: - website: https://lib.rs - wikidata_id: Q113486010 - use_official_api: false - require_api_key: false - results: HTML - name: sourcehut shortcut: srht @@ -2138,104 +2724,109 @@ engines: shortcut: bt4g - name: pkg.go.dev - engine: xpath + engine: pkg_go_dev shortcut: pgo - search_url: https://pkg.go.dev/search?limit=100&m=package&q={query} - results_xpath: /html/body/main/div[contains(@class,"SearchResults")]/div[not(@class)]/div[@class="SearchSnippet"] - url_xpath: ./div[@class="SearchSnippet-headerContainer"]/h2/a/@href - title_xpath: ./div[@class="SearchSnippet-headerContainer"]/h2/a - content_xpath: ./p[@class="SearchSnippet-synopsis"] - categories: [packages, it] - timeout: 3.0 + disabled: true + + - name: senscritique + engine: senscritique + shortcut: scr + timeout: 4.0 + disabled: true + + - name: minecraft wiki + engine: mediawiki + shortcut: mcw + categories: ["software wikis"] + base_url: https://minecraft.wiki/ + api_path: "api.php" + search_type: text disabled: true about: - website: https://pkg.go.dev/ - use_official_api: false - require_api_key: false - results: HTML -{# -Doku engine lets you access to any Doku wiki instance: -A public one or a privete/corporate one. - - name: ubuntuwiki - engine: doku - shortcut: uw - base_url: 'https://doc.ubuntu-fr.org' + website: https://minecraft.wiki/ + wikidata_id: Q105533483 -Be careful when enabling this engine if you are -running a public instance. Do not expose any sensitive -information. You can restrict access by configuring a list -of access tokens under tokens. - - name: git grep - engine: command - command: ['git', 'grep', '{{QUERY}}'] - shortcut: gg - tokens: [] - disabled: true - delimiter: - chars: ':' - keys: ['filepath', 'code'] +# Doku engine lets you access to any Doku wiki instance: +# A public one or a privete/corporate one. +# - name: ubuntuwiki +# engine: doku +# shortcut: uw +# base_url: 'https://doc.ubuntu-fr.org' -Be careful when enabling this engine if you are -running a public instance. Do not expose any sensitive -information. You can restrict access by configuring a list -of access tokens under tokens. - - name: locate - engine: command - command: ['locate', '{{QUERY}}'] - shortcut: loc - tokens: [] - disabled: true - delimiter: - chars: ' ' - keys: ['line'] +# Be careful when enabling this engine if you are +# running a public instance. Do not expose any sensitive +# information. You can restrict access by configuring a list +# of access tokens under tokens. +# - name: git grep +# engine: command +# command: ['git', 'grep', '{{QUERY}}'] +# shortcut: gg +# tokens: [] +# disabled: true +# delimiter: +# chars: ':' +# keys: ['filepath', 'code'] -Be careful when enabling this engine if you are -running a public instance. Do not expose any sensitive -information. You can restrict access by configuring a list -of access tokens under tokens. - - name: find - engine: command - command: ['find', '.', '-name', '{{QUERY}}'] - query_type: path - shortcut: fnd - tokens: [] - disabled: true - delimiter: - chars: ' ' - keys: ['line'] +# Be careful when enabling this engine if you are +# running a public instance. Do not expose any sensitive +# information. You can restrict access by configuring a list +# of access tokens under tokens. +# - name: locate +# engine: command +# command: ['locate', '{{QUERY}}'] +# shortcut: loc +# tokens: [] +# disabled: true +# delimiter: +# chars: ' ' +# keys: ['line'] -Be careful when enabling this engine if you are -running a public instance. Do not expose any sensitive -information. You can restrict access by configuring a list -of access tokens under tokens. - - name: pattern search in files - engine: command - command: ['fgrep', '{{QUERY}}'] - shortcut: fgr - tokens: [] - disabled: true - delimiter: - chars: ' ' - keys: ['line'] +# Be careful when enabling this engine if you are +# running a public instance. Do not expose any sensitive +# information. You can restrict access by configuring a list +# of access tokens under tokens. +# - name: find +# engine: command +# command: ['find', '.', '-name', '{{QUERY}}'] +# query_type: path +# shortcut: fnd +# tokens: [] +# disabled: true +# delimiter: +# chars: ' ' +# keys: ['line'] -Be careful when enabling this engine if you are -running a public instance. Do not expose any sensitive -information. You can restrict access by configuring a list -of access tokens under tokens. - - name: regex search in files - engine: command - command: ['grep', '{{QUERY}}'] - shortcut: gr - tokens: [] - disabled: true - delimiter: - chars: ' ' - keys: ['line'] #} +# Be careful when enabling this engine if you are +# running a public instance. Do not expose any sensitive +# information. You can restrict access by configuring a list +# of access tokens under tokens. +# - name: pattern search in files +# engine: command +# command: ['fgrep', '{{QUERY}}'] +# shortcut: fgr +# tokens: [] +# disabled: true +# delimiter: +# chars: ' ' +# keys: ['line'] + +# Be careful when enabling this engine if you are +# running a public instance. Do not expose any sensitive +# information. You can restrict access by configuring a list +# of access tokens under tokens. +# - name: regex search in files +# engine: command +# command: ['grep', '{{QUERY}}'] +# shortcut: gr +# tokens: [] +# disabled: true +# delimiter: +# chars: ' ' +# keys: ['line'] doi_resolvers: oadoi.org: 'https://oadoi.org/' doi.org: 'https://doi.org/' - doai.io: 'https://dissem.in/' sci-hub.se: 'https://sci-hub.se/' sci-hub.st: 'https://sci-hub.st/' sci-hub.ru: 'https://sci-hub.ru/' diff --git a/app-configs/rinoa/searxng/uwsgi.ini.j2 b/app-configs/rinoa/searxng/uwsgi.ini.j2 index 0a01698..d318c9e 100644 --- a/app-configs/rinoa/searxng/uwsgi.ini.j2 +++ b/app-configs/rinoa/searxng/uwsgi.ini.j2 @@ -1,14 +1,21 @@ {% set vault_addr = 'https://vault.trez.wtf' %} {% set secrets_path = 'rinoa-docker/env' %} - [uwsgi] +# Listening address +# default value: [::]:8080 (see Dockerfile) +http-socket = $(BIND_ADDRESS) + # Who will run the code uid = searxng gid = searxng # Number of workers (usually CPU count) -workers = %k -threads = 4 +# default value: %k (= number of CPU core, see Dockerfile) +workers = $(UWSGI_WORKERS) + +# Number of threads per worker +# default value: 4 (see Dockerfile) +threads = $(UWSGI_THREADS) # The right granted on the created socket chmod-socket = 666 @@ -16,9 +23,8 @@ chmod-socket = 666 # Plugin to use and interpreter config single-interpreter = true master = true -plugin = python3 lazy-apps = true -enable-threads = 4 +enable-threads = true # Module to import module = searx.webapp @@ -41,9 +47,11 @@ buffer-size = 8192 # See https://github.com/searx/searx-docker/issues/24 add-header = Connection: close +# Follow SIGTERM convention +# See https://github.com/searxng/searxng/issues/3427 +die-on-term + # uwsgi serves the static files static-map = /static=/usr/local/searxng/searx/static -# expires set to one day -static-expires = /* 86400 static-gzip-all = True -offload-threads = 4 +offload-threads = %k -- 2.52.0 From 1448c4a333e511152c3db7289b8274dc1437f57a Mon Sep 17 00:00:00 2001 From: "Trez.One" Date: Mon, 22 Sep 2025 08:09:06 -0400 Subject: [PATCH 2/2] Removing false var. --- app-configs/rinoa/searxng/settings.yml.j2 | 78 ----------------------- 1 file changed, 78 deletions(-) diff --git a/app-configs/rinoa/searxng/settings.yml.j2 b/app-configs/rinoa/searxng/settings.yml.j2 index 61b42b8..a10e3b2 100644 --- a/app-configs/rinoa/searxng/settings.yml.j2 +++ b/app-configs/rinoa/searxng/settings.yml.j2 @@ -2746,84 +2746,6 @@ engines: website: https://minecraft.wiki/ wikidata_id: Q105533483 -# Doku engine lets you access to any Doku wiki instance: -# A public one or a privete/corporate one. -# - name: ubuntuwiki -# engine: doku -# shortcut: uw -# base_url: 'https://doc.ubuntu-fr.org' - -# Be careful when enabling this engine if you are -# running a public instance. Do not expose any sensitive -# information. You can restrict access by configuring a list -# of access tokens under tokens. -# - name: git grep -# engine: command -# command: ['git', 'grep', '{{QUERY}}'] -# shortcut: gg -# tokens: [] -# disabled: true -# delimiter: -# chars: ':' -# keys: ['filepath', 'code'] - -# Be careful when enabling this engine if you are -# running a public instance. Do not expose any sensitive -# information. You can restrict access by configuring a list -# of access tokens under tokens. -# - name: locate -# engine: command -# command: ['locate', '{{QUERY}}'] -# shortcut: loc -# tokens: [] -# disabled: true -# delimiter: -# chars: ' ' -# keys: ['line'] - -# Be careful when enabling this engine if you are -# running a public instance. Do not expose any sensitive -# information. You can restrict access by configuring a list -# of access tokens under tokens. -# - name: find -# engine: command -# command: ['find', '.', '-name', '{{QUERY}}'] -# query_type: path -# shortcut: fnd -# tokens: [] -# disabled: true -# delimiter: -# chars: ' ' -# keys: ['line'] - -# Be careful when enabling this engine if you are -# running a public instance. Do not expose any sensitive -# information. You can restrict access by configuring a list -# of access tokens under tokens. -# - name: pattern search in files -# engine: command -# command: ['fgrep', '{{QUERY}}'] -# shortcut: fgr -# tokens: [] -# disabled: true -# delimiter: -# chars: ' ' -# keys: ['line'] - -# Be careful when enabling this engine if you are -# running a public instance. Do not expose any sensitive -# information. You can restrict access by configuring a list -# of access tokens under tokens. -# - name: regex search in files -# engine: command -# command: ['grep', '{{QUERY}}'] -# shortcut: gr -# tokens: [] -# disabled: true -# delimiter: -# chars: ' ' -# keys: ['line'] - doi_resolvers: oadoi.org: 'https://oadoi.org/' doi.org: 'https://doi.org/' -- 2.52.0