Commit Graph
100 Commits
Author SHA1 Message Date
Alexandre Flament 5742267e35 [fix] update .gitattributes 2021-06-22 20:34:39 +02:00
Alexandre Flament 915f3b0bdd [fix] Makefile: remove themes.bootstrap 2021-06-22 20:34:25 +02:00
Alexandre Flament 2530576f24 Merge pull request #157 from searxng/mod_static_build
static build: move generated files to searx/static/themes/*/src/generated
2021-06-22 10:36:19 +02:00
Alexandre Flament 04492b76de [themes] ignore packages-lock.json 2021-06-22 08:17:06 +02:00
Alexandre Flament 2bc9b00cd7 Static build 2021-06-22 08:15:17 +02:00
Alexandre Flament dca3bcca9e [mod] simple theme: include fonts
"npm run webfont" to build the fonts directory.
It requires fontforge and ttfautohint distro packages.

partial revert of commit 7137d2893f
2021-06-22 08:15:17 +02:00
Alexandre Flament d20f6a1f19 [mod] make themes.all update pygments*.less
Add a searx/static/themes/*/src/generated empty folder
2021-06-22 08:15:11 +02:00
Alexandre Flament fb2f4ba902 Merge pull request #164 from searxng/docker_upgrade_alpine
Docker: upgrade to alpine 3.14
2021-06-22 07:27:19 +02:00
Alexandre Flament f3e56836d6 Merge pull request #165 from return42/patch-google
improve & document google engine
2021-06-21 20:12:07 +02:00
Alexandre Flament ef12c41206 Docker: upgrade to alpine 3.14
Uses Python version 3.9 instead of 3.8
2021-06-21 18:03:54 +02:00
Alexandre Flament f4da4bafa7 Merge pull request #160 from searxng/google_mobile_ui
[experimental] google: use the mobile UI
2021-06-21 14:56:50 +02:00
Alexandre Flament bf5f505d74 Merge pull request #161 from return42/fix-typo-manage
[fix] py.build - fix small typo in the build message
2021-06-21 14:55:28 +02:00
Alexandre Flament 7a5c36408a [mod] google: add "use_mobile_ui" parameter to use mobile endpoint.
disable by default, it has to be enabled in settings.yml

related to  #159
2021-06-21 14:52:04 +02:00
Alexandre Flament bb3e67f72b [mod] simple theme: normalize.css becomes a packages.json dependency 2021-06-21 08:28:29 +02:00
Alexandre Flament 0e3a87b73a Merge pull request #158 from return42/fix-node.clean
[fix] node.clean - ignore npm dependencies when npm is not installed
2021-06-20 07:20:38 +02:00
Alexandre Flament eb6832eb95 Merge pull request #156 from return42/fix-google-news
Fix google news
2021-06-18 14:01:03 +02:00
Alexandre Flament 881659ca9d [mod] oscar theme: /preferences : HTML detail order match visual tabs
First details about the general tab, then detail about UI tab, etc...
No functionnal change
2021-06-17 15:29:07 +02:00
Alexandre Flament f83b64270c [mod] oscar theme /preferences: reorganize the preferences
close #115
2021-06-17 15:29:07 +02:00
Alexandre Flament 92c68fe636 Merge pull request #151 from searxng/mod_oscar
make themes: 2 node_modules directories instead of 3
2021-06-17 10:46:50 +02:00
Alexandre Flament a447c58218 Merge pull request #152 from return42/fix-typo
[fix] typo in a searx/settings.yml
2021-06-16 17:08:35 +02:00
Alexandre Flament 14ba56fd1a [mod] make node.clean: call the "clean" script from the packages.json
The dependencies and build process are described in the gruntfiles.js and packages.json files.
It makes sense to move the clean up to these files too.
2021-06-16 16:04:58 +02:00
Alexandre Flament c013256881 [mod] remove common grunt install
Before this commit, there are 3 node_modules directory:
* one in .
* two others in ./searx/statics/themes/*

This is no desirable:
* it declares the npm depdenencies in the shell script.
* dependabot can't updates theses dependencies.
* this is a not standard way to build a package (two different locations for the dependencies).

With this commit and the PR  #150 there is one unique node_modules directory per theme.
2021-06-16 15:39:32 +02:00
Alexandre Flament fdc367d58b Merge pull request #149 from return42/doc-install-plg
[doc] admin manual - describe installation of external plugins
2021-06-16 14:44:56 +02:00
Alexandre Flament 85033f3d09 Static build 2021-06-16 14:30:46 +02:00
Alexandre Flament 7137d2893f [mod] simple theme: remove src/less/ion.less
This file is generated by webfont.
* It is now generated as searx/static/themes/simple/ion.less
* It is generated before the .less compilation.
* .gitignore includes this file

Add two new package depedencies: fontforge ttfautohint
See utils/searx.sh
2021-06-16 14:30:09 +02:00
Alexandre Flament e3ebfd41d7 [mod] simple theme: autocomplete-js becomes a packages.json dependency
Update to version 2.7.1
2021-06-16 12:44:07 +02:00
Alexandre Flament b4a47cacd8 [mod] simple theme: leaflet becomes a packages.json dependency
the build of the themes updates:
* js/leaflet.js ( was leaflet/leaflet.js )
* css/leaflet.css ( was leaflet/leaflet.css )
* css/images ( was leaflet/images )
2021-06-16 12:44:07 +02:00
Alexandre Flament 6288b549e2 [mod] simple theme: move magnet.svg to src/fonts
see https://github.com/searx/searx/pull/1109
2021-06-16 12:44:07 +02:00
Alexandre Flament 6b80c57a3c [mod] simple theme: move source files to the src directory 2021-06-16 12:38:06 +02:00
Alexandre Flament 49ea5b7644 Static build 2021-06-16 09:16:37 +02:00
Alexandre Flament 9108c90f0e [mod] simple theme: update dependencies 2021-06-16 09:16:02 +02:00
Alexandre Flament 8cab37229f Merge pull request #144 from return42/fix-yamllint
[yamllint] ./utils/templates/etc/searx/*.yml
2021-06-13 10:15:53 +02:00
Alexandre Flament 52db47a1c9 Merge pull request #134 from searxng/google-default-language
[enh] google engine: supports "default language"
2021-06-11 17:00:12 +02:00
Alexandre Flament 1c67b6aece [enh] google engine: supports "default language"
Same behaviour behaviour than Whoogle [1].  Only the google engine with the
"Default language" choice "(all)"" is changed by this patch.

When searching for a locate place, the result are in the expect language,
without missing results [2]:

  > When a language is not specified, the language interpretation is left up to
  > Google to decide how the search results should be delivered.

The query parameters are copied from Whoogle.  With the ``all`` language:

- add parameter ``source=lnt``
- don't use parameter ``lr``
- don't add a ``Accept-Language`` HTTP header.

The new signature of function ``get_lang_info()`` is:

    lang_info = get_lang_info(params, lang_list, custom_aliases, supported_any_language)

Argument ``supported_any_language`` is True for google.py and False for the other
google engines.  With this patch the function now returns:

- query parameters: ``lang_info['params']``
- HTTP headers: ``lang_info['headers']``
- and as before this patch:
  - ``lang_info['subdomain']``
  - ``lang_info['country']``
  - ``lang_info['language']``

[1] https://github.com/benbusby/whoogle-search
[2] https://github.com/benbusby/whoogle-search/releases/tag/v0.5.4
2021-06-10 10:22:01 +02:00
Alexandre Flament 73dbee45a6 Merge pull request #90 from searxng/enh-osm-engine
[enh] improve openstreetmap engine
2021-06-10 09:30:41 +02:00
Alexandre Flament 68df982e21 Merge pull request #135 from searxng/refactor-webapp
Refactor webapp
2021-06-10 08:11:15 +02:00
Alexandre Flament 314e09091b Merge pull request #138 from return42/fix-doc
[fix] section "Overrides" in engine's documentation
2021-06-10 08:10:50 +02:00
Alexandre Flament 2e5d823162 [fix] searx/data/__init__.py: rename __init__ as __all__ 2021-06-09 18:08:23 +02:00
Alexandre Flament c75425655f [enh] openstreetmap / map template: improve results
implements ideas described in #69

* update the engine
* use wikidata
* update map.html template
2021-06-09 18:08:23 +02:00
Alexandre Flament 92c8a8829f [fix] strip spaces from searx user agent
h11 (used by httpx) rejects HTTP request with a trailing space in HTTP headers
2021-06-09 18:08:23 +02:00
Alexandre Flament 2a109d0a5f [mod] refactor searx.webapp.render
render automatically adds these variables to the template context:
* advanced_search
* all_categories
* categories
	before render was checking if the variable was already set
	but it is actually never set by the callers
2021-06-08 15:54:11 +02:00
Alexandre Flament 70bbd14b1a [mod] move hook to set Unix thread name into searx.unixthreadname
requires setproctitle (but optional)
2021-06-08 15:54:11 +02:00
Alexandre Flament 0e23113f70 [mod] remove unused filter searx.webapp.extract_domain
it was used in the pix-art theme
2021-06-08 15:54:11 +02:00
Alexandre Flament cfa07b0a9a [mod] refactor searx.webapp.render
no functional change, reorder declarations
2021-06-08 15:54:11 +02:00
Alexandre Flament 91856e8f6a [mod] refactor searx.webapp.render: remove unused parameters 2021-06-08 15:54:11 +02:00
Alexandre Flament 15567955b4 [mod] remove check of Python 2. 2021-06-08 15:54:11 +02:00
Alexandre Flament aedf0aa5fe [mod] remove searx.webapp.get_base_url function
see the result of:
git grep "base_url" searx/templates
"base_url" is not used any more.
2021-06-08 15:54:11 +02:00
Alexandre Flament eeb0998787 [mod] refactor: move Flask proxy fix to searx.flaskfix module 2021-06-08 15:54:11 +02:00
Alexandre Flament 5f76238d5c Merge pull request #105 from return42/yaml
[enh] add test.yamllint - lint yaml files
2021-06-05 20:36:03 +02:00
Alexandre Flament cf2b549967 Update engines_languages.json 2021-06-04 16:17:22 +02:00
Alexandre Flament 8194db4e21 [fix] peertube fetch supported languages
close #127
2021-06-04 16:17:20 +02:00
Alexandre Flament dddf3e2be2 [mod] "make docs" doesn't initialize the engines
avoid external HTTP requests with "make docs"
2021-06-04 11:26:37 +02:00
Alexandre Flament cac6562a9e Merge pull request #129 from searxng/dependabot/pip/master/certifi-2021.5.30
Bump certifi from 2020.12.05 to 2021.5.30
2021-06-04 10:23:56 +02:00
Alexandre Flament a7d575c099 [enh] flask debug mode: reload the app when searx/settings.yml changes 2021-06-03 12:03:38 +02:00
Alexandre Flament 7457f3fe40 Merge pull request #124 from return42/searx-merge
merge redis offline engine from searx
2021-06-02 12:35:33 +02:00
Alexandre Flament 3ce1b40512 Merge pull request #113 from searxng/remove-overpass
[mod] remove overpass API call
2021-06-01 18:10:05 +02:00
Alexandre Flament a89b823f8d [mod] remove overpass API call
prepare the code the PR #90
2021-06-01 17:52:49 +02:00
Alexandre Flament ee83c99d2b Merge pull request #116 from searxng/minor-refactoring-searx-engines
[mod] searx.engines.__init__: refactoring
2021-06-01 16:40:38 +02:00
Alexandre Flament 8375974dff [fix] sys.exit(1) when there is duplicate engine name 2021-06-01 16:37:20 +02:00
Alexandre Flament 70a9208972 [mod] searx.engines.__init__: refactoring 2021-06-01 16:32:40 +02:00
Alexandre Flament e3f4a77311 Merge pull request #110 from searxng/mod-default-settings
[mod] move all default settings into searx.settings_defaults
2021-06-01 16:13:04 +02:00
Alexandre Flament e0af67f0af Merge pull request #123 from searxng/fix_update_languages
[fix] searx_extra/update/update_languages.py
2021-06-01 10:07:27 +02:00
Alexandre Flament 925c21ce42 Merge pull request #122 from searxng/update_data_update_ahmia_blacklist.py
Update searx.data - update_ahmia_blacklist.py
2021-06-01 10:03:50 +02:00
Alexandre Flament 3266738e7a Merge pull request #121 from searxng/update_data_update_currencies.py
Update searx.data - update_currencies.py
2021-06-01 10:03:35 +02:00
Alexandre Flament 54ae95b95b Merge pull request #120 from searxng/update_data_update_wikidata_units.py
Update searx.data - update_wikidata_units.py
2021-06-01 10:03:22 +02:00
Alexandre Flament 414ad5b733 Merge pull request #119 from searxng/update_data_update_firefox_version.py
Update searx.data - update_firefox_version.py
2021-06-01 10:03:09 +02:00
Alexandre Flament fa0ae252b0 [fix] searx_extra/update/update_languages.py
* call searx.engines.load_engines (instead of initialize_engines)
* set timeout to 10 seconds
* remove some dead code
2021-06-01 10:01:39 +02:00
Alexandre Flament 6fa114c9ba [mod] settings_default: remove searx.search.max_request_timeout global variable 2021-06-01 08:10:15 +02:00
Alexandre Flament 4b07df62e5 [mod] move all default settings into searx.settings_defaults 2021-06-01 08:10:15 +02:00
Alexandre Flament 856729226d Merge pull request #118 from searxng/fix-mankier
[fix] mankier: fix paging
2021-05-31 22:49:11 +02:00
Alexandre Flament 6ca74386d6 [fix] mankier: fix paging
See https://github.com/searxng/searxng/pull/111#issuecomment-851641967
2021-05-31 22:33:40 +02:00
Alexandre Flament 6793af7608 Merge pull request #117 from return42/add-docker-hub
[enh] add engine - Docker Hub
2021-05-31 17:47:08 +02:00
Alexandre Flament 737f5f05d2 Merge pull request #114 from searxng/only-files-category-for-bittorent
[mod] the bittorent search engines are available only in the files category
2021-05-30 07:01:49 +02:00
Alexandre Flament 1113f7e616 [mod] the bittorent search engines are available only in the files category
related to #101
2021-05-29 16:14:19 +02:00
Alexandre Flament e239369f1f Merge pull request #109 from return42/sql-engines
Merge MySQL and PostgreSQL from searx
2021-05-29 08:34:19 +02:00
Alexandre Flament c22c7cf35b Merge pull request #111 from return42/mankier
[enh] add engine ManKier (JSON) / ManKier: Linux man pages
2021-05-29 08:33:54 +02:00
Alexandre Flament a8b0705816 Merge pull request #112 from return42/pypi
[enh] add engine PyPi (XPath)
2021-05-29 08:33:41 +02:00
Alexandre Flament da111f7fec Merge pull request #108 from return42/dogpile
[enh] add metasearch engin dogpile.com (XPath)
2021-05-28 15:56:01 +02:00
Alexandre Flament 54e783f3b1 Merge pull request #107 from return42/wikimini
[enh] add engine Wikimini (fr.wikimini.org)
2021-05-28 14:47:38 +02:00
Alexandre Flament 83ccf7b04d Merge pull request #99 from return42/webapp-misc
[enh] add settings option to enable/disable search formats
2021-05-28 13:26:48 +02:00
Alexandre Flament b48b4c93d5 Merge pull request #100 from return42/webapp-pylint
[pylint] webapp.py
2021-05-27 17:04:32 +02:00
Alexandre Flament b1da97d092 Merge pull request #96 from return42/unsplash
lint & fix unsplash engine
2021-05-27 14:58:59 +02:00
Alexandre Flament 2ea34a3c36 [enh] add offline engine for sqlite database
To test & demonstrate this implementation download:

  https://liste.mediathekview.de/filmliste-v2.db.bz2

and unpack into searx/data/filmliste-v2.db, in your settings.yml define a sqlite
engine named "demo"::

    - 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

Query to test: "!demo concert"

This is a rewrite of the implementation from commit [1]

[1] searx/searx@8e90a21

Suggested-by: @virtadpt searx/searx#2808
2021-05-27 14:27:11 +02:00
Alexandre Flament 7c76cef746 Merge pull request #94 from return42/pylint-network
Pylint searx.network
2021-05-26 18:35:29 +02:00
Alexandre Flament 8283ce3d79 Merge pull request #92 from return42/xpath-misc
Xpath enhencements
2021-05-25 09:06:06 +02:00
Alexandre Flament 99aaf86b73 [fix] offline engines: fix templates /stats and /preferences 2021-05-22 15:17:18 +02:00
Alexandre Flament 3014463fed [fix] metrics: processing time = total time if there is no http time
It was previsouly None

Fix /stats
2021-05-22 15:17:18 +02:00
Alexandre Flament ec83493538 [fix] offline engine: don't crash on time recording 2021-05-22 15:17:18 +02:00
Alexandre Flament 2f76b570ab Merge pull request #86 from searxng/remove-call-to-gc
[mod] remove gc.collect() after each user request
2021-05-21 18:31:04 +02:00
Alexandre Flament 426fadccb3 [mod] remove gc.collect() after each user request 2021-05-21 17:23:18 +02:00
Alexandre Flament 0c1ab0227d Merge pull request #84 from searxng/fix-test-ignore-etc-settings
[fix] unit test: don't load /etc/searx/settings.yml
2021-05-20 13:31:53 +02:00
Alexandre Flament 94e6ed6110 Merge pull request #66 from return42/docker-buildx
review of docker entry point & docker documentation
2021-05-19 17:31:33 +02:00
Alexandre Flament d1cffc55cb [fix] unit test: don't load /etc/searx/settings.yml
Add a new environment variable SEARX_DISABLE_ETC_SETTINGS
to disable loading of /etc/searx/settings.yml

unit tests:
* set SEARX_DISABLE_ETC_SETTINGS to 1
* remove SEARX_SETTINGS_PATH if it exists
2021-05-18 17:23:21 +02:00
Alexandre Flament d255e5637b Merge pull request #81 from return42/csp-bar-graph
[fix] make /stats more CSP compliant
2021-05-18 08:55:56 +02:00
Alexandre Flament da2b0562d4 Merge pull request #83 from return42/fix-archive-is
[fix] engine "archive is" - search_url has been changed
2021-05-18 08:44:34 +02:00
Alexandre Flament 90fe232e08 [fix] webapp.py: pylint: disable=assigning-non-slot for request.*
Note: actually, the code should use flask.g.* instead of request.*
2021-05-14 11:15:35 +02:00
Alexandre Flament 9a383d1533 Merge pull request #67 from searxng/fix-issue-65
[fix] fix usage of docker environment variable INSTANCE_NAME
2021-05-10 08:33:32 +02:00
Alexandre Flament a40daec565 Merge pull request #68 from searxng/mod-docker-upgrade-alpine-version
[mod] Dockerfile: upgrade to Alpine 3.13
2021-05-10 08:32:31 +02:00
Alexandre Flament 8c5cb5039e [mod] Dockerfile: upgrade to Alpine 3.13
See:
* https://alpinelinux.org/posts/Alpine-3.13.0-released.html
* musl>=1.2.1 have a new malloc implementation (mallocng) :
2021-05-09 11:06:07 +02:00
Alexandre Flament b46a3ecfc7 [fix] fix usage of docker environment variable INSTANCE_NAME
INSTANCE_NAME was ignored.

close #65
2021-05-09 11:00:28 +02:00