Commit Graph

3088 Commits

Author SHA1 Message Date
Markus Heiser 949378a07f
Merge pull request #1900 from return42/issue-1898
export build variables / support brands
2020-03-30 14:51:40 +00:00
Markus Heiser 1ae39787c1 Makefile: rename target 'searx.brand' to 'buildenv'
And add 'buildenv' as an first order prerequisite to the main targets:

- install
- run
- docs
- docs-live
- project
- node.env
- docker
- test

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-30 12:23:01 +02:00
Markus Heiser ca65d41da5 [fix] travis: reomve 'make style' from travis build
Commit 8a16903a removes Makefile target style

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 12:22:02 +02:00
Markus Heiser 442b27ac1b bash: use build environment from Makefile
To Makefile target brand, add creation of bash environment in::

  utils/brand.env

In bash scripts (manage.sh) source env by::

  . utils/brand.env

manage.sh help: show GIT_URL and more environment

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 11:41:59 +02:00
Markus Heiser 8a16903a1c make themes: rename 'style' targtes to 'themes' targets
style.legacy could be renamed themes.legacy : it actually builds the files for
the legacy theme, then themes.legacy can be a dependency of themes.  Same for
the other styles.*

Debatable: about style.bootstrap, same convention : theme.bootstrap (even it is
more a toolbox for the oscar theme).

So there is no need to add the missing make styles in the help target.

thanks @dalf:

- https://github.com/asciimoo/searx/pull/1900#discussion_r399160355

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 11:29:57 +02:00
Markus Heiser ec453e0239 [fix] docker 'Error compiling' and 'SyntaxError' messages
The make docker target spits out some SyntaxError.  With this .dockerignore
there is no more error. Explanation:

- the python files are compiled while building the docker image
- a node modules contains some python files
- the python files inside the node module doesn't compile

It raises the fact that node_modules were included in the docker image which
should not happen.  Same the local directory was included.  Dockerfile builds
searx in its own way (without virtualenv)

Thanks @dalf:

- https://github.com/asciimoo/searx/pull/1900#issuecomment-604892737

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 11:06:22 +02:00
Markus Heiser d7523071a0 travis: use build environment from Makefile
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 19:14:07 +01:00
Markus Heiser 1075f58a72 test: move tests from manage.sh to Makefile
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 18:41:45 +01:00
Markus Heiser e7fbefa8bd build: move build styles from manage.sh to Makefile
To build all styles use:

  make styles

To build individual styles use one of:

  make style.legacy
  make style.courgette
  make style.pixart
  make style.bootstrap

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 18:00:07 +01:00
Markus Heiser 6846402d73 .gitignore: make package-lock.json visible
Even if we do not versioning them right now.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 15:35:32 +01:00
Markus Heiser 9717521981 Minor improvements of the HTML *about* page
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 13:45:37 +01:00
Markus Heiser 809e6f7933 make project: re-build generic files of the searx project
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 13:35:17 +01:00
Markus Heiser 00251d7c66 Makefile: add target 'useragents.update' to fetch versions of Firefox
Update searx/data/useragents.json with the most recent versions of Firefox.

BTW: add 'useragents.update' to 'project' target and clean up the Makefile and
remove it from the manage.sh script.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>

closes: https://github.com/asciimoo/searx/issues/1882
2020-03-26 13:32:08 +01:00
Markus Heiser 5d087ee466 Rewrite of the HTL *about* page
The *about* page should only address higher-level issues that are important to
each user.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 13:09:29 +01:00
Markus Heiser 3486613a19 brands: hardcode ISSUE_URL and some links on the about-page
A *brand* of searx is a fork which might have its own design and some special
functions which might bee reasonable in a special context.

In this sense, the fork might have its own documentation but not its own issue
tracker.  The *upstream* of a brand is always https://github.com/asciimoo from
where the brand-fork pulls the master branch regularly.  A fork which has its
own issue tracker is a spin-off and out of the scope of the searx project
itself.  The conclusion is:

- hard code ISSUE_URL (in the Makefile)
- always refer to DOCS_URL
- links in the about page refer to the *upstream* (searx project)
  except DOCS_URL
- "fork me on github" ribbons refer to the *upstream*

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-26 10:58:25 +01:00
Markus Heiser 3381471933 brands: add ISSUE_URL
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 17:48:34 +01:00
Markus Heiser 4d64828237 webapp.py: expose the brand variable in the /config URL.
E.g. helpful for searx-stats2

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 17:28:32 +01:00
Markus Heiser ace7d30aed webapp.py: partial code review (no functional change)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 17:12:02 +01:00
Markus Heiser d471ec86dd Makefile: add target node.env - download & install npm dependencies
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 16:38:52 +01:00
Markus Heiser 2d12f221a7 [fix] docker build: set build argument LABEL_VCS_URL to GIT_URL
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 15:17:11 +01:00
Markus Heiser 3dbade0aed [fix] brands: add GIT_URL variable to the docker build
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 14:50:39 +01:00
Markus Heiser 757ebb5d9f [fix] brands: add variables from build env to grunt process
We have some variables in the build environment which are also needed in the
grunt process when building themes.  Theses variables are relavant if one
creates a fork with its own branding.  We treat these variables under the term
'brands'.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 14:09:47 +01:00
Markus Heiser aaf22baad2 make project: re-build generic files of the searx project
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 12:14:21 +01:00
Markus Heiser f6b29f68a1 [fix] brands: add variables from build env to setup.py
We have some variables in the build environment which are also needed in the
setup.py process.  Theses variables are relavant if one creates a fork with
its own branding.  We treat these variables under the term 'brands'.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 12:03:11 +01:00
Markus Heiser e84fc94300 [fix] brands: add variables from build env to sphinx-doc
We have some variables in the build environment which are also needed in the
sphinx-process.  Theses variables are relavant if one creates a fork with
its own branding.  We treat these variables under the term 'brands'.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 11:51:03 +01:00
Markus Heiser 04c687403e [fix] brands: add variables from build env to jinja templating
We have some variables in the build environment which are also needed in the
templating process.  Theses variables are relavant if one creates a fork with
its own branding.  We treat these variables under the term 'brands'.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-25 11:49:33 +01:00
Adam Tauber 9a2f26d915 [enh] submit search on suggestion select - closes #807 2020-03-23 14:01:33 +01:00
Adam Tauber 65cae85735 [fix] load new page with infinite scroll if there is no scrollbar - fixes #759 2020-03-23 13:05:19 +01:00
Adam Tauber 2621c24cc7 [enh] add clear search button to oscar theme - fixes #454 2020-03-23 12:41:02 +01:00
Adam Tauber 822aee94a2 [fix] remove debug print 2020-03-16 00:22:38 +01:00
Adam Tauber baca55c94e [fix] handle weights in accept language parsing - fixes w3ms en;q=1.0 2020-03-16 00:22:15 +01:00
Adam Tauber 8e727ac77f [fix] update csv unit test 2020-03-13 01:05:02 +01:00
Adam Tauber 58a630308a [fix] convert query to string to produce valid filename for csv output 2020-03-13 00:57:01 +01:00
Adam Tauber 018b681841 [fix] add answers, suggestions, corrections to csv output
fixes #1888
2020-03-13 00:50:19 +01:00
Adam Tauber 9bc24080bf [fix] add answers, suggestions, corrections to rss output
fixes #1888
2020-03-13 00:43:05 +01:00
Spühler Stefan 4f90fb6a92 [Fix] Startpage ValueError on Spanish date format
datetime.parser.parse() does not know the Spanish date format which
leads to a ValueError. Fixes #1870

Traceback (most recent call last):
  File "/usr/local/searx/searx/search.py", line 160, in search_one_http_request_safe
    search_results = search_one_http_request(engine, query, request_params)
  File "/usr/local/searx/searx/search.py", line 97, in search_one_http_request
    return engine.response(response)
  File "/usr/local/searx/searx/engines/startpage.py", line 102, in response
    published_date = parser.parse(date_string, dayfirst=True)
  File "/usr/local/searx/searx-ve/lib/python3.6/site-packages/dateutil/parser/_parser.py", line 1358, in parse
    return DEFAULTPARSER.parse(timestr, **kwargs)
  File "/usr/local/searx/searx-ve/lib/python3.6/site-packages/dateutil/parser/_parser.py", line 649, in parse
    raise ValueError("Unknown string format:", timestr)
ValueError: ('Unknown string format:', '24 Ene 2013')
2020-03-09 09:31:20 +01:00
Adam Tauber 3aa49cb8f9
Merge pull request #1884 from kvch/add-blogpost-about-private-engines
Add new post to blog about private engines
2020-03-05 22:22:52 +01:00
Noémi Ványi 3d03fb3050 Add new post to blog about private engines 2020-03-05 22:21:20 +01:00
Adam Tauber ccf3d89e8f [fix] update dead link 2020-03-05 02:49:34 +01:00
Markus Heiser a5d3585a0c
Merge pull request #1866 from return42/fix-news
bugfix: google-news and bing-news has changed the language parameter
2020-03-04 11:00:30 +00:00
Markus Heiser ad7a6e6e10 bugfix(!biv) : bing-video do not like "older" User-Agents
When selecting other languages than 'en', bing-video did not handle the language
correct and gave very bad results.  Since User-Agent is normaly rotated in
searx, the behavior of a !biv search was unpredictable and paging was broken.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 17:28:59 +01:00
Markus Heiser 1c853f9573 bing_news: parital rollback of c89c05bc
The bing_news bug (discussed in #1838) was caused by wrong language tags, which
was fixed e0c99d9d / no need to change the bing_news search string.

closes: https://github.com/asciimoo/searx/issues/1838

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 11:07:59 +01:00
Markus Heiser 79412828cd update languages: engines_languages.json languages.py
build by Makefile target:

    make project

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 08:06:51 +01:00
Markus Heiser e0c99d9dcb bugfix: fetch_supported_languages bing, -news, -videos, -images
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 08:01:36 +01:00
Markus Heiser 40843fe95a searx/data/engines_languages.json: sort json file (no content change)
To get meaningfull diffs, the json file has to be sorted.  Before applying any
further content patch, the json file needs a inital sort (without changing any
content).

Sorted by::

  import sys, json

  with open('engines_languages.json') as f:
      j = json.load(f)

  with open('engines_languages.json', 'w') as f:
      json.dump(j, f, indent=2, sort_keys=True)

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 07:56:46 +01:00
Markus Heiser 2f6f9665a9 requirements-dev.txt: add missing pylint for liniting tests
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-29 17:01:11 +01:00
Markus Heiser c89c05bceb bugfix: google-news and bing-news has changed the language parameter
closes: https://github.com/asciimoo/searx/issues/1838

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-25 18:44:28 +01:00
Dalf 678d41d75b [enh] Docker image: uwsgi serves the static files directly.
When the image is built, the static files are compressed with gzip and brotli.
The expires header is set to one day (same as Flask)
There is not etag header (Flask does add an etag header)
2020-02-25 17:25:11 +01:00
Markus Heiser 6a3ef5561b
Merge pull request #1861 from return42/fix-prefs
fix serious bugs of the test procedure
2020-02-25 08:56:34 +01:00
Markus Heiser 8685d1b7d8
Merge branch 'master' into fix-prefs 2020-02-24 08:16:42 +01:00