diff --git a/apps/searxng/app/release.yaml b/apps/searxng/app/release.yaml index 05198a4..2702ef3 100644 --- a/apps/searxng/app/release.yaml +++ b/apps/searxng/app/release.yaml @@ -44,7 +44,7 @@ spec: memory: 128Mi searxng: config: - use_default_settings: false + use_default_settings: true general: # Debug mode, only for development. Is overwritten by ${SEARXNG_DEBUG} debug: false @@ -60,2003 +60,2003 @@ spec: # record stats enable_metrics: true - brand: - new_issue_url: https://github.com/searxng/searxng/issues/new - docs_url: https://docs.searxng.org/ - public_instances: https://searx.space - wiki_url: https://github.com/searxng/searxng/wiki - issue_url: https://github.com/searxng/searxng/issues - - search: - # Filter results. 0: None, 1: Moderate, 2: Strict - safe_search: 0 - # Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "yandex", - # "seznam", "startpage", "swisscows", "qwant", "wikipedia" - leave blank to turn it off - # by default. - autocomplete: "" - # minimun characters to type before autocompleter starts - autocomplete_min: 4 - # Default search language - leave blank to detect from browser information or - # use codes from 'languages.py' - default_lang: "auto" - # Available languages - # languages: - # - all - # - en - # - en-US - # - de - # - it-IT - # - fr - # - fr-BE - # ban time in seconds after engine errors - ban_time_on_fail: 5 - # max ban time in seconds after engine errors - max_ban_time_on_fail: 120 - suspended_times: - # Engine suspension time after error (in seconds; set to 0 to disable) - # For error "Access denied" and "HTTP error [402, 403]" - SearxEngineAccessDenied: 86400 - # For error "CAPTCHA" - SearxEngineCaptcha: 86400 - # For error "Too many request" and "HTTP error 429" - SearxEngineTooManyRequests: 3600 - # Cloudflare CAPTCHA - cf_SearxEngineCaptcha: 1296000 - cf_SearxEngineAccessDenied: 86400 - # ReCAPTCHA - recaptcha_SearxEngineCaptcha: 604800 - - # remove format to deny access, use lower case. - # formats: [html, csv, json, rss] - formats: - - html - - json - - 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} - port: 80 - 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 - - # If your instance owns a /etc/searxng/settings.yml file, then set the following - # values there. - - secret_key: "5adbd8a47c2523a1d3b2db02197bd8ac222b36827e1b89d9315be262082bf258" # Is overwritten by ${SEARXNG_SECRET} - # Proxying image results through searx - image_proxy: false - # 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 - 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 - - 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 - # it decreases the privacy, since the browser can records the page titles. - query_in_title: false - # infinite_scroll: When true, automatically loads the next page when scrolling to bottom of the current page. - infinite_scroll: false - # ui theme - default_theme: simple - # center the results ? - center_alignment: false - # URL prefix of the internet archive, don't forgett trailing slash (if needed). - # cache_url: "https://webcache.googleusercontent.com/search?q=cache:" - # Default interface locale - leave blank to detect from browser information or - # use codes from the 'locales' config section - default_locale: "" - # Open result links in a new tab by default - # results_on_new_tab: false - theme_args: - # style of simple theme: auto, light, dark - simple_style: auto - - # 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". - # - # preferences: - # lock: - # - language - # - autocomplete - # - method - # - 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: - # default timeout in seconds, can be override by engine - 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 - # to the administrator - useragent_suffix: "" - # The maximum number of concurrent connections that may be established. - pool_connections: 100 - # Allow the connection pool to maintain keep-alive connections below this - # point. - pool_maxsize: 20 - # See https://www.python-httpx.org/http2/ - enable_http2: true - # uncomment below section if you want to use a custom server certificate - # see https://www.python-httpx.org/advanced/#changing-the-verification-defaults - # and https://www.python-httpx.org/compatibility/#ssl-configuration - # verify: ~/.mitmproxy/mitmproxy-ca-cert.cer - # - # uncomment below section if you want to use a proxyq see: SOCKS proxies - # https://2.python-requests.org/en/latest/user/advanced/#proxies - # are also supported: see - # https://2.python-requests.org/en/latest/user/advanced/#socks - # - # proxies: - # all://: - # - http://proxy1:8080 - # - http://proxy2:8080 - # - # using_tor_proxy: true - # - # Extra seconds to add in order to account for the time taken by the proxy - # - # extra_proxy_timeout: 10.0 - # - # uncomment below section only if you have more than one network interface - # which can be the source of outgoing search requests - # - # source_ips: - # - 1.1.1.1 - # - 1.1.1.2 - # - fe80::/126 - - # External plugin configuration, for more details see - # https://docs.searxng.org/dev/plugins.html - # - # plugins: - # - plugin1 - # - plugin2 - # - ... - - # Comment or un-comment plugin to activate / deactivate by default. - # - # enabled_plugins: - # # these plugins are enabled if nothing is configured .. - # - 'Hash plugin' - # - 'Search on category select' - # - 'Self Information' - # - 'Tracker URL remover' - # - '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' - # - 'Vim-like hotkeys' - # - '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' - - # Configuration of the "Hostname replace" plugin: - # - hostname_replace: - # '(.*\.)?youtube\.com$': 'invidious.example.com' - # '(.*\.)?youtu\.be$': 'invidious.example.com' - # '(.*\.)?youtube-noocookie\.com$': 'yotter.example.com' - # '(.*\.)?reddit\.com$': 'teddit.net' - # '(.*\.)?redd\.it$': 'teddit.net' - '(www\.)?twitter\.com$': 'nitter.sethforprivacy.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 - # scheduling: interval or int - - # to activate the scheduler: - # * uncomment "scheduling" section - # * add "cache2 = name=searxngcache,items=2000,blocks=2000,blocksize=4096,bitmap=1" - # to your uwsgi.ini - - # scheduling: - # start_after: [300, 1800] # delay to start the first run of the checker - # every: [86400, 90000] # how often the checker runs - - # additional tests: only for the YAML anchors (see the engines section) - # - additional_tests: - rosebud: &test_rosebud - matrix: - query: rosebud - lang: en - result_container: - - not_empty - - ['one_title_contains', 'citizen kane'] - test: - - unique_results - - android: &test_android - matrix: - query: ['android'] - lang: ['en', 'de', 'fr', 'zh-CN'] - result_container: - - not_empty - - ['one_title_contains', 'google'] - test: - - unique_results - - # tests: only for the YAML anchors (see the engines section) - tests: - infobox: &tests_infobox - infobox: - matrix: - query: ["linux", "new york", "bbc"] - result_container: - - has_infobox - - categories_as_tabs: - general: - images: - videos: - news: - map: - music: - it: - science: - files: - social media: - - engines: - - name: 9gag - engine: 9gag - shortcut: 9g - disabled: true - categories: boards - - - name: annas archive - engine: annas_archive - disabled: true - shortcut: aa - - # - name: annas articles - # engine: annas_archive - # shortcut: aaa - # # https://docs.searxng.org/src/searx.engines.annas_archive.html - # aa_content: 'journal_article' # book_any .. magazine, standards_document - # aa_ext: 'pdf' # pdf, epub, .. - # aa_sort: 'newest' # newest, oldest, largest, smallest - - - name: apk mirror - engine: apkmirror - timeout: 4.0 - shortcut: apkm - disabled: true - - - name: apple app store - engine: apple_app_store - shortcut: aps - disabled: true - - # Requires Tor - - name: ahmia - engine: ahmia - categories: onions - enable_http: true - shortcut: ah - - - name: arch linux wiki - engine: archlinux - shortcut: al - - - name: archive is - engine: xpath - search_url: https://archive.is/search/?q={query} - url_xpath: (//div[@class="TEXT-BLOCK"]/a)/@href - title_xpath: (//div[@class="TEXT-BLOCK"]/a) - content_xpath: //div[@class="TEXT-BLOCK"]/ul/li - categories: general - timeout: 7.0 - disabled: true - shortcut: ai - soft_max_redirects: 1 - about: - website: https://archive.is/ - wikidata_id: Q13515725 - official_api_documentation: https://mementoweb.org/depot/native/archiveis/ - use_official_api: false - require_api_key: false - results: HTML - - - name: artic - engine: artic - shortcut: arc - timeout: 4.0 - - - name: arxiv - engine: arxiv - shortcut: arx - timeout: 4.0 - - # tmp suspended: dh key too small - # - name: base - # engine: base - # shortcut: bs - - - name: bandcamp - engine: bandcamp - shortcut: bc - categories: music - - - name: wikipedia - engine: wikipedia - shortcut: wp - base_url: 'https://{language}.wikipedia.org/' - - - name: bing - engine: bing - shortcut: bi - disabled: true - - - name: bing images - engine: bing_images - shortcut: bii - - - name: bing news - engine: bing_news - shortcut: bin - - - name: bing videos - engine: bing_videos - shortcut: biv - - - name: bitbucket - engine: xpath - paging: true - search_url: https://bitbucket.org/repo/all/{pageno}?name={query} - url_xpath: //article[@class="repo-summary"]//a[@class="repo-link"]/@href - title_xpath: //article[@class="repo-summary"]//a[@class="repo-link"] - content_xpath: //article[@class="repo-summary"]/p - categories: [it, repos] - timeout: 4.0 - disabled: true - shortcut: bb - about: - website: https://bitbucket.org/ - wikidata_id: Q2493781 - official_api_documentation: https://developer.atlassian.com/bitbucket - use_official_api: false - require_api_key: false - results: HTML - - - name: btdigg - engine: btdigg - shortcut: bt - - - 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: core.ac.uk - # engine: core - # categories: science - # shortcut: cor - # # get your API key from: https://core.ac.uk/api-keys/register/ - # api_key: 'unset' - - - name: crossref - engine: crossref - shortcut: cr - timeout: 30 - disabled: true - - - name: crowdview - engine: json_engine - shortcut: cv - categories: general - paging: false - search_url: https://crowdview-next-js.onrender.com/api/search-v3?query={query} - results_query: results - url_query: link - title_query: title - content_query: snippet - disabled: true - about: - website: https://crowdview.ai/ - - - name: yep - engine: json_engine - shortcut: yep - categories: general - 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 - 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 - engine: deezer - shortcut: dz - disabled: true - - - name: deviantart - engine: deviantart - shortcut: da - timeout: 3.0 - - - name: ddg definitions - engine: duckduckgo_definitions - shortcut: ddd - weight: 2 - disabled: true - tests: *tests_infobox - - # cloudflare protected - # - name: digbt - # engine: digbt - # shortcut: dbt - # timeout: 6.0 - # disabled: true - - - name: docker hub - engine: docker_hub - shortcut: dh - categories: [it, packages] - - - name: erowid - engine: xpath - paging: true - first_page_num: 0 - page_size: 30 - search_url: https://www.erowid.org/search.php?q={query}&s={pageno} - url_xpath: //dl[@class="results-list"]/dt[@class="result-title"]/a/@href - title_xpath: //dl[@class="results-list"]/dt[@class="result-title"]/a/text() - content_xpath: //dl[@class="results-list"]/dd[@class="result-details"] - categories: [] - shortcut: ew - disabled: true - about: - website: https://www.erowid.org/ - wikidata_id: Q1430691 - official_api_documentation: - use_official_api: false - require_api_key: false - results: HTML - - # - name: elasticsearch - # shortcut: es - # engine: elasticsearch - # base_url: http://localhost:9200 - # username: elastic - # password: changeme - # index: my-index - # # 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 - # disabled: true - - - name: wikidata - engine: wikidata - shortcut: wd - timeout: 3.0 - weight: 2 - tests: *tests_infobox - - - name: duckduckgo - engine: duckduckgo - shortcut: ddg - - - name: duckduckgo weather - engine: duckduckgo_weather - shortcut: ddw - disabled: true - - - name: apple maps - engine: apple_maps - shortcut: apm - disabled: true - timeout: 5.0 - - - name: emojipedia - engine: emojipedia - timeout: 4.0 - shortcut: em - disabled: true - - - name: tineye - engine: tineye - shortcut: tin - timeout: 9.0 - disabled: true - - - name: etymonline - engine: xpath - paging: true - search_url: https://etymonline.com/search?page={pageno}&q={query} - url_xpath: //a[contains(@class, "word__name--")]/@href - title_xpath: //a[contains(@class, "word__name--")] - content_xpath: //section[contains(@class, "word__defination")] - first_page_num: 1 - shortcut: et - categories: [dictionaries] - disabled: false - about: - website: https://www.etymonline.com/ - wikidata_id: Q1188617 - official_api_documentation: - use_official_api: false - require_api_key: false - results: HTML - - # - name: ebay - # engine: ebay - # shortcut: eb - # base_url: 'https://www.ebay.com' - # disabled: true - # timeout: 5 - - - name: 1x - engine: www1x - shortcut: 1x - timeout: 3.0 - disabled: true - - - name: fdroid - engine: fdroid - shortcut: fd - disabled: true - - - name: flickr - categories: images - shortcut: fl - # You can use the engine using the official stable API, but you need an API - # key, see: https://www.flickr.com/services/apps/create/ - # engine: flickr - # api_key: 'apikey' # required! - # Or you can use the html non-stable engine, activated by default - engine: flickr_noapi - - - name: free software directory - engine: mediawiki - shortcut: fsd - categories: [it, software wikis] - base_url: https://directory.fsf.org/ - number_of_results: 5 - # what part of a page matches the query string: title, text, nearmatch - # * title - query matches title - # * text - query matches the text of page - # * nearmatch - nearmatch in title - search_type: title - timeout: 5.0 - disabled: true - about: - website: https://directory.fsf.org/ - wikidata_id: Q2470288 - - # - name: freesound - # engine: freesound - # shortcut: fnd - # disabled: true - # timeout: 15.0 - # API key required, see: https://freesound.org/docs/api/overview.html - # api_key: MyAPIkey - - - name: frinkiac - engine: frinkiac - shortcut: frk - disabled: true - - - name: genius - engine: genius - shortcut: gen - - - name: gentoo - engine: gentoo - shortcut: ge - timeout: 10.0 - - - 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] - shortcut: gl - timeout: 10.0 - disabled: true - about: - website: https://about.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: 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: 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] - 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: google - engine: google - weight: 2 - shortcut: go - # additional_tests: - # android: *test_android - - - name: google images - engine: google_images - shortcut: goi - # additional_tests: - # android: *test_android - # dali: - # matrix: - # query: ['Dali Christ'] - # lang: ['en', 'de', 'fr', 'zh-CN'] - # result_container: - # - ['one_title_contains', 'Salvador'] - - - name: google news - engine: google_news - shortcut: gon - # additional_tests: - # android: *test_android - - - name: google videos - engine: google_videos - shortcut: gov - # additional_tests: - # android: *test_android - - - name: google scholar - engine: google_scholar - shortcut: gos - - - name: google play apps - engine: google_play - categories: [files, apps] - shortcut: gpa - play_categ: apps - disabled: true - - - name: google play movies - engine: google_play - categories: videos - shortcut: gpm - play_categ: movies - 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 - search_url: https://habrahabr.ru/search/page{pageno}/?q={query} - url_xpath: //article[contains(@class, "post")]//a[@class="post__title_link"]/@href - title_xpath: //article[contains(@class, "post")]//a[@class="post__title_link"] - content_xpath: //article[contains(@class, "post")]//div[contains(@class, "post__text")] - categories: it - timeout: 4.0 - disabled: true - shortcut: habr - about: - website: https://habr.com/ - wikidata_id: Q4494434 - official_api_documentation: https://habr.com/en/docs/help/api/ - use_official_api: false - require_api_key: false - results: HTML - - - name: hoogle - engine: xpath - paging: true - search_url: https://hoogle.haskell.org/?hoogle={query}&start={pageno} - results_xpath: '//div[@class="result"]' - title_xpath: './/div[@class="ans"]//a' - url_xpath: './/div[@class="ans"]//a/@href' - content_xpath: './/div[@class="from"]' - page_size: 20 - categories: [it, packages] - shortcut: ho - about: - website: https://hoogle.haskell.org/ - wikidata_id: Q34010 - official_api_documentation: https://hackage.haskell.org/api - use_official_api: false - require_api_key: false - results: JSON - - - name: imdb - engine: imdb - shortcut: imdb - timeout: 6.0 - disabled: true - - - name: ina - engine: ina - shortcut: in - 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.snopyta.org - - https://vid.puffyan.us - # - https://invidious.kavin.rocks # Error 1020 // Access denied by Cloudflare - - https://invidio.xamh.de - - https://inv.riverside.rocks - shortcut: iv - timeout: 3.0 - disabled: true - - - name: jisho - engine: jisho - shortcut: js - timeout: 3.0 - disabled: true - - - name: kickass - engine: kickass - shortcut: kc - timeout: 4.0 - disabled: true - - - name: library genesis - engine: xpath - search_url: https://libgen.fun/search.php?req={query} - url_xpath: //a[contains(@href,"get.php?md5")]/@href - title_xpath: //a[contains(@href,"book/")]/text()[1] - content_xpath: //td/a[1][contains(@href,"=author")]/text() - categories: files - timeout: 7.0 - disabled: true - shortcut: lg - about: - website: https://libgen.fun/ - wikidata_id: Q22017206 - official_api_documentation: - use_official_api: false - require_api_key: false - results: HTML - - - name: z-library - engine: zlibrary - shortcut: zlib - categories: files - timeout: 7.0 - - - name: library of congress - engine: loc - shortcut: loc - categories: images - - - name: lingva - engine: lingva - shortcut: lv - # set lingva instance in url, by default it will use the official instance - # url: https://lingva.ml - - - name: lobste.rs - engine: xpath - search_url: https://lobste.rs/search?utf8=%E2%9C%93&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"] - content_xpath: .//a[@class="domain"] - categories: it - shortcut: lo - timeout: 5.0 - disabled: true - about: - website: https://lobste.rs/ - wikidata_id: Q60762874 - official_api_documentation: - use_official_api: false - require_api_key: false - results: HTML - - - name: azlyrics - shortcut: lyrics - engine: xpath - timeout: 4.0 - 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 - - - name: metacpan - engine: metacpan - shortcut: cpan - disabled: true - number_of_results: 20 - - # - name: meilisearch - # engine: meilisearch - # shortcut: mes - # enable_http: true - # base_url: http://localhost:7700 - # index: my-index - - - name: mixcloud - engine: mixcloud - shortcut: mc - - # MongoDB engine - # Required dependency: pymongo - # - name: mymongo - # engine: mongodb - # shortcut: md - # exact_match_only: false - # host: '127.0.0.1' - # port: 27017 - # enable_http: true - # results_per_page: 20 - # database: 'business' - # collection: 'reviews' # name of the db collection - # key: 'name' # key in the collection to search for - - - 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] - disabled: true - timeout: 5.0 - 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 - - - name: nyaa - engine: nyaa - shortcut: nt - disabled: true - - - name: mankier - engine: json_engine - search_url: https://www.mankier.com/api/v2/mans/?q={query} - results_query: results - url_query: url - title_query: name - content_query: description - categories: it - shortcut: man - about: - website: https://www.mankier.com/ - official_api_documentation: https://www.mankier.com/api - use_official_api: true - require_api_key: false - results: JSON - - - name: openairedatasets - engine: json_engine - paging: true - search_url: https://api.openaire.eu/search/datasets?format=json&page={pageno}&size=10&title={query} - results_query: response/results/result - url_query: metadata/oaf:entity/oaf:result/children/instance/webresource/url/$ - title_query: metadata/oaf:entity/oaf:result/title/$ - content_query: metadata/oaf:entity/oaf:result/description/$ - content_html_to_text: true - categories: "science" - shortcut: oad - timeout: 5.0 - about: - website: https://www.openaire.eu/ - wikidata_id: Q25106053 - official_api_documentation: https://api.openaire.eu/ - use_official_api: false - require_api_key: false - results: JSON - - - name: openairepublications - engine: json_engine - paging: true - search_url: https://api.openaire.eu/search/publications?format=json&page={pageno}&size=10&title={query} - results_query: response/results/result - url_query: metadata/oaf:entity/oaf:result/children/instance/webresource/url/$ - title_query: metadata/oaf:entity/oaf:result/title/$ - content_query: metadata/oaf:entity/oaf:result/description/$ - content_html_to_text: true - categories: science - shortcut: oap - timeout: 5.0 - about: - website: https://www.openaire.eu/ - wikidata_id: Q25106053 - official_api_documentation: https://api.openaire.eu/ - use_official_api: false - require_api_key: false - results: JSON - - # - name: opensemanticsearch - # engine: opensemantic - # shortcut: oss - # base_url: 'http://localhost:8983/solr/opensemanticsearch/' - - - name: openstreetmap - engine: openstreetmap - shortcut: osm - - - name: openrepos - engine: xpath - paging: true - search_url: https://openrepos.net/search/node/{query}?page={pageno} - url_xpath: //li[@class="search-result"]//h3[@class="title"]/a/@href - title_xpath: //li[@class="search-result"]//h3[@class="title"]/a - content_xpath: //li[@class="search-result"]//div[@class="search-snippet-info"]//p[@class="search-snippet"] - categories: files - timeout: 4.0 - disabled: true - shortcut: or - about: - website: https://openrepos.net/ - wikidata_id: - official_api_documentation: - use_official_api: false - require_api_key: false - results: HTML - - - name: packagist - engine: json_engine - paging: true - search_url: https://packagist.org/search.json?q={query}&page={pageno} - results_query: results - url_query: url - title_query: name - content_query: description - categories: [it, packages] - disabled: true - timeout: 5.0 - shortcut: pack - about: - website: https://packagist.org - wikidata_id: Q108311377 - official_api_documentation: https://packagist.org/apidoc - use_official_api: true - require_api_key: false - results: JSON - - - name: pdbe - engine: pdbe - shortcut: pdb - # Hide obsolete PDB entries. Default is not to hide obsolete structures - # hide_obsolete: false - - - name: photon - engine: photon - shortcut: ph - - - name: piratebay - engine: piratebay - shortcut: tpb - # You may need to change this URL to a proxy if piratebay is blocked in your - # country - url: https://thepiratebay.org/ - timeout: 3.0 - - # Required dependency: psychopg2 - # - name: postgresql - # engine: postgresql - # database: postgres - # username: postgres - # password: postgres - # limit: 10 - # query_str: 'SELECT * from my_table WHERE my_column = %(query)s' - # shortcut : psql - - - name: pub.dev - engine: xpath - shortcut: pd - search_url: https://pub.dev/packages?q={query}&page={pageno} - paging: true - results_xpath: /html/body/main/div/div[@class="search-results"]/div[@class="packages"]/div - url_xpath: ./div/h3/a/@href - title_xpath: ./div/h3/a - content_xpath: ./p[@class="packages-description"] - categories: [packages, it] - timeout: 3.0 - disabled: true - first_page_num: 1 - about: - website: https://pub.dev/ - official_api_documentation: https://pub.dev/help/api - use_official_api: false - require_api_key: false - results: HTML - - - 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 - - - name: qwant - qwant_categ: web - engine: qwant - shortcut: qw - categories: [general, web] - disabled: false - additional_tests: - rosebud: *test_rosebud - - - name: qwant news - qwant_categ: news - engine: qwant - shortcut: qwn - categories: news - disabled: false - network: qwant - - - name: qwant images - qwant_categ: images - engine: qwant - shortcut: qwi - categories: [images, web] - disabled: false - network: qwant - - - name: qwant videos - qwant_categ: videos - engine: qwant - shortcut: qwv - categories: [videos, web] - disabled: false - network: qwant - - # - name: library - # engine: recoll - # shortcut: lib - # base_url: 'https://recoll.example.org/' - # search_dir: '' - # mount_prefix: /export - # dl_prefix: 'https://download.example.org' - # timeout: 30.0 - # categories: files - # disabled: true - - # - name: recoll library reference - # engine: recoll - # base_url: 'https://recoll.example.org/' - # search_dir: reference - # mount_prefix: /export - # dl_prefix: 'https://download.example.org' - # shortcut: libr - # timeout: 30.0 - # categories: files - # disabled: true - - - name: reddit - engine: reddit - shortcut: re - page_size: 25 - - # Required dependency: redis - # - name: myredis - # shortcut : rds - # engine: redis_server - # exact_match_only: false - # host: '127.0.0.1' - # port: 6379 - # enable_http: true - # password: '' - # db: 0 - - # tmp suspended: bad certificate - # - name: scanr structures - # shortcut: scs - # engine: scanr_structures - # disabled: true - - - name: sepiasearch - engine: sepiasearch - shortcut: sep - - - name: stackoverflow - engine: stackexchange - shortcut: st - api_site: 'stackoverflow' - categories: [it, q&a] - - - name: askubuntu - engine: stackexchange - shortcut: ubuntu - api_site: 'askubuntu' - categories: [it, q&a] - - - name: superuser - engine: stackexchange - shortcut: su - api_site: 'superuser' - categories: [it, q&a] - - - name: searchcode code - engine: searchcode_code - shortcut: scc - disabled: true - - - name: framalibre - engine: framalibre - shortcut: frl - disabled: true - - # - name: searx - # engine: searx_engine - # shortcut: se - # instance_urls : - # - http://127.0.0.1:8888/ - # - ... - # disabled: true - - - name: semantic scholar - engine: semantic_scholar - disabled: true - shortcut: se - - # Spotify needs API credentials - # - name: spotify - # engine: spotify - # shortcut: stf - # api_client_id: ******* - # api_client_secret: ******* - - # - name: solr - # engine: solr - # shortcut: slr - # base_url: http://localhost:8983 - # collection: collection_name - # sort: '' # sorting: asc or desc - # field_list: '' # comma separated list of field names to display on the UI - # default_fields: '' # default field to query - # 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: startpage - engine: startpage - shortcut: sp - timeout: 6.0 - disabled: true - additional_tests: - rosebud: *test_rosebud - - - name: tokyotoshokan - engine: tokyotoshokan - shortcut: tt - timeout: 6.0 - disabled: true - - - name: solidtorrents - engine: solidtorrents - shortcut: solid - timeout: 4.0 - disabled: false - base_url: - - https://solidtorrents.net - - https://solidtorrents.eu - - https://solidtorrents.to - - https://bitsearch.to - - # 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" - # - # - name: demo - # engine: sqlite - # shortcut: demo - # categories: general - # result_template: default.html - # database: searx/data/filmliste-v2.db - # 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 - # FROM film - # WHERE title LIKE :wildcard OR description LIKE :wildcard - # ORDER BY duration DESC - # disabled: false - - # Requires Tor - - name: torch - engine: xpath - paging: true - search_url: - http://xmh57jrknzkhv6y3ls3ubitzfqnkrwxhopf5aygthi7d6rplyvk3noyd.onion/cgi-bin/omega/omega?P={query}&DEFAULTOP=and - results_xpath: //table//tr - url_xpath: ./td[2]/a - title_xpath: ./td[2]/b - content_xpath: ./td[2]/small - categories: onions - enable_http: true - shortcut: tch - - # 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: - # https://docs.searxng.org/src/searx.engines.torznab.html - # - # - name: Torznab EZTV - # engine: torznab - # shortcut: eztv - # base_url: http://localhost:9117/api/v2.0/indexers/eztv/results/torznab - # enable_http: true # if using localhost - # api_key: xxxxxxxxxxxxxxx - # show_magnet_links: true - # show_torrent_files: false - # # https://github.com/Jackett/Jackett/wiki/Jackett-Categories - # torznab_categories: # optional - # - 2000 - # - 5000 - - # maybe in a fun category - # - name: uncyclopedia - # engine: mediawiki - # shortcut: unc - # base_url: https://uncyclopedia.wikia.com/ - # number_of_results: 5 - - # tmp suspended - too slow, too many errors - # - name: urbandictionary - # engine : xpath - # search_url : https://www.urbandictionary.com/define.php?term={query} - # url_xpath : //*[@class="word"]/@href - # title_xpath : //*[@class="def-header"] - # content_xpath: //*[@class="meaning"] - # shortcut: ud - - - name: unsplash - engine: unsplash - shortcut: us - - - name: yahoo - engine: yahoo - shortcut: yh - disabled: true - - - name: yahoo news - engine: yahoo_news - shortcut: yhn - - - name: youtube - shortcut: yt - # You can use the engine using the official stable API, but you need an API - # key See: https://console.developers.google.com/project - # - # engine: youtube_api - # api_key: 'apikey' # required! - # - # Or you can use the html non-stable engine, activated by default - engine: youtube_noapi - - - name: dailymotion - engine: dailymotion - shortcut: dm - - - name: vimeo - engine: vimeo - shortcut: vm - - - name: wiby - engine: json_engine - paging: true - search_url: https://wiby.me/json/?q={query}&p={pageno} - url_query: URL - title_query: Title - content_query: Snippet - categories: [general, web] - shortcut: wib - disabled: true - 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 - shortcut: wb - categories: general - base_url: "https://{language}.wikibooks.org/" - number_of_results: 5 - search_type: text - disabled: true - about: - website: https://www.wikibooks.org/ - wikidata_id: Q367 - - - name: wikinews - engine: mediawiki - shortcut: wn - categories: news - base_url: "https://{language}.wikinews.org/" - number_of_results: 5 - search_type: text - disabled: true - about: - website: https://www.wikinews.org/ - wikidata_id: Q964 - - - name: wikiquote - engine: mediawiki - shortcut: wq - categories: general - base_url: "https://{language}.wikiquote.org/" - number_of_results: 5 - search_type: text - disabled: true - additional_tests: - rosebud: *test_rosebud - about: - website: https://www.wikiquote.org/ - wikidata_id: Q369 - - - name: wikisource - engine: mediawiki - shortcut: ws - categories: general - base_url: "https://{language}.wikisource.org/" - number_of_results: 5 - search_type: text - disabled: true - about: - website: https://www.wikisource.org/ - wikidata_id: Q263 - - - name: wiktionary - engine: mediawiki - shortcut: wt - categories: [dictionaries] - base_url: "https://{language}.wiktionary.org/" - number_of_results: 5 - search_type: text - disabled: false - about: - website: https://www.wiktionary.org/ - wikidata_id: Q151 - - - name: wikiversity - engine: mediawiki - shortcut: wv - categories: general - base_url: "https://{language}.wikiversity.org/" - number_of_results: 5 - search_type: text - disabled: true - about: - website: https://www.wikiversity.org/ - wikidata_id: Q370 - - - name: wikivoyage - engine: mediawiki - shortcut: wy - categories: general - base_url: "https://{language}.wikivoyage.org/" - number_of_results: 5 - search_type: text - disabled: true - about: - website: https://www.wikivoyage.org/ - wikidata_id: Q373 - - - name: wolframalpha - shortcut: wa - # You can use the engine using the official stable API, but you need an API - # key. See: https://products.wolframalpha.com/api/ - # - # engine: wolframalpha_api - # api_key: '' - # - # Or you can use the html non-stable engine, activated by default - engine: wolframalpha_noapi - timeout: 6.0 - categories: [] - - - name: dictzone - engine: dictzone - shortcut: dc - - - name: mymemory translated - engine: translated - shortcut: tl - timeout: 5.0 - disabled: false - # You can use without an API key, but you are limited to 1000 words/day - # See: https://mymemory.translated.net/doc/usagelimits.php - # api_key: '' - - # Required dependency: mysql-connector-python - # - name: mysql - # engine: mysql_server - # database: mydatabase - # username: user - # password: pass - # limit: 10 - # query_str: 'SELECT * from mytable WHERE fieldname=%(query)s' - # shortcut: mysql - - - name: 1337x - engine: 1337x - shortcut: 1337x - disabled: true - - - name: duden - engine: duden - shortcut: du - disabled: true - - - name: seznam - shortcut: szn - engine: seznam - disabled: true - - # - name: deepl - # engine: deepl - # shortcut: dpl - # # You can use the engine using the official stable API, but you need an API key - # # See: https://www.deepl.com/pro-api?cta=header-pro-api - # api_key: '' # required! - # timeout: 5.0 - # disabled: true - - - name: mojeek - shortcut: mjk - engine: xpath - paging: true - 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: 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 - 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 - engine: xpath - paging: true - search_url: https://rubygems.org/search?page={pageno}&query={query} - results_xpath: /html/body/main/div/a[@class="gems__gem"] - url_xpath: ./@href - title_xpath: ./span/h2 - content_xpath: ./span/p - suggestion_xpath: /html/body/main/div/div[@class="search__suggestions"]/p/a - first_page_num: 1 - categories: [it, packages] - disabled: true - about: - website: https://rubygems.org/ - wikidata_id: Q1853420 - official_api_documentation: https://guides.rubygems.org/rubygems-org-api/ - use_official_api: false - require_api_key: false - results: HTML - - - name: peertube - engine: peertube - shortcut: ptb - paging: true - # alternatives see: https://instances.joinpeertube.org/instances - # base_url: https://tube.4aem.com - categories: videos - disabled: true - timeout: 6.0 - - - name: mediathekviewweb - engine: mediathekviewweb - shortcut: mvw - disabled: true - - # - name: yacy - # engine: yacy - # shortcut: ya - # base_url: http://localhost:8090 - # required if you aren't using HTTPS for your local yacy instance' - # enable_http: true - # number_of_results: 5 - # timeout: 3.0 - - - name: rumble - engine: rumble - shortcut: ru - base_url: https://rumble.com/ - paging: true - categories: videos - disabled: true - - - name: wordnik - engine: wordnik - shortcut: def - base_url: https://www.wordnik.com/ - categories: [dictionaries] - timeout: 5.0 - disabled: false - - - name: woxikon.de synonyme - engine: xpath - shortcut: woxi - categories: [dictionaries] - timeout: 5.0 - disabled: true - search_url: https://synonyme.woxikon.de/synonyme/{query}.php - url_xpath: //div[@class="upper-synonyms"]/a/@href - content_xpath: //div[@class="synonyms-list-group"] - title_xpath: //div[@class="upper-synonyms"]/a - no_result_for_http_status: [404] - about: - website: https://www.woxikon.de/ - wikidata_id: # No Wikidata ID - use_official_api: false - require_api_key: false - results: HTML - language: de - - - name: sjp.pwn - engine: sjp - shortcut: sjp - base_url: https://sjp.pwn.pl/ - timeout: 5.0 - disabled: true - - # wikimini: online encyclopedia for children - # The fulltext and title parameter is necessary for Wikimini because - # sometimes it will not show the results and redirect instead - - name: wikimini - engine: xpath - shortcut: wkmn - search_url: https://fr.wikimini.org/w/index.php?search={query}&title=Sp%C3%A9cial%3ASearch&fulltext=Search - url_xpath: //li/div[@class="mw-search-result-heading"]/a/@href - title_xpath: //li//div[@class="mw-search-result-heading"]/a - content_xpath: //li/div[@class="searchresult"] - categories: general - disabled: true - about: - website: https://wikimini.org/ - wikidata_id: Q3568032 - use_official_api: false - require_api_key: false - results: HTML - language: fr - - - name: wttr.in - engine: wttr - shortcut: wttr - timeout: 9.0 - - - name: brave - shortcut: brave - engine: xpath - paging: true - time_range_support: true - first_page_num: 0 - time_range_url: "&tf={time_range_val}" - search_url: https://search.brave.com/search?q={query}&offset={pageno}&spellcheck=1{time_range} - url_xpath: //a[@class="result-header"]/@href - title_xpath: //span[@class="snippet-title"] - content_xpath: //p[1][@class="snippet-description"] - suggestion_xpath: //div[@class="text-gray h6"]/a - time_range_map: - day: 'pd' - week: 'pw' - month: 'pm' - year: 'py' - categories: [general, web] - disabled: true - headers: - Accept-Encoding: gzip, deflate - about: - website: https://brave.com/search/ - wikidata_id: Q107355971 - use_official_api: false - require_api_key: false - results: HTML - - - 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] - disabled: true - about: - website: https://lib.rs - wikidata_id: Q113486010 - use_official_api: false - require_api_key: false - results: HTML - - - name: sourcehut - shortcut: srht - engine: xpath - paging: true - search_url: https://sr.ht/projects?page={pageno}&search={query} - results_xpath: (//div[@class="event-list"])[1]/div[@class="event"] - url_xpath: ./h4/a[2]/@href - title_xpath: ./h4/a[2] - content_xpath: ./p - first_page_num: 1 - categories: [it, repos] - disabled: true - about: - website: https://sr.ht - wikidata_id: Q78514485 - official_api_documentation: https://man.sr.ht/ - use_official_api: false - require_api_key: false - results: HTML - - - name: goo - shortcut: goo - engine: xpath - paging: true - search_url: https://search.goo.ne.jp/web.jsp?MT={query}&FR={pageno}0 - url_xpath: //div[@class="result"]/p[@class='title fsL1']/a/@href - title_xpath: //div[@class="result"]/p[@class='title fsL1']/a - content_xpath: //p[contains(@class,'url fsM')]/following-sibling::p - first_page_num: 0 - categories: [general, web] - disabled: true - timeout: 4.0 - about: - website: https://search.goo.ne.jp - wikidata_id: Q249044 - use_official_api: false - require_api_key: false - results: HTML - language: ja - - ### Custom Engines ### - - - name: safebooru - shortcut: sboo - engine: xpath - categories: [boards] - paging: true - page_size: 40 - search_url: https://safebooru.org/index.php?page=post&s=list&tags={query}&pid={pageno} - results_xpath: //div/span[@class='thumb']/a - url_xpath: ./@href - title_xpath: ./@id - content_xpath: ./img/@title - thumbnail_xpath: ./img/@src - disabled: true - timeout: 5.0 - tokens: ['12boards24access!'] - about: - website: https://safebooru.org - use_official_api: false - results: HTML - language: en - - - name: danbooru - shortcut: dboo - engine: xpath - categories: [boards] - paging: true - search_url: https://danbooru.donmai.us/posts?tags={query}&page={pageno} - results_xpath: //div/article - url_xpath: ./div/a/@href - title_xpath: ./@id - content_xpath: ./div/a/picture/img/@title - thumbnail_xpath: .//img/@src - disabled: true - timeout: 5.0 - tokens: ['12boards24access!'] - about: - website: https://danbooru.donmai.us - use_official_api: false - results: HTML - language: en - - # 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/' - 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/' - - default_doi_resolver: 'oadoi.org' + # brand: + # new_issue_url: https://github.com/searxng/searxng/issues/new + # docs_url: https://docs.searxng.org/ + # public_instances: https://searx.space + # wiki_url: https://github.com/searxng/searxng/wiki + # issue_url: https://github.com/searxng/searxng/issues + + # search: + # # Filter results. 0: None, 1: Moderate, 2: Strict + # safe_search: 0 + # # Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "yandex", + # # "seznam", "startpage", "swisscows", "qwant", "wikipedia" - leave blank to turn it off + # # by default. + # autocomplete: "" + # # minimun characters to type before autocompleter starts + # autocomplete_min: 4 + # # Default search language - leave blank to detect from browser information or + # # use codes from 'languages.py' + # default_lang: "auto" + # # Available languages + # # languages: + # # - all + # # - en + # # - en-US + # # - de + # # - it-IT + # # - fr + # # - fr-BE + # # ban time in seconds after engine errors + # ban_time_on_fail: 5 + # # max ban time in seconds after engine errors + # max_ban_time_on_fail: 120 + # suspended_times: + # # Engine suspension time after error (in seconds; set to 0 to disable) + # # For error "Access denied" and "HTTP error [402, 403]" + # SearxEngineAccessDenied: 86400 + # # For error "CAPTCHA" + # SearxEngineCaptcha: 86400 + # # For error "Too many request" and "HTTP error 429" + # SearxEngineTooManyRequests: 3600 + # # Cloudflare CAPTCHA + # cf_SearxEngineCaptcha: 1296000 + # cf_SearxEngineAccessDenied: 86400 + # # ReCAPTCHA + # recaptcha_SearxEngineCaptcha: 604800 + + # # remove format to deny access, use lower case. + # # formats: [html, csv, json, rss] + # formats: + # - html + # - json + + # 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} + # port: 80 + # 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 + + # # If your instance owns a /etc/searxng/settings.yml file, then set the following + # # values there. + + # secret_key: "5adbd8a47c2523a1d3b2db02197bd8ac222b36827e1b89d9315be262082bf258" # Is overwritten by ${SEARXNG_SECRET} + # # Proxying image results through searx + # image_proxy: false + # # 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 + # 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 + + # 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 + # # it decreases the privacy, since the browser can records the page titles. + # query_in_title: false + # # infinite_scroll: When true, automatically loads the next page when scrolling to bottom of the current page. + # infinite_scroll: false + # # ui theme + # default_theme: simple + # # center the results ? + # center_alignment: false + # # URL prefix of the internet archive, don't forgett trailing slash (if needed). + # # cache_url: "https://webcache.googleusercontent.com/search?q=cache:" + # # Default interface locale - leave blank to detect from browser information or + # # use codes from the 'locales' config section + # default_locale: "" + # # Open result links in a new tab by default + # # results_on_new_tab: false + # theme_args: + # # style of simple theme: auto, light, dark + # simple_style: auto + + # # 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". + # # + # # preferences: + # # lock: + # # - language + # # - autocomplete + # # - method + # # - 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: + # # default timeout in seconds, can be override by engine + # 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 + # # to the administrator + # useragent_suffix: "" + # # The maximum number of concurrent connections that may be established. + # pool_connections: 100 + # # Allow the connection pool to maintain keep-alive connections below this + # # point. + # pool_maxsize: 20 + # # See https://www.python-httpx.org/http2/ + # enable_http2: true + # # uncomment below section if you want to use a custom server certificate + # # see https://www.python-httpx.org/advanced/#changing-the-verification-defaults + # # and https://www.python-httpx.org/compatibility/#ssl-configuration + # # verify: ~/.mitmproxy/mitmproxy-ca-cert.cer + # # + # # uncomment below section if you want to use a proxyq see: SOCKS proxies + # # https://2.python-requests.org/en/latest/user/advanced/#proxies + # # are also supported: see + # # https://2.python-requests.org/en/latest/user/advanced/#socks + # # + # # proxies: + # # all://: + # # - http://proxy1:8080 + # # - http://proxy2:8080 + # # + # # using_tor_proxy: true + # # + # # Extra seconds to add in order to account for the time taken by the proxy + # # + # # extra_proxy_timeout: 10.0 + # # + # # uncomment below section only if you have more than one network interface + # # which can be the source of outgoing search requests + # # + # # source_ips: + # # - 1.1.1.1 + # # - 1.1.1.2 + # # - fe80::/126 + + # # External plugin configuration, for more details see + # # https://docs.searxng.org/dev/plugins.html + # # + # # plugins: + # # - plugin1 + # # - plugin2 + # # - ... + + # # Comment or un-comment plugin to activate / deactivate by default. + # # + # # enabled_plugins: + # # # these plugins are enabled if nothing is configured .. + # # - 'Hash plugin' + # # - 'Search on category select' + # # - 'Self Information' + # # - 'Tracker URL remover' + # # - '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' + # # - 'Vim-like hotkeys' + # # - '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' + + # # Configuration of the "Hostname replace" plugin: + # # + # hostname_replace: + # # '(.*\.)?youtube\.com$': 'invidious.example.com' + # # '(.*\.)?youtu\.be$': 'invidious.example.com' + # # '(.*\.)?youtube-noocookie\.com$': 'yotter.example.com' + # # '(.*\.)?reddit\.com$': 'teddit.net' + # # '(.*\.)?redd\.it$': 'teddit.net' + # '(www\.)?twitter\.com$': 'nitter.sethforprivacy.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 + # # scheduling: interval or int + + # # to activate the scheduler: + # # * uncomment "scheduling" section + # # * add "cache2 = name=searxngcache,items=2000,blocks=2000,blocksize=4096,bitmap=1" + # # to your uwsgi.ini + + # # scheduling: + # # start_after: [300, 1800] # delay to start the first run of the checker + # # every: [86400, 90000] # how often the checker runs + + # # additional tests: only for the YAML anchors (see the engines section) + # # + # additional_tests: + # rosebud: &test_rosebud + # matrix: + # query: rosebud + # lang: en + # result_container: + # - not_empty + # - ['one_title_contains', 'citizen kane'] + # test: + # - unique_results + + # android: &test_android + # matrix: + # query: ['android'] + # lang: ['en', 'de', 'fr', 'zh-CN'] + # result_container: + # - not_empty + # - ['one_title_contains', 'google'] + # test: + # - unique_results + + # # tests: only for the YAML anchors (see the engines section) + # tests: + # infobox: &tests_infobox + # infobox: + # matrix: + # query: ["linux", "new york", "bbc"] + # result_container: + # - has_infobox + + # categories_as_tabs: + # general: + # images: + # videos: + # news: + # map: + # music: + # it: + # science: + # files: + # social media: + + # engines: + # - name: 9gag + # engine: 9gag + # shortcut: 9g + # disabled: true + # categories: boards + + # - name: annas archive + # engine: annas_archive + # disabled: true + # shortcut: aa + + # # - name: annas articles + # # engine: annas_archive + # # shortcut: aaa + # # # https://docs.searxng.org/src/searx.engines.annas_archive.html + # # aa_content: 'journal_article' # book_any .. magazine, standards_document + # # aa_ext: 'pdf' # pdf, epub, .. + # # aa_sort: 'newest' # newest, oldest, largest, smallest + + # - name: apk mirror + # engine: apkmirror + # timeout: 4.0 + # shortcut: apkm + # disabled: true + + # - name: apple app store + # engine: apple_app_store + # shortcut: aps + # disabled: true + + # # Requires Tor + # - name: ahmia + # engine: ahmia + # categories: onions + # enable_http: true + # shortcut: ah + + # - name: arch linux wiki + # engine: archlinux + # shortcut: al + + # - name: archive is + # engine: xpath + # search_url: https://archive.is/search/?q={query} + # url_xpath: (//div[@class="TEXT-BLOCK"]/a)/@href + # title_xpath: (//div[@class="TEXT-BLOCK"]/a) + # content_xpath: //div[@class="TEXT-BLOCK"]/ul/li + # categories: general + # timeout: 7.0 + # disabled: true + # shortcut: ai + # soft_max_redirects: 1 + # about: + # website: https://archive.is/ + # wikidata_id: Q13515725 + # official_api_documentation: https://mementoweb.org/depot/native/archiveis/ + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: artic + # engine: artic + # shortcut: arc + # timeout: 4.0 + + # - name: arxiv + # engine: arxiv + # shortcut: arx + # timeout: 4.0 + + # # tmp suspended: dh key too small + # # - name: base + # # engine: base + # # shortcut: bs + + # - name: bandcamp + # engine: bandcamp + # shortcut: bc + # categories: music + + # - name: wikipedia + # engine: wikipedia + # shortcut: wp + # base_url: 'https://{language}.wikipedia.org/' + + # - name: bing + # engine: bing + # shortcut: bi + # disabled: true + + # - name: bing images + # engine: bing_images + # shortcut: bii + + # - name: bing news + # engine: bing_news + # shortcut: bin + + # - name: bing videos + # engine: bing_videos + # shortcut: biv + + # - name: bitbucket + # engine: xpath + # paging: true + # search_url: https://bitbucket.org/repo/all/{pageno}?name={query} + # url_xpath: //article[@class="repo-summary"]//a[@class="repo-link"]/@href + # title_xpath: //article[@class="repo-summary"]//a[@class="repo-link"] + # content_xpath: //article[@class="repo-summary"]/p + # categories: [it, repos] + # timeout: 4.0 + # disabled: true + # shortcut: bb + # about: + # website: https://bitbucket.org/ + # wikidata_id: Q2493781 + # official_api_documentation: https://developer.atlassian.com/bitbucket + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: btdigg + # engine: btdigg + # shortcut: bt + + # - 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: core.ac.uk + # # engine: core + # # categories: science + # # shortcut: cor + # # # get your API key from: https://core.ac.uk/api-keys/register/ + # # api_key: 'unset' + + # - name: crossref + # engine: crossref + # shortcut: cr + # timeout: 30 + # disabled: true + + # - name: crowdview + # engine: json_engine + # shortcut: cv + # categories: general + # paging: false + # search_url: https://crowdview-next-js.onrender.com/api/search-v3?query={query} + # results_query: results + # url_query: link + # title_query: title + # content_query: snippet + # disabled: true + # about: + # website: https://crowdview.ai/ + + # - name: yep + # engine: json_engine + # shortcut: yep + # categories: general + # 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 + # 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 + # engine: deezer + # shortcut: dz + # disabled: true + + # - name: deviantart + # engine: deviantart + # shortcut: da + # timeout: 3.0 + + # - name: ddg definitions + # engine: duckduckgo_definitions + # shortcut: ddd + # weight: 2 + # disabled: true + # tests: *tests_infobox + + # # cloudflare protected + # # - name: digbt + # # engine: digbt + # # shortcut: dbt + # # timeout: 6.0 + # # disabled: true + + # - name: docker hub + # engine: docker_hub + # shortcut: dh + # categories: [it, packages] + + # - name: erowid + # engine: xpath + # paging: true + # first_page_num: 0 + # page_size: 30 + # search_url: https://www.erowid.org/search.php?q={query}&s={pageno} + # url_xpath: //dl[@class="results-list"]/dt[@class="result-title"]/a/@href + # title_xpath: //dl[@class="results-list"]/dt[@class="result-title"]/a/text() + # content_xpath: //dl[@class="results-list"]/dd[@class="result-details"] + # categories: [] + # shortcut: ew + # disabled: true + # about: + # website: https://www.erowid.org/ + # wikidata_id: Q1430691 + # official_api_documentation: + # use_official_api: false + # require_api_key: false + # results: HTML + + # # - name: elasticsearch + # # shortcut: es + # # engine: elasticsearch + # # base_url: http://localhost:9200 + # # username: elastic + # # password: changeme + # # index: my-index + # # # 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 + # # disabled: true + + # - name: wikidata + # engine: wikidata + # shortcut: wd + # timeout: 3.0 + # weight: 2 + # tests: *tests_infobox + + # - name: duckduckgo + # engine: duckduckgo + # shortcut: ddg + + # - name: duckduckgo weather + # engine: duckduckgo_weather + # shortcut: ddw + # disabled: true + + # - name: apple maps + # engine: apple_maps + # shortcut: apm + # disabled: true + # timeout: 5.0 + + # - name: emojipedia + # engine: emojipedia + # timeout: 4.0 + # shortcut: em + # disabled: true + + # - name: tineye + # engine: tineye + # shortcut: tin + # timeout: 9.0 + # disabled: true + + # - name: etymonline + # engine: xpath + # paging: true + # search_url: https://etymonline.com/search?page={pageno}&q={query} + # url_xpath: //a[contains(@class, "word__name--")]/@href + # title_xpath: //a[contains(@class, "word__name--")] + # content_xpath: //section[contains(@class, "word__defination")] + # first_page_num: 1 + # shortcut: et + # categories: [dictionaries] + # disabled: false + # about: + # website: https://www.etymonline.com/ + # wikidata_id: Q1188617 + # official_api_documentation: + # use_official_api: false + # require_api_key: false + # results: HTML + + # # - name: ebay + # # engine: ebay + # # shortcut: eb + # # base_url: 'https://www.ebay.com' + # # disabled: true + # # timeout: 5 + + # - name: 1x + # engine: www1x + # shortcut: 1x + # timeout: 3.0 + # disabled: true + + # - name: fdroid + # engine: fdroid + # shortcut: fd + # disabled: true + + # - name: flickr + # categories: images + # shortcut: fl + # # You can use the engine using the official stable API, but you need an API + # # key, see: https://www.flickr.com/services/apps/create/ + # # engine: flickr + # # api_key: 'apikey' # required! + # # Or you can use the html non-stable engine, activated by default + # engine: flickr_noapi + + # - name: free software directory + # engine: mediawiki + # shortcut: fsd + # categories: [it, software wikis] + # base_url: https://directory.fsf.org/ + # number_of_results: 5 + # # what part of a page matches the query string: title, text, nearmatch + # # * title - query matches title + # # * text - query matches the text of page + # # * nearmatch - nearmatch in title + # search_type: title + # timeout: 5.0 + # disabled: true + # about: + # website: https://directory.fsf.org/ + # wikidata_id: Q2470288 + + # # - name: freesound + # # engine: freesound + # # shortcut: fnd + # # disabled: true + # # timeout: 15.0 + # # API key required, see: https://freesound.org/docs/api/overview.html + # # api_key: MyAPIkey + + # - name: frinkiac + # engine: frinkiac + # shortcut: frk + # disabled: true + + # - name: genius + # engine: genius + # shortcut: gen + + # - name: gentoo + # engine: gentoo + # shortcut: ge + # timeout: 10.0 + + # - 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] + # shortcut: gl + # timeout: 10.0 + # disabled: true + # about: + # website: https://about.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: 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: 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] + # 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: google + # engine: google + # weight: 2 + # shortcut: go + # # additional_tests: + # # android: *test_android + + # - name: google images + # engine: google_images + # shortcut: goi + # # additional_tests: + # # android: *test_android + # # dali: + # # matrix: + # # query: ['Dali Christ'] + # # lang: ['en', 'de', 'fr', 'zh-CN'] + # # result_container: + # # - ['one_title_contains', 'Salvador'] + + # - name: google news + # engine: google_news + # shortcut: gon + # # additional_tests: + # # android: *test_android + + # - name: google videos + # engine: google_videos + # shortcut: gov + # # additional_tests: + # # android: *test_android + + # - name: google scholar + # engine: google_scholar + # shortcut: gos + + # - name: google play apps + # engine: google_play + # categories: [files, apps] + # shortcut: gpa + # play_categ: apps + # disabled: true + + # - name: google play movies + # engine: google_play + # categories: videos + # shortcut: gpm + # play_categ: movies + # 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 + # search_url: https://habrahabr.ru/search/page{pageno}/?q={query} + # url_xpath: //article[contains(@class, "post")]//a[@class="post__title_link"]/@href + # title_xpath: //article[contains(@class, "post")]//a[@class="post__title_link"] + # content_xpath: //article[contains(@class, "post")]//div[contains(@class, "post__text")] + # categories: it + # timeout: 4.0 + # disabled: true + # shortcut: habr + # about: + # website: https://habr.com/ + # wikidata_id: Q4494434 + # official_api_documentation: https://habr.com/en/docs/help/api/ + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: hoogle + # engine: xpath + # paging: true + # search_url: https://hoogle.haskell.org/?hoogle={query}&start={pageno} + # results_xpath: '//div[@class="result"]' + # title_xpath: './/div[@class="ans"]//a' + # url_xpath: './/div[@class="ans"]//a/@href' + # content_xpath: './/div[@class="from"]' + # page_size: 20 + # categories: [it, packages] + # shortcut: ho + # about: + # website: https://hoogle.haskell.org/ + # wikidata_id: Q34010 + # official_api_documentation: https://hackage.haskell.org/api + # use_official_api: false + # require_api_key: false + # results: JSON + + # - name: imdb + # engine: imdb + # shortcut: imdb + # timeout: 6.0 + # disabled: true + + # - name: ina + # engine: ina + # shortcut: in + # 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.snopyta.org + # - https://vid.puffyan.us + # # - https://invidious.kavin.rocks # Error 1020 // Access denied by Cloudflare + # - https://invidio.xamh.de + # - https://inv.riverside.rocks + # shortcut: iv + # timeout: 3.0 + # disabled: true + + # - name: jisho + # engine: jisho + # shortcut: js + # timeout: 3.0 + # disabled: true + + # - name: kickass + # engine: kickass + # shortcut: kc + # timeout: 4.0 + # disabled: true + + # - name: library genesis + # engine: xpath + # search_url: https://libgen.fun/search.php?req={query} + # url_xpath: //a[contains(@href,"get.php?md5")]/@href + # title_xpath: //a[contains(@href,"book/")]/text()[1] + # content_xpath: //td/a[1][contains(@href,"=author")]/text() + # categories: files + # timeout: 7.0 + # disabled: true + # shortcut: lg + # about: + # website: https://libgen.fun/ + # wikidata_id: Q22017206 + # official_api_documentation: + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: z-library + # engine: zlibrary + # shortcut: zlib + # categories: files + # timeout: 7.0 + + # - name: library of congress + # engine: loc + # shortcut: loc + # categories: images + + # - name: lingva + # engine: lingva + # shortcut: lv + # # set lingva instance in url, by default it will use the official instance + # # url: https://lingva.ml + + # - name: lobste.rs + # engine: xpath + # search_url: https://lobste.rs/search?utf8=%E2%9C%93&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"] + # content_xpath: .//a[@class="domain"] + # categories: it + # shortcut: lo + # timeout: 5.0 + # disabled: true + # about: + # website: https://lobste.rs/ + # wikidata_id: Q60762874 + # official_api_documentation: + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: azlyrics + # shortcut: lyrics + # engine: xpath + # timeout: 4.0 + # 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 + + # - name: metacpan + # engine: metacpan + # shortcut: cpan + # disabled: true + # number_of_results: 20 + + # # - name: meilisearch + # # engine: meilisearch + # # shortcut: mes + # # enable_http: true + # # base_url: http://localhost:7700 + # # index: my-index + + # - name: mixcloud + # engine: mixcloud + # shortcut: mc + + # # MongoDB engine + # # Required dependency: pymongo + # # - name: mymongo + # # engine: mongodb + # # shortcut: md + # # exact_match_only: false + # # host: '127.0.0.1' + # # port: 27017 + # # enable_http: true + # # results_per_page: 20 + # # database: 'business' + # # collection: 'reviews' # name of the db collection + # # key: 'name' # key in the collection to search for + + # - 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] + # disabled: true + # timeout: 5.0 + # 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 + + # - name: nyaa + # engine: nyaa + # shortcut: nt + # disabled: true + + # - name: mankier + # engine: json_engine + # search_url: https://www.mankier.com/api/v2/mans/?q={query} + # results_query: results + # url_query: url + # title_query: name + # content_query: description + # categories: it + # shortcut: man + # about: + # website: https://www.mankier.com/ + # official_api_documentation: https://www.mankier.com/api + # use_official_api: true + # require_api_key: false + # results: JSON + + # - name: openairedatasets + # engine: json_engine + # paging: true + # search_url: https://api.openaire.eu/search/datasets?format=json&page={pageno}&size=10&title={query} + # results_query: response/results/result + # url_query: metadata/oaf:entity/oaf:result/children/instance/webresource/url/$ + # title_query: metadata/oaf:entity/oaf:result/title/$ + # content_query: metadata/oaf:entity/oaf:result/description/$ + # content_html_to_text: true + # categories: "science" + # shortcut: oad + # timeout: 5.0 + # about: + # website: https://www.openaire.eu/ + # wikidata_id: Q25106053 + # official_api_documentation: https://api.openaire.eu/ + # use_official_api: false + # require_api_key: false + # results: JSON + + # - name: openairepublications + # engine: json_engine + # paging: true + # search_url: https://api.openaire.eu/search/publications?format=json&page={pageno}&size=10&title={query} + # results_query: response/results/result + # url_query: metadata/oaf:entity/oaf:result/children/instance/webresource/url/$ + # title_query: metadata/oaf:entity/oaf:result/title/$ + # content_query: metadata/oaf:entity/oaf:result/description/$ + # content_html_to_text: true + # categories: science + # shortcut: oap + # timeout: 5.0 + # about: + # website: https://www.openaire.eu/ + # wikidata_id: Q25106053 + # official_api_documentation: https://api.openaire.eu/ + # use_official_api: false + # require_api_key: false + # results: JSON + + # # - name: opensemanticsearch + # # engine: opensemantic + # # shortcut: oss + # # base_url: 'http://localhost:8983/solr/opensemanticsearch/' + + # - name: openstreetmap + # engine: openstreetmap + # shortcut: osm + + # - name: openrepos + # engine: xpath + # paging: true + # search_url: https://openrepos.net/search/node/{query}?page={pageno} + # url_xpath: //li[@class="search-result"]//h3[@class="title"]/a/@href + # title_xpath: //li[@class="search-result"]//h3[@class="title"]/a + # content_xpath: //li[@class="search-result"]//div[@class="search-snippet-info"]//p[@class="search-snippet"] + # categories: files + # timeout: 4.0 + # disabled: true + # shortcut: or + # about: + # website: https://openrepos.net/ + # wikidata_id: + # official_api_documentation: + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: packagist + # engine: json_engine + # paging: true + # search_url: https://packagist.org/search.json?q={query}&page={pageno} + # results_query: results + # url_query: url + # title_query: name + # content_query: description + # categories: [it, packages] + # disabled: true + # timeout: 5.0 + # shortcut: pack + # about: + # website: https://packagist.org + # wikidata_id: Q108311377 + # official_api_documentation: https://packagist.org/apidoc + # use_official_api: true + # require_api_key: false + # results: JSON + + # - name: pdbe + # engine: pdbe + # shortcut: pdb + # # Hide obsolete PDB entries. Default is not to hide obsolete structures + # # hide_obsolete: false + + # - name: photon + # engine: photon + # shortcut: ph + + # - name: piratebay + # engine: piratebay + # shortcut: tpb + # # You may need to change this URL to a proxy if piratebay is blocked in your + # # country + # url: https://thepiratebay.org/ + # timeout: 3.0 + + # # Required dependency: psychopg2 + # # - name: postgresql + # # engine: postgresql + # # database: postgres + # # username: postgres + # # password: postgres + # # limit: 10 + # # query_str: 'SELECT * from my_table WHERE my_column = %(query)s' + # # shortcut : psql + + # - name: pub.dev + # engine: xpath + # shortcut: pd + # search_url: https://pub.dev/packages?q={query}&page={pageno} + # paging: true + # results_xpath: /html/body/main/div/div[@class="search-results"]/div[@class="packages"]/div + # url_xpath: ./div/h3/a/@href + # title_xpath: ./div/h3/a + # content_xpath: ./p[@class="packages-description"] + # categories: [packages, it] + # timeout: 3.0 + # disabled: true + # first_page_num: 1 + # about: + # website: https://pub.dev/ + # official_api_documentation: https://pub.dev/help/api + # use_official_api: false + # require_api_key: false + # results: HTML + + # - 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 + + # - name: qwant + # qwant_categ: web + # engine: qwant + # shortcut: qw + # categories: [general, web] + # disabled: false + # additional_tests: + # rosebud: *test_rosebud + + # - name: qwant news + # qwant_categ: news + # engine: qwant + # shortcut: qwn + # categories: news + # disabled: false + # network: qwant + + # - name: qwant images + # qwant_categ: images + # engine: qwant + # shortcut: qwi + # categories: [images, web] + # disabled: false + # network: qwant + + # - name: qwant videos + # qwant_categ: videos + # engine: qwant + # shortcut: qwv + # categories: [videos, web] + # disabled: false + # network: qwant + + # # - name: library + # # engine: recoll + # # shortcut: lib + # # base_url: 'https://recoll.example.org/' + # # search_dir: '' + # # mount_prefix: /export + # # dl_prefix: 'https://download.example.org' + # # timeout: 30.0 + # # categories: files + # # disabled: true + + # # - name: recoll library reference + # # engine: recoll + # # base_url: 'https://recoll.example.org/' + # # search_dir: reference + # # mount_prefix: /export + # # dl_prefix: 'https://download.example.org' + # # shortcut: libr + # # timeout: 30.0 + # # categories: files + # # disabled: true + + # - name: reddit + # engine: reddit + # shortcut: re + # page_size: 25 + + # # Required dependency: redis + # # - name: myredis + # # shortcut : rds + # # engine: redis_server + # # exact_match_only: false + # # host: '127.0.0.1' + # # port: 6379 + # # enable_http: true + # # password: '' + # # db: 0 + + # # tmp suspended: bad certificate + # # - name: scanr structures + # # shortcut: scs + # # engine: scanr_structures + # # disabled: true + + # - name: sepiasearch + # engine: sepiasearch + # shortcut: sep + + # - name: stackoverflow + # engine: stackexchange + # shortcut: st + # api_site: 'stackoverflow' + # categories: [it, q&a] + + # - name: askubuntu + # engine: stackexchange + # shortcut: ubuntu + # api_site: 'askubuntu' + # categories: [it, q&a] + + # - name: superuser + # engine: stackexchange + # shortcut: su + # api_site: 'superuser' + # categories: [it, q&a] + + # - name: searchcode code + # engine: searchcode_code + # shortcut: scc + # disabled: true + + # - name: framalibre + # engine: framalibre + # shortcut: frl + # disabled: true + + # # - name: searx + # # engine: searx_engine + # # shortcut: se + # # instance_urls : + # # - http://127.0.0.1:8888/ + # # - ... + # # disabled: true + + # - name: semantic scholar + # engine: semantic_scholar + # disabled: true + # shortcut: se + + # # Spotify needs API credentials + # # - name: spotify + # # engine: spotify + # # shortcut: stf + # # api_client_id: ******* + # # api_client_secret: ******* + + # # - name: solr + # # engine: solr + # # shortcut: slr + # # base_url: http://localhost:8983 + # # collection: collection_name + # # sort: '' # sorting: asc or desc + # # field_list: '' # comma separated list of field names to display on the UI + # # default_fields: '' # default field to query + # # 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: startpage + # engine: startpage + # shortcut: sp + # timeout: 6.0 + # disabled: true + # additional_tests: + # rosebud: *test_rosebud + + # - name: tokyotoshokan + # engine: tokyotoshokan + # shortcut: tt + # timeout: 6.0 + # disabled: true + + # - name: solidtorrents + # engine: solidtorrents + # shortcut: solid + # timeout: 4.0 + # disabled: false + # base_url: + # - https://solidtorrents.net + # - https://solidtorrents.eu + # - https://solidtorrents.to + # - https://bitsearch.to + + # # 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" + # # + # # - name: demo + # # engine: sqlite + # # shortcut: demo + # # categories: general + # # result_template: default.html + # # database: searx/data/filmliste-v2.db + # # 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 + # # FROM film + # # WHERE title LIKE :wildcard OR description LIKE :wildcard + # # ORDER BY duration DESC + # # disabled: false + + # # Requires Tor + # - name: torch + # engine: xpath + # paging: true + # search_url: + # http://xmh57jrknzkhv6y3ls3ubitzfqnkrwxhopf5aygthi7d6rplyvk3noyd.onion/cgi-bin/omega/omega?P={query}&DEFAULTOP=and + # results_xpath: //table//tr + # url_xpath: ./td[2]/a + # title_xpath: ./td[2]/b + # content_xpath: ./td[2]/small + # categories: onions + # enable_http: true + # shortcut: tch + + # # 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: + # # https://docs.searxng.org/src/searx.engines.torznab.html + # # + # # - name: Torznab EZTV + # # engine: torznab + # # shortcut: eztv + # # base_url: http://localhost:9117/api/v2.0/indexers/eztv/results/torznab + # # enable_http: true # if using localhost + # # api_key: xxxxxxxxxxxxxxx + # # show_magnet_links: true + # # show_torrent_files: false + # # # https://github.com/Jackett/Jackett/wiki/Jackett-Categories + # # torznab_categories: # optional + # # - 2000 + # # - 5000 + + # # maybe in a fun category + # # - name: uncyclopedia + # # engine: mediawiki + # # shortcut: unc + # # base_url: https://uncyclopedia.wikia.com/ + # # number_of_results: 5 + + # # tmp suspended - too slow, too many errors + # # - name: urbandictionary + # # engine : xpath + # # search_url : https://www.urbandictionary.com/define.php?term={query} + # # url_xpath : //*[@class="word"]/@href + # # title_xpath : //*[@class="def-header"] + # # content_xpath: //*[@class="meaning"] + # # shortcut: ud + + # - name: unsplash + # engine: unsplash + # shortcut: us + + # - name: yahoo + # engine: yahoo + # shortcut: yh + # disabled: true + + # - name: yahoo news + # engine: yahoo_news + # shortcut: yhn + + # - name: youtube + # shortcut: yt + # # You can use the engine using the official stable API, but you need an API + # # key See: https://console.developers.google.com/project + # # + # # engine: youtube_api + # # api_key: 'apikey' # required! + # # + # # Or you can use the html non-stable engine, activated by default + # engine: youtube_noapi + + # - name: dailymotion + # engine: dailymotion + # shortcut: dm + + # - name: vimeo + # engine: vimeo + # shortcut: vm + + # - name: wiby + # engine: json_engine + # paging: true + # search_url: https://wiby.me/json/?q={query}&p={pageno} + # url_query: URL + # title_query: Title + # content_query: Snippet + # categories: [general, web] + # shortcut: wib + # disabled: true + # 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 + # shortcut: wb + # categories: general + # base_url: "https://{language}.wikibooks.org/" + # number_of_results: 5 + # search_type: text + # disabled: true + # about: + # website: https://www.wikibooks.org/ + # wikidata_id: Q367 + + # - name: wikinews + # engine: mediawiki + # shortcut: wn + # categories: news + # base_url: "https://{language}.wikinews.org/" + # number_of_results: 5 + # search_type: text + # disabled: true + # about: + # website: https://www.wikinews.org/ + # wikidata_id: Q964 + + # - name: wikiquote + # engine: mediawiki + # shortcut: wq + # categories: general + # base_url: "https://{language}.wikiquote.org/" + # number_of_results: 5 + # search_type: text + # disabled: true + # additional_tests: + # rosebud: *test_rosebud + # about: + # website: https://www.wikiquote.org/ + # wikidata_id: Q369 + + # - name: wikisource + # engine: mediawiki + # shortcut: ws + # categories: general + # base_url: "https://{language}.wikisource.org/" + # number_of_results: 5 + # search_type: text + # disabled: true + # about: + # website: https://www.wikisource.org/ + # wikidata_id: Q263 + + # - name: wiktionary + # engine: mediawiki + # shortcut: wt + # categories: [dictionaries] + # base_url: "https://{language}.wiktionary.org/" + # number_of_results: 5 + # search_type: text + # disabled: false + # about: + # website: https://www.wiktionary.org/ + # wikidata_id: Q151 + + # - name: wikiversity + # engine: mediawiki + # shortcut: wv + # categories: general + # base_url: "https://{language}.wikiversity.org/" + # number_of_results: 5 + # search_type: text + # disabled: true + # about: + # website: https://www.wikiversity.org/ + # wikidata_id: Q370 + + # - name: wikivoyage + # engine: mediawiki + # shortcut: wy + # categories: general + # base_url: "https://{language}.wikivoyage.org/" + # number_of_results: 5 + # search_type: text + # disabled: true + # about: + # website: https://www.wikivoyage.org/ + # wikidata_id: Q373 + + # - name: wolframalpha + # shortcut: wa + # # You can use the engine using the official stable API, but you need an API + # # key. See: https://products.wolframalpha.com/api/ + # # + # # engine: wolframalpha_api + # # api_key: '' + # # + # # Or you can use the html non-stable engine, activated by default + # engine: wolframalpha_noapi + # timeout: 6.0 + # categories: [] + + # - name: dictzone + # engine: dictzone + # shortcut: dc + + # - name: mymemory translated + # engine: translated + # shortcut: tl + # timeout: 5.0 + # disabled: false + # # You can use without an API key, but you are limited to 1000 words/day + # # See: https://mymemory.translated.net/doc/usagelimits.php + # # api_key: '' + + # # Required dependency: mysql-connector-python + # # - name: mysql + # # engine: mysql_server + # # database: mydatabase + # # username: user + # # password: pass + # # limit: 10 + # # query_str: 'SELECT * from mytable WHERE fieldname=%(query)s' + # # shortcut: mysql + + # - name: 1337x + # engine: 1337x + # shortcut: 1337x + # disabled: true + + # - name: duden + # engine: duden + # shortcut: du + # disabled: true + + # - name: seznam + # shortcut: szn + # engine: seznam + # disabled: true + + # # - name: deepl + # # engine: deepl + # # shortcut: dpl + # # # You can use the engine using the official stable API, but you need an API key + # # # See: https://www.deepl.com/pro-api?cta=header-pro-api + # # api_key: '' # required! + # # timeout: 5.0 + # # disabled: true + + # - name: mojeek + # shortcut: mjk + # engine: xpath + # paging: true + # 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: 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 + # 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 + # engine: xpath + # paging: true + # search_url: https://rubygems.org/search?page={pageno}&query={query} + # results_xpath: /html/body/main/div/a[@class="gems__gem"] + # url_xpath: ./@href + # title_xpath: ./span/h2 + # content_xpath: ./span/p + # suggestion_xpath: /html/body/main/div/div[@class="search__suggestions"]/p/a + # first_page_num: 1 + # categories: [it, packages] + # disabled: true + # about: + # website: https://rubygems.org/ + # wikidata_id: Q1853420 + # official_api_documentation: https://guides.rubygems.org/rubygems-org-api/ + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: peertube + # engine: peertube + # shortcut: ptb + # paging: true + # # alternatives see: https://instances.joinpeertube.org/instances + # # base_url: https://tube.4aem.com + # categories: videos + # disabled: true + # timeout: 6.0 + + # - name: mediathekviewweb + # engine: mediathekviewweb + # shortcut: mvw + # disabled: true + + # # - name: yacy + # # engine: yacy + # # shortcut: ya + # # base_url: http://localhost:8090 + # # required if you aren't using HTTPS for your local yacy instance' + # # enable_http: true + # # number_of_results: 5 + # # timeout: 3.0 + + # - name: rumble + # engine: rumble + # shortcut: ru + # base_url: https://rumble.com/ + # paging: true + # categories: videos + # disabled: true + + # - name: wordnik + # engine: wordnik + # shortcut: def + # base_url: https://www.wordnik.com/ + # categories: [dictionaries] + # timeout: 5.0 + # disabled: false + + # - name: woxikon.de synonyme + # engine: xpath + # shortcut: woxi + # categories: [dictionaries] + # timeout: 5.0 + # disabled: true + # search_url: https://synonyme.woxikon.de/synonyme/{query}.php + # url_xpath: //div[@class="upper-synonyms"]/a/@href + # content_xpath: //div[@class="synonyms-list-group"] + # title_xpath: //div[@class="upper-synonyms"]/a + # no_result_for_http_status: [404] + # about: + # website: https://www.woxikon.de/ + # wikidata_id: # No Wikidata ID + # use_official_api: false + # require_api_key: false + # results: HTML + # language: de + + # - name: sjp.pwn + # engine: sjp + # shortcut: sjp + # base_url: https://sjp.pwn.pl/ + # timeout: 5.0 + # disabled: true + + # # wikimini: online encyclopedia for children + # # The fulltext and title parameter is necessary for Wikimini because + # # sometimes it will not show the results and redirect instead + # - name: wikimini + # engine: xpath + # shortcut: wkmn + # search_url: https://fr.wikimini.org/w/index.php?search={query}&title=Sp%C3%A9cial%3ASearch&fulltext=Search + # url_xpath: //li/div[@class="mw-search-result-heading"]/a/@href + # title_xpath: //li//div[@class="mw-search-result-heading"]/a + # content_xpath: //li/div[@class="searchresult"] + # categories: general + # disabled: true + # about: + # website: https://wikimini.org/ + # wikidata_id: Q3568032 + # use_official_api: false + # require_api_key: false + # results: HTML + # language: fr + + # - name: wttr.in + # engine: wttr + # shortcut: wttr + # timeout: 9.0 + + # - name: brave + # shortcut: brave + # engine: xpath + # paging: true + # time_range_support: true + # first_page_num: 0 + # time_range_url: "&tf={time_range_val}" + # search_url: https://search.brave.com/search?q={query}&offset={pageno}&spellcheck=1{time_range} + # url_xpath: //a[@class="result-header"]/@href + # title_xpath: //span[@class="snippet-title"] + # content_xpath: //p[1][@class="snippet-description"] + # suggestion_xpath: //div[@class="text-gray h6"]/a + # time_range_map: + # day: 'pd' + # week: 'pw' + # month: 'pm' + # year: 'py' + # categories: [general, web] + # disabled: true + # headers: + # Accept-Encoding: gzip, deflate + # about: + # website: https://brave.com/search/ + # wikidata_id: Q107355971 + # use_official_api: false + # require_api_key: false + # results: HTML + + # - 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] + # disabled: true + # about: + # website: https://lib.rs + # wikidata_id: Q113486010 + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: sourcehut + # shortcut: srht + # engine: xpath + # paging: true + # search_url: https://sr.ht/projects?page={pageno}&search={query} + # results_xpath: (//div[@class="event-list"])[1]/div[@class="event"] + # url_xpath: ./h4/a[2]/@href + # title_xpath: ./h4/a[2] + # content_xpath: ./p + # first_page_num: 1 + # categories: [it, repos] + # disabled: true + # about: + # website: https://sr.ht + # wikidata_id: Q78514485 + # official_api_documentation: https://man.sr.ht/ + # use_official_api: false + # require_api_key: false + # results: HTML + + # - name: goo + # shortcut: goo + # engine: xpath + # paging: true + # search_url: https://search.goo.ne.jp/web.jsp?MT={query}&FR={pageno}0 + # url_xpath: //div[@class="result"]/p[@class='title fsL1']/a/@href + # title_xpath: //div[@class="result"]/p[@class='title fsL1']/a + # content_xpath: //p[contains(@class,'url fsM')]/following-sibling::p + # first_page_num: 0 + # categories: [general, web] + # disabled: true + # timeout: 4.0 + # about: + # website: https://search.goo.ne.jp + # wikidata_id: Q249044 + # use_official_api: false + # require_api_key: false + # results: HTML + # language: ja + + # ### Custom Engines ### + + # - name: safebooru + # shortcut: sboo + # engine: xpath + # categories: [boards] + # paging: true + # page_size: 40 + # search_url: https://safebooru.org/index.php?page=post&s=list&tags={query}&pid={pageno} + # results_xpath: //div/span[@class='thumb']/a + # url_xpath: ./@href + # title_xpath: ./@id + # content_xpath: ./img/@title + # thumbnail_xpath: ./img/@src + # disabled: true + # timeout: 5.0 + # tokens: ['12boards24access!'] + # about: + # website: https://safebooru.org + # use_official_api: false + # results: HTML + # language: en + + # - name: danbooru + # shortcut: dboo + # engine: xpath + # categories: [boards] + # paging: true + # search_url: https://danbooru.donmai.us/posts?tags={query}&page={pageno} + # results_xpath: //div/article + # url_xpath: ./div/a/@href + # title_xpath: ./@id + # content_xpath: ./div/a/picture/img/@title + # thumbnail_xpath: .//img/@src + # disabled: true + # timeout: 5.0 + # tokens: ['12boards24access!'] + # about: + # website: https://danbooru.donmai.us + # use_official_api: false + # results: HTML + # language: en + + # # 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/' + # 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/' + + # default_doi_resolver: 'oadoi.org'