<feed xmlns='http://www.w3.org/2005/Atom'>
<title>searxng/setup.py, branch master</title>
<subtitle>Free internet metasearch engine which aggregates results from various search services and databases</subtitle>
<id>https://git.ikboikov.net/searxng/atom?h=master</id>
<link rel='self' href='https://git.ikboikov.net/searxng/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/'/>
<updated>2026-02-22T13:44:21Z</updated>
<entry>
<title>[mod] drop SearXNG's checker (#5767)</title>
<updated>2026-02-22T13:44:21Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarIT.de</email>
</author>
<published>2026-02-22T13:44:21Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=191818b865b19270c8c38d905141356a6ba01d9a'/>
<id>urn:sha1:191818b865b19270c8c38d905141356a6ba01d9a</id>
<content type='text'>
To date, there is no analysis for the checker that could be evaluated in any
meaningful way.

- https://github.com/searxng/searxng/issues/3407
- https://github.com/searxng/searxng/pull/3312

The checker would need to be completely redesigned, but even then, its
usefulness and the maintenance required for it would be disproportionate.

TBH: In its current form, it is useless and only consumes resources and
causes the engines to be blocked, because these tests (query terms) come
from *hundreds* of instances and could be interpreted as bot attacks.

Related issues: [search.checker](https://github.com/searxng/searxng/issues?q=label%3A%22search.checker%22)

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;</content>
</entry>
<entry>
<title>[mod] setup.py package_data - use recursive globs for package_data</title>
<updated>2025-12-04T14:04:36Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2025-12-04T12:00:15Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=8c631b92ce3fcbfa7a06c7dee0b9c9055d22f520'/>
<id>urn:sha1:8c631b92ce3fcbfa7a06c7dee0b9c9055d22f520</id>
<content type='text'>
To test this patch build a python wheel::

    $ make clean py.build

and llok out if you are missing any files in the wheel::

    $ unzip -l dist/searxng-*-py3-none-any.whl

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[fix] py: sxng wheel build still broken</title>
<updated>2025-12-04T14:04:36Z</updated>
<author>
<name>leaty</name>
<email>dev@leaty.net</email>
</author>
<published>2025-12-03T12:05:30Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=0ebac144f561fdbc127de826fc060c2bc3d8e4ea'/>
<id>urn:sha1:0ebac144f561fdbc127de826fc060c2bc3d8e4ea</id>
<content type='text'>
Directories chunk and img were not included

Signed-off-by: leaty &lt;dev@leaty.net&gt;
</content>
</entry>
<entry>
<title>[fix] py: sxng wheel build broken (#5510)</title>
<updated>2025-12-03T11:21:18Z</updated>
<author>
<name>Ivan Gabaldon</name>
<email>igabaldon@inetol.net</email>
</author>
<published>2025-12-03T11:21:18Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=5450d22796354d5f7b5358debbb3d7837990a8ee'/>
<id>urn:sha1:5450d22796354d5f7b5358debbb3d7837990a8ee</id>
<content type='text'>
Include everything inside `static/themes/` on SearXNG wheel creation.

```
2025-12-03 10:40:43,509 INFO:wheel: adding
'searx/static/themes/simple/manifest.json' 2025-12-03 10:40:43,509
INFO:wheel: adding 'searx/static/themes/simple/sxng-core.min.js'
2025-12-03 10:40:43,509 INFO:wheel: adding
'searx/static/themes/simple/sxng-core.min.js.map' 2025-12-03
10:40:43,510 INFO:wheel: adding
'searx/static/themes/simple/sxng-ltr.min.css' 2025-12-03 10:40:43,510
INFO:wheel: adding 'searx/static/themes/simple/sxng-rss.min.css'
2025-12-03 10:40:43,511 INFO:wheel: adding
'searx/static/themes/simple/sxng-rtl.min.css' 2025-12-03 10:40:43,511
INFO:wheel: adding 'searx/static/themes/simple/chunk/13gvpunf.min.js'
2025-12-03 10:40:43,511 INFO:wheel: adding
'searx/static/themes/simple/chunk/13gvpunf.min.js.map' 2025-12-03
10:40:43,516 INFO:wheel: adding
'searx/static/themes/simple/chunk/BAcZkB_P.min.js' 2025-12-03
10:40:43,548 INFO:wheel: adding
'searx/static/themes/simple/chunk/BAcZkB_P.min.js.map' 2025-12-03
10:40:43,551 INFO:wheel: adding
'searx/static/themes/simple/chunk/CHkLfdMs.min.js' 2025-12-03
10:40:43,561 INFO:wheel: adding
'searx/static/themes/simple/chunk/CHkLfdMs.min.js.map' 2025-12-03
10:40:43,562 INFO:wheel: adding
'searx/static/themes/simple/chunk/CyyZ9XJS.min.js' 2025-12-03
10:40:43,562 INFO:wheel: adding
'searx/static/themes/simple/chunk/CyyZ9XJS.min.js.map' 2025-12-03
10:40:43,562 INFO:wheel: adding
'searx/static/themes/simple/chunk/DBO1tjH7.min.js' 2025-12-03
10:40:43,562 INFO:wheel: adding
'searx/static/themes/simple/chunk/DBO1tjH7.min.js.map' 2025-12-03
10:40:43,562 INFO:wheel: adding
'searx/static/themes/simple/chunk/Db5v-hxx.min.js' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/Db5v-hxx.min.js.map' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/DxJxX49r.min.js' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/DxJxX49r.min.js.map' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/KPZlR0ib.min.js' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/KPZlR0ib.min.js.map' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/Q2SRo2ED.min.js' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/Q2SRo2ED.min.js.map' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/gZqIRpW1.min.js' 2025-12-03
10:40:43,563 INFO:wheel: adding
'searx/static/themes/simple/chunk/gZqIRpW1.min.js.map' 2025-12-03
10:40:43,564 INFO:wheel: adding
'searx/static/themes/simple/img/empty_favicon.svg' 2025-12-03
10:40:43,564 INFO:wheel: adding
'searx/static/themes/simple/img/favicon.png' 2025-12-03 10:40:43,564
INFO:wheel: adding 'searx/static/themes/simple/img/favicon.svg'
2025-12-03 10:40:43,564 INFO:wheel: adding
'searx/static/themes/simple/img/img_load_error.svg' 2025-12-03
10:40:43,564 INFO:wheel: adding
'searx/static/themes/simple/img/searxng.png' 2025-12-03 10:40:43,564
INFO:wheel: adding 'searx/static/themes/simple/img/searxng.svg'
2025-12-03 10:40:43,564 INFO:wheel: adding
'searx/static/themes/simple/img/select-dark.svg' 2025-12-03 10:40:43,564
INFO:wheel: adding 'searx/static/themes/simple/img/select-light.svg'
```</content>
</entry>
<entry>
<title>[enh] container: build with uv (#5199)</title>
<updated>2025-09-14T08:36:21Z</updated>
<author>
<name>Ivan Gabaldon</name>
<email>igabaldon@inetol.net</email>
</author>
<published>2025-09-14T08:36:21Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=a0d2ecf43466083925291e749ab9c2a451f6963d'/>
<id>urn:sha1:a0d2ecf43466083925291e749ab9c2a451f6963d</id>
<content type='text'>
This commit replaces `pip` in container builds with `uv` pip compat
with a 1:1 parity. The only thing that changes is the installation speed of the
wheels, which seems to be considerably faster, although I haven't been able to
properly quantify this yet.

uv also gives us more tools to manage the cache. We can revert the prior cache
changes in `container.yml` as we won't have duplicated wheels anymore.</content>
</entry>
<entry>
<title>[mod] Revision of the favicon solution</title>
<updated>2024-10-05T06:18:28Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2024-08-19T15:47:54Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=7ab577a1fba43578b77f56b76275d0e65d03b318'/>
<id>urn:sha1:7ab577a1fba43578b77f56b76275d0e65d03b318</id>
<content type='text'>
All favicons implementations have been documented and moved to the Python
package:

    searx.favicons

There is a configuration (based on Pydantic) for the favicons and all its
components:

    searx.favicons.config

A solution for caching favicons has been implemented:

    searx.favicon.cache

If the favicon is already in the cache, the returned URL is a data URL [1]
(something like `data:image/png;base64,...`).  By generating a data url from
the FaviconCache, additional HTTP roundtripps via the favicon_proxy are saved:

    favicons.proxy.favicon_url

The favicon proxy service now sets a HTTP header "Cache-Control: max-age=...":

    favicons.proxy.favicon_proxy

The resolvers now also provide the mime type (data, mime):

    searx.favicon.resolvers

[1] https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[mod] pylint all files with one profile / drop PYLINT_SEARXNG_DISABLE_OPTION</title>
<updated>2024-03-11T13:55:38Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2024-03-11T13:06:26Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=542f7d0d7bd1a12e1884ba4a1508b40e2514d472'/>
<id>urn:sha1:542f7d0d7bd1a12e1884ba4a1508b40e2514d472</id>
<content type='text'>
In the past, some files were tested with the standard profile, others with a
profile in which most of the messages were switched off ... some files were not
checked at all.

- ``PYLINT_SEARXNG_DISABLE_OPTION`` has been abolished
- the distinction ``# lint: pylint`` is no longer necessary
- the pylint tasks have been reduced from three to two

  1. ./searx/engines -&gt; lint engines with additional builtins
  2. ./searx ./searxng_extra ./tests -&gt; lint all other python files

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[fix] setup.py - needed bugfixes to build a valid package</title>
<updated>2024-02-24T06:22:26Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2024-02-23T15:49:17Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=d72fa99bd0a4d702a55188b07919ce5a764b1d6c'/>
<id>urn:sha1:d72fa99bd0a4d702a55188b07919ce5a764b1d6c</id>
<content type='text'>
Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>[mod] replace /help by /info pages and include pages in project docs</title>
<updated>2022-03-12T10:36:31Z</updated>
<author>
<name>Markus Heiser</name>
<email>markus.heiser@darmarit.de</email>
</author>
<published>2022-03-12T09:18:08Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=b1912607ae9783d6ccf648bd7706a64eca5bedb9'/>
<id>urn:sha1:b1912607ae9783d6ccf648bd7706a64eca5bedb9</id>
<content type='text'>
This patch implements a bolierplate to share content from info-pages of the
SearXNG instance (URL /info) with the project documentation (path /docs/user).

The info pages are using Markdown (CommonMark), to include them in the project
documentation (reST) the myst-parser [1] is used in the Sphinx-doc build chain.

If base_url is known (defined in settings.yml) links to the instance are also
inserted into the project documentation::

    searxng_extra/docs_prebuild

[1] https://www.sphinx-doc.org/en/master/usage/markdown.html

Signed-off-by: Markus Heiser &lt;markus.heiser@darmarit.de&gt;
</content>
</entry>
<entry>
<title>Fix setup.py help folder</title>
<updated>2022-01-29T14:33:37Z</updated>
<author>
<name>Gaspard d'Hautefeuille</name>
<email>github@dhautefeuille.eu</email>
</author>
<published>2022-01-29T14:33:37Z</published>
<link rel='alternate' type='text/html' href='https://git.ikboikov.net/searxng/commit/?id=1df70b6aeebd1035527146d9cf170a30b996e0e7'/>
<id>urn:sha1:1df70b6aeebd1035527146d9cf170a30b996e0e7</id>
<content type='text'>
</content>
</entry>
</feed>
