summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-06-12[chore] Preferences: Make autocomplete description sound less casual (#4908)benpiano800
2025-06-12[chore] Preferences: Fix grammatical error in results_on_new_tab.html (#4909)benpiano800
2025-06-10[mod] disable wallhaven by defaultBrock Vojkovic
2025-06-10[fix] CI: prevent manifest removal (#4905)Ivan Gabaldon
The action does not take into account all cases of how an image is stored, causing errors like the ones below on image pull. I exclude `base` until I find a solution. *Error: internal error: unable to copy from source ...: initializing source ...: reading manifest ... in ghcr.io/searxng/base: manifest unknown*
2025-06-09[fix] .editorconfig: correction of the settings from the realities (#4892)Markus Heiser
The code formatter allows up to 120 characters per line, but for better readability the editor should prefer 80 characters per line In the HTML templates (jinja) we usually use an indentation of two and no tabs. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-06-08[feat] bing: raise error upon receiving wrong results page0xhtml
2025-06-06[feat] engines: add Minecraft Wiki (#4896)benpiano800
2025-06-06[upd] github-actions: Bump aquasecurity/trivy-action (#4898)dependabot[bot]
Bumps [aquasecurity/trivy-action](https://github.com/aquasecurity/trivy-action) from 0.30.0 to 0.31.0. - [Release notes](https://github.com/aquasecurity/trivy-action/releases) - [Commits](https://github.com/aquasecurity/trivy-action/compare/0.30.0...0.31.0) --- updated-dependencies: - dependency-name: aquasecurity/trivy-action dependency-version: 0.31.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-06[upd] web-client (simple): Bump the minor group (#4899)dependabot[bot]
Bumps the minor group in /client/simple with 3 updates: [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js), [eslint](https://github.com/eslint/eslint) and [ionicons](https://github.com/ionic-team/ionicons). Updates `@eslint/js` from 9.27.0 to 9.28.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/commits/v9.28.0/packages/js) Updates `eslint` from 9.27.0 to 9.28.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v9.27.0...v9.28.0) Updates `ionicons` from 8.0.8 to 8.0.9 - [Release notes](https://github.com/ionic-team/ionicons/releases) - [Commits](https://github.com/ionic-team/ionicons/compare/v8.0.8...v8.0.9) --- updated-dependencies: - dependency-name: "@eslint/js" dependency-version: 9.28.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor - dependency-name: eslint dependency-version: 9.28.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor - dependency-name: ionicons dependency-version: 8.0.9 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-06[l10n] update translations from Weblate (#4897)github-actions[bot]
1abc876b1 - 2025-06-06 - Linerly <linerly@noreply.codeberg.org> 8e107bf1a - 2025-06-06 - realkendrick_fr <realkendrick_fr@noreply.codeberg.org> 3ea971192 - 2025-06-03 - LinuxWizard <linuxwizard@noreply.codeberg.org> 455f80f14 - 2025-06-02 - ghose <ghose@noreply.codeberg.org> aab313207 - 2025-06-02 - wags07 <wags07@noreply.codeberg.org> 1f1390745 - 2025-06-02 - aindriu80 <aindriu80@noreply.codeberg.org> c098e4d67 - 2025-06-02 - Shihfu Juan <xlion@xlion.tw> a30395996 - 2025-06-01 - AndersNordh <andersnordh@noreply.codeberg.org> a1648feed - 2025-06-02 - yurtpage <yurtpage@noreply.codeberg.org> 985d3f23c - 2025-06-02 - rodgui <rodgui@noreply.codeberg.org> 1526dbc88 - 2025-06-02 - rodgui <rodgui@noreply.codeberg.org> 2d6baae9e - 2025-06-02 - artens <artens@noreply.codeberg.org> bb5344f55 - 2025-06-02 - Haraldher <haraldher@noreply.codeberg.org> 08991138c - 2025-06-01 - Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org> 94952bbd5 - 2025-06-01 - AndersNordh <andersnordh@noreply.codeberg.org> e4a792010 - 2025-06-01 - Fjuro <git@alius.cz> 0bd241620 - 2025-06-02 - thenack0 <thenack0@noreply.codeberg.org> 3bdff93bc - 2025-06-01 - pochinki <pochinki@noreply.codeberg.org> 091107dc4 - 2025-06-01 - Outbreak2096 <outbreak2096@noreply.codeberg.org> ac147f2cc - 2025-05-31 - SomeTr <sometr@noreply.codeberg.org> dd0b77eee - 2025-06-01 - ngf <ngf@noreply.codeberg.org> db2aa378b - 2025-06-01 - return42 <return42@noreply.codeberg.org> Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2025-06-03[mod] container: revert to alpine (#4893)Ivan Gabaldon
I'm not too pleased to reverse this, but issues like https://github.com/searxng/searxng/issues/4792 have not been foreseen, and we can't just turn away. It has become apparent over the last weeks that there are still quite a few people with an incompatible CPU or having SearXNG on some random VM provider who can't (or won't) modify the configuration of their machines to expose the features needed for x86_64v2 march. As I don't want to trash the work with apko and base images, I thought about trying building Alpine again now that we have all the container related workflow refactored. There will still be the discussion of whether to use musl and its drawbacks, but right now I don't know any other alternatives. The nice part of this is that both Dockerfiles (mainline and legacy) can now be unified under the same umbrella again. Closes https://github.com/searxng/searxng/issues/4792 Closes https://github.com/searxng/searxng/issues/4753
2025-06-03[fix] startpage engine: resolve instant CAPTCHA issues (#4890)useralias
Changes: - Improve log messages for better debugging of future CAPTCHA issues - Fixed erroneous get_sc_url variable where sc was always blank (when no cached value) - Move Origin and Referer headers to request() function - Add missing form parameters (abp, abd, abe) required by Startpage to avoid being flagged as automated requests - Include segment parameter for paginated requests - Clean up unnecessary commented-out headers - Fix minor typos e.g. "time-stamp" → "timestamp", "scrap" → "scrapes" Related: - https://github.com/searxng/searxng/issues/4673
2025-06-01[mod] CI: exclude SearXNG checker and build & deploy of online docs (#4875)Markus Heiser
checker.yml 1. The checker is not yet of sufficient quality to allow the results of the check to be evaluated / we do not evaluate them ourselves. 2. The checker sends hundreds of requests to the search engines and causes problems there / we either overload small providers or we train their bot defenses to use the SearXNG signature. documentation.yml Building the documentation and deploying it on GH-docs of a clones (GH forks) is generally not desirable either --> We have >2k clones, but we only need one up-to-date documentation and that is the one from the master branch of the searxng/searxng repo. If search engines like Google start linking to the documentation in the clones, SearXNG users may no longer find the original documentation or be lost in the flood of options. Related: - https://github.com/searxng/searxng/issues/4847 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-31[chore] engine preferences: fix grammar mistakes (#4883)benpiano800
2025-05-31[build] /staticMarkus Heiser
2025-05-31[mod] weather results: add types, i18n/l10n, symbols & unit conversionsMarkus Heiser
The types necessary for weather information such as GeoLocation, DateTime, Temperature,Pressure, WindSpeed, RelativeHumidity, Compass (wind direction) and symbols for the weather have been implemented. There are unit conversions and translations for weather property labels. Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-31[mod] implement searx.wikidata_units for unit convertersMarkus Heiser
2025-05-31[feat] open meteo: use new weather answererBnyro
2025-05-31[feat] result types: add weather result answerer and templateBnyro
2025-05-30[mod] UI footer: correct capitalization of "SearXNG" in base.htmlbenpiano800
2025-05-30[upd] pypi: Bump the minor group with 2 updatesdependabot[bot]
Bumps the minor group with 2 updates: [selenium](https://github.com/SeleniumHQ/Selenium) and [typer-slim](https://github.com/fastapi/typer). Updates `selenium` from 4.32.0 to 4.33.0 - [Release notes](https://github.com/SeleniumHQ/Selenium/releases) - [Commits](https://github.com/SeleniumHQ/Selenium/compare/selenium-4.32.0...selenium-4.33.0) Updates `typer-slim` from 0.15.4 to 0.16.0 - [Release notes](https://github.com/fastapi/typer/releases) - [Changelog](https://github.com/fastapi/typer/blob/master/docs/release-notes.md) - [Commits](https://github.com/fastapi/typer/compare/0.15.4...0.16.0) --- updated-dependencies: - dependency-name: selenium dependency-version: 4.33.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor - dependency-name: typer-slim dependency-version: 0.16.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: minor ... Signed-off-by: dependabot[bot] <support@github.com>
2025-05-30[upd] web-client (simple): Bump the minor groupdependabot[bot]
Bumps the minor group in /client/simple with 2 updates: [globals](https://github.com/sindresorhus/globals) and [stylelint](https://github.com/stylelint/stylelint). Updates `globals` from 16.1.0 to 16.2.0 - [Release notes](https://github.com/sindresorhus/globals/releases) - [Commits](https://github.com/sindresorhus/globals/compare/v16.1.0...v16.2.0) Updates `stylelint` from 16.19.1 to 16.20.0 - [Release notes](https://github.com/stylelint/stylelint/releases) - [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md) - [Commits](https://github.com/stylelint/stylelint/compare/16.19.1...16.20.0) --- updated-dependencies: - dependency-name: globals dependency-version: 16.2.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor - dependency-name: stylelint dependency-version: 16.20.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor ... Signed-off-by: dependabot[bot] <support@github.com>
2025-05-30[l10n] update translations from Weblatesearxng-bot
0f55f2438 - 2025-05-29 - sandijs <sandijs@noreply.codeberg.org> 109f7dcb8 - 2025-05-26 - ngf <ngf@noreply.codeberg.org> d2ba9b3d0 - 2025-05-26 - artnay <artnay@noreply.codeberg.org> 33c6f23bf - 2025-05-26 - realkendrick_fr <realkendrick_fr@noreply.codeberg.org>
2025-05-29[upd] web-client (simple): Bump the minor groupdependabot[bot]
Bumps the minor group in /client/simple with 4 updates: [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js), [eslint](https://github.com/eslint/eslint), [sharp](https://github.com/lovell/sharp) and [webpack](https://github.com/webpack/webpack). Updates `@eslint/js` from 9.26.0 to 9.27.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/commits/v9.27.0/packages/js) Updates `eslint` from 9.26.0 to 9.27.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md) - [Commits](https://github.com/eslint/eslint/compare/v9.26.0...v9.27.0) Updates `sharp` from 0.34.1 to 0.34.2 - [Release notes](https://github.com/lovell/sharp/releases) - [Commits](https://github.com/lovell/sharp/compare/v0.34.1...v0.34.2) Updates `webpack` from 5.99.8 to 5.99.9 - [Release notes](https://github.com/webpack/webpack/releases) - [Commits](https://github.com/webpack/webpack/compare/v5.99.8...v5.99.9) --- updated-dependencies: - dependency-name: "@eslint/js" dependency-version: 9.27.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor - dependency-name: eslint dependency-version: 9.27.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: minor - dependency-name: sharp dependency-version: 0.34.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: minor - dependency-name: webpack dependency-version: 5.99.9 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: minor ... Signed-off-by: dependabot[bot] <support@github.com>
2025-05-29[fix] plugins: currency processor bugMarkus Heiser
Fix C&P typo from https://github.com/searxng/searxng/pull/4836 Closes: https://github.com/searxng/searxng/issues/4861
2025-05-29[data] update searx.data - update_ahmia_blacklist.pysearxng-bot
2025-05-29[data] update searx.data - update_firefox_version.pysearxng-bot
2025-05-29[data] update searx.data - update_wikidata_units.pysearxng-bot
2025-05-29[data] update searx.data - update_currencies.pysearxng-bot
2025-05-29[data] update searx.data - update_engine_traits.pysearxng-bot
2025-05-29[data] update searx.data - update_engine_descriptions.pysearxng-bot
2025-05-28[fix] presearch: reuse response cookies from token extractionBnyro
Why? - presearch requires the response cookies of the first request to be sent within the second request - otherwise we miss auth information and the engine doesn't work Related: - https://github.com/searxng/searxng/pull/4858 - closes https://github.com/searxng/searxng/issues/4854 Co-authored-by: Aadniz <8147434+Aadniz@users.noreply.github.com>
2025-05-26[chore] il post: disable by defaultBnyro
2025-05-25[build] /staticBnyro
2025-05-25[fix] search: autocomplete focus on results pageBnyro
This has been a regression introduced with the removal of the unmaintained autocomplete.js library. We should only focus the search bar on the main search page at `/` and not at the results page located at `/search`. I'm not sure if there's a better way to figure out if we're on the results page than checking if the id of the main element is `#main_results`, checking the path obviously isn't a better solution because it can differ depending on the instance / reverse proxy / .... - related to https://github.com/searxng/searxng/commit/32823ecb69b115a6726475d6421f0a1c0327fafa - closes https://github.com/searxng/searxng/issues/4846
2025-05-25[mod] ci: exclude some workflows from forks (#4849)Ivan Gabaldon
Excludes some workflows/jobs unneeded on forks. Closes https://github.com/searxng/searxng/issues/4847
2025-05-25[mod] data: implement a simple currencies (SQL) database (#4836)Markus Heiser
To reduce the memory footprint, this patch no longer loads the JSON data completely into memory. Instead, there is an SQL database based on `ExpireCacheSQLite`. The class CurrenciesDB is a simple DB application that encapsulates the DB (queries and initialization) and provides convenient methods like `name_to_iso4217` and `iso4217_to_name`. Related: - https://github.com/searxng/searxng/discussions/1892 - https://github.com/searxng/searxng/pull/3458#issuecomment-2900807671 - https://github.com/searxng/searxng/pull/4650 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-25[l10n] update translations from Weblate (#4840)github-actions[bot]
51e0a154c - 2025-05-22 - Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org> 256b8cb8e - 2025-05-16 - wetinee <wetinee@noreply.codeberg.org> ac12b76a8 - 2025-05-16 - wetinee <wetinee@noreply.codeberg.org> Co-authored-by: searxng-bot <searxng-bot@users.noreply.github.com>
2025-05-24[mod] engines: Yahoo in different languages (#4826)Markus Heiser
BTW fix issue reported in [1] [1] https://github.com/searxng/searxng/pull/4814#issuecomment-2896948787 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-05-24[fix] searx.network: don't trigger DeprecationWarning (#4845)Alexandre Flament
Avoid a confusing warning: DeprecationWarning: Setting per-request cookies=<...> is being deprecated Code based on httpx unit test [1] [1] https://github.com/encode/httpx/blob/6a99f6f2b3a638719f70200de9983f80d618ee1c/tests/client/test_cookies.py#L123-L137 Closes: https://github.com/searxng/searxng/issues/4833
2025-05-23[fix] preferences: description not localized for all UI languages (#4844)Markus Heiser
The previous implementation for determining the description of an engine did not take into account that the UI languages ​​can also have a region tag and/or a script tag: el-GR: Ελληνικά, Ελλάδα (Greek, Greece) fa-IR: فارسی, ایران (Persian, Iran) nb-NO: Norsk bokmål, Norge (Norwegian bokmål, Norway) nl-BE: Nederlands, België (Dutch, Belgium) pt-BR: Português, Brasil (Portuguese, Brazil) zh-HK: 中文, 中國香港特別行政區 (Chinese, Hong Kong SAR China) zh-Hans-CN: 中文, 中国 (Chinese, China) zh-Hant-TW: 中文, 台灣 (Chinese, Taiwan) Closes: https://github.com/searxng/searxng/issues/4842 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-23[fix] ddg engine: IndexError exception is raised on empty contend (#4843)Markus Heiser
Sometimes (e.g. when ddg does not have a result item) there is no content and the engine will fail with an IndexError: * Error: IndexError * Percentage: 10 * Parameters: `()` * File name: `searx/engines/duckduckgo.py:375` * Function: `response` * Code: `item["content"] = extract_text(eval_xpath(div_result, './/a[contains(@class, "result__snippet")]')[0])` Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-23[refactor] duckduckgo engine: improve request logic and code structure (#4837)useralias
Changes: - Add trailing slash to base URL to prevent potential redirects - Remove advanced search syntax filtering (no longer guarantees a CAPTCHA) - Correct pagination offset calculation: Page 2 now starts at offset 10, subsequent pages use 10 + (n-2)*15 formula instead of the previous broken 20 + (n-2)*50 calculation that caused CAPTCHAs - Restructure request parameter building to better match a real request - "kt" cookie is no longer an empty string if the language/region is "all" - Group related parameter assignments together - Add header logging to debugging output Related: - https://github.com/searxng/searxng/issues/4824
2025-05-22[fix] searx.data: fetch-traits - z-library (httpx.ConnectError) (#4835)Markus Heiser
There is currently no known z-library, and all known URLs are dead [1]. To avoid interrupting automated updates, a connection error to a z-library is treated as a *known error*, and the old properties of the z-library are retained. [1] https://github.com/searxng/searxng/issues/3610 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-22[mod] searx.data: lazy load of the data objects (databases) (#4834)Markus Heiser
In the previous implementation, all databases were loaded into memory when importing the searx.data package, regardless of whether they were ever needed. Regardless of this, it is an antipattern to load entire databases into memory when importing a package or module; databases should be loaded when needed. Lazy loading is a first step toward improving memory usage and also improves performance when setting up the runtime environment. Building on this, subsequent PRs will be able to further optimize memory behavior, e.g., by using a real database application such as the one already available via searx.cache.ExpireCache Related: - https://github.com/searxng/searxng/discussions/1892 - https://github.com/searxng/searxng/pull/3458 - https://github.com/searxng/searxng/pull/4650 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-22[build] /staticMarkus Heiser
2025-05-22[refactor] search.js: use custom auto completion implementationBnyro
The previously used library is unmaintained for 6 years now [1] and the solution had know issues [2][3] [1] https://github.com/searxng/searxng/pull/4284#discussion_r1954493434 [2] https://github.com/searxng/searxng/pull/4318#issuecomment-2731576657 [3] https://github.com/privau/searxng/issues/56
2025-05-21[feat] engines: add Naver engine (#4573)Zhijie He
Refactor Naver engine (Web, News, Images, Videos, Autocomplete) - ref: https://search.naver.com/ - lang: `ko` - Wikidata: https://www.wikidata.org/wiki/Q485639 Co-authored-by: Bnyro <bnyro@tutanota.com>
2025-05-21[fix] engines: disable those with known issues (#4813)Markus Heiser
- z-library https://github.com/searxng/searxng/issues/3610 - library of congress: https://github.com/searxng/searxng/issues/4810 - qwant: https://github.com/searxng/searxng/issues/3929 Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2025-05-21[mod] container: remove -e flagIvan Gabaldon
Temporarily remove the -e flag from set to prevent entrypoint.sh from stopping execution if any command returns a non-zero status. This doesn't solve anything but relaxes the script checks. Related https://github.com/searxng/searxng/issues/4818