Commit Graph

139 Commits

Author SHA1 Message Date
Alexandre Flament
9bc1856e2b [mod] themes: remove legacy, courgette and pix-art themes 2020-12-17 11:33:28 +01:00
Markus Heiser
6b0a896f01 [mod] digg - pylint searx/engines/digg.py
Eliminate redundant file names which are tested by test.pylint and ignored by
test.pep8

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-12-02 20:59:30 +01:00
Alexandre Flament
8aa2a7556a [enh] activate pylint
There are 3 invocations:
* one with the default .pylintrc file
* one for searx/engines with some disabled checks and some additional-builtins
* one for the all the code except the engines with some disabled checks
2020-12-01 15:21:19 +01:00
Markus Heiser
c71d214b0c [refactor] deviantart - improve results and clean up source code
Devian's request and response forms has been changed.

- fixed title
- fixed time_range_dict to 'popular-*-***'
- use image from <noscript> if exists
- drop obsolete "http to https, remove domain sharding"
- use query URL https://www.deviantart.com/search/deviations?page=5&q=foo
- add searx/engines/deviantart.py to pylint check (test.pylint)

Error pattern::

    There DEBUG:searx:result: invalid title: {'url': 'https://www.deviantart.com/  ...

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-11-14 17:09:56 +01:00
rachmadaniHaryono
5d015b58f7 new: test: ignored warning and errors 2020-11-06 18:54:53 +08:00
rachmadaniHaryono
d422f60529 chg: test: Makefile pep8 test 2020-11-06 08:40:21 +08:00
Markus Heiser
4a15d675d5 [fix] make.run - use SEARX_DEBUG=1 instead of modifing settings.yml
Reloading webapp.py when a file is changed exit with error::

    $ make run
    ....
    INFO:werkzeug: * Detected change in 'searx/searx/engines/deviantart.py', reloading
    INFO:werkzeug: * Restarting with stat
    ERROR:searx:server.secret_key is not changed. Please use something else instead of ultrasecretkey.
    make: *** [Makefile:69: run] Error 1

Patch suggested by @dalf [1]

[1] https://github.com/searx/searx/issues/2278#issuecomment-719732579

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-10-31 15:40:55 +01:00
Alexandre Flament
f204e4903d [fix] migration from github.com/asciimoo/searx to github.com/searx/searx : fix URLs 2020-09-28 16:44:14 +02:00
Alexandre Flament
c2a6f14516 [fix] Update Sphinx package versions
* Update call to sphinx-autobuild (remove --poll -B options, add --open-browser)
* Upgrade the Sphinx and sphinx-tabs versions.
* utils/makefile.sphinx: remove the SPHINXVERS variable.
* utils/makefile.sphinx: remove the sphinx-doc and sphinx-live targets, Sphinx is already installed by the pyenvinstall target.
2020-09-28 13:27:50 +02:00
Marc Abonce Seguin
c86504b47a fix utils/fetch_languages to work with new languages 2020-09-22 11:37:44 +02:00
Dalf
1022228d95 Drop Python 2 (1/n): remove unicode string and url_utils 2020-09-10 10:39:04 +02:00
Markus Heiser
f14a7add31 Merge branch 'master' of https://github.com/asciimoo/searx into csp-oscar-theme 2020-06-30 15:37:39 +02:00
Markus Heiser
4eab5cf854
Merge branch 'master' into gigablast 2020-06-19 04:51:48 +00:00
Markus Heiser
ca1c3bd15d
Merge branch 'master' into csp-oscar-theme 2020-06-19 04:51:02 +00:00
Markus Heiser
15924bcb67 [fix] buildprocess of the docs by adding sphinx-doc-prebuilds target
The sphinx-doc-prebuilds is the single point of definition for prerequisites
each doc build needs

BTW: remove $(LXC_ENV_FOLDER) offset from BOOKS_FOLDER and DOCS_FOLDER path.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-06-18 18:44:22 +02:00
Markus Heiser
d44b4eda64 [fix] gigablaste engine: switch from pep8 to pylint test
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-05-29 08:52:11 +02:00
Markus Heiser
4954e56b69 [fix] Makefile: node.env is a prerequisite of lessc and grunt
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-05-15 09:57:09 +02:00
Markus Heiser
2441e24288 Merge branch 'master' of https://github.com/asciimoo/searx into filtron 2020-04-02 18:59:43 +02:00
Markus Heiser
fc89c698bd make test.pylint: do not run pylint checks in py2
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-04-01 19:20:52 +02:00
Markus Heiser
565493b57d travis: use Makefile target travis.codecov to install codecov
fix travis build error [1]::

  The command "local/py3/bin/pip install codecov" failed and exited with 127

Use the correct pip (python environment) from build environment::

  $(PY_ENV_BIN)/python -m pip

[1] https://travis-ci.org/github/asciimoo/searx/jobs/669701405#L590

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-04-01 15:45:01 +02:00
Markus Heiser
916d8a9e46 Merge branch 'master' of https://github.com/asciimoo/searx into filtron 2020-04-01 08:55:51 +02:00
Dalf
d425e26e80 [fix] fix travis build 2020-03-31 11:59:54 +02:00
Markus Heiser
4e307edb2d docs: document Makefile setup and 'buildenv' (aka brand)
Add documentation of the Makefile environment (aka brand, buildenv), introduced
in PR #1900.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-30 13:31:13 +02:00
Markus Heiser
e73abd9d8a Merge PR #1900 of https://github.com/asciimoo/searx into filtron 2020-03-30 13:26:26 +02: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
3e4d022d04 [fix] make test.sh: fix various shellcheck error messages
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-30 11:03:46 +02:00
Markus Heiser
5e2b161379 Makefile: marginal fix
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 16:46:07 +02:00
Markus Heiser
0742c2504d build environment: add GIT_BRANCH variable
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 16:28:17 +02:00
Markus Heiser
7b4cf2eb48 tooling box: simplify build enviroments
- no more need for a .config.mk
- docs: use searx.brands environment
- searx.sh, filtron.sh & morty.sh are sourcing utils/brand.env

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 15:09:34 +02:00
Markus Heiser
65b22be1f4 Merge PR #1900 of https://github.com/asciimoo/searx into filtron
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-29 13:03:27 +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
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
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
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
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
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
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
Markus Heiser
2d956696e9 docs: building (PDF) books / build user book
BTW: cleaned up Makefile target help

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-21 18:45:38 +01:00
Markus Heiser
86e79488aa LXC: utils/makefile.lxc (inital) add /.lxcenv.mk to contaiiners
Get LXC environment when building make targets.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-15 17:01:36 +01:00
Markus Heiser
f5f83b8a99 shellcheck: minor fixes to support all dsitros
checked with::

  sudo ./utils/lxc.sh cmd -- make test.sh

on ubu1804, ubu1910, fedora31 and archlinux.  All checks OK except:

ubu1604: uses shellcheck v0.3.7 (from 04/2015) which is no longer supported!

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-08 18:37:16 +01:00
Markus Heiser
b1e90cff23 LXC: separate lxc-suite from lxc & improved command line.
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-07 20:24:08 +01:00
Markus Heiser
9f1cb7a943 Merge branch 'master' of https://github.com/asciimoo/searx into filtron 2020-03-04 12:11:58 +01:00
Markus Heiser
c3e4753ce9 docs: generic documentation from the installation scripts
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-02 19:00:19 +01:00
Markus Heiser
491cb95a1f utils/lxc.env: separate environment that is used in containers
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-03-01 18:28:10 +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
d5917cc029 utils/lib.sh: make uWSGI installation available for all distros
support: ubuntu, debin, fedora, archlinux

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-25 20:20:17 +01:00
Markus Heiser
f5d10abc7f Merge branch 'master' of https://github.com/asciimoo/searx into filtron 2020-02-25 11:27:08 +01:00
Markus Heiser
700574357a make test: bugfix, pyenvinstall is a prerequisite for the pylint test
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-24 08:14:09 +01:00
Markus Heiser
4a94b4cca6 searx/testing.py: pylint & SPDX tag (no functional change)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-23 22:51:07 +01:00
Markus Heiser
179be12732 preferences.py: pylint, SPDX tag & docstrings (no functional change)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-23 20:52:00 +01:00
Markus Heiser
59e4026762 searx.sh: install settings at /etc/searx/settings.yml
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-17 18:58:59 +01:00
Markus Heiser
7751b29559 LXC: add LXC tooling box (initial, WIP)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-08 19:12:28 +01:00
Markus Heiser
79e1f837ef utils & Makefile: add .config.mk & .config.sh for searx brands
By isolating the environment of makefiles and bash scripts into .config.mk and
.config.sh it is simple to maintain searx brands by setting some central
environments.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-02-04 10:39:42 +01:00
Markus Heiser
3cf31528f3 utils/searx.sh: add script to install isolated searx service (WIP)
WIP: written from scratch / linted but untested

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-01-14 19:26:54 +01:00
Markus Heiser
4139c63d23 utils/filtron.sh: add script to install filtron middleware
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-01-08 19:21:07 +01:00
Markus Heiser
28dacee288 utils: add lib.sh containing common shell script
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-01-08 18:13:22 +01:00
Markus Heiser
bdf392093a build requirements: add a shell script static analysis tool
ShellCheck: https://github.com/koalaman/shellcheck

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2020-01-08 18:09:36 +01:00
Markus Heiser
f09459b98a doc: describe Makefile targets
With the aim to simplify development cycles, started with PR #1756 a Makefile
based boilerplate was added.  This patch adds the missing developer
documentation.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-18 16:11:05 +01:00
Markus Heiser
02d5173fb2 Makefile: remove trailing '/' from DOCS_URL
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-13 16:08:34 +01:00
Markus Heiser
121f696460 Makefile: gh-pages: keep history of gh-branch intact (don't drop)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-13 12:58:46 +01:00
Markus Heiser
0011890043 gh-pages - build docs & deploy on gh-pages branch
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-12 14:15:41 +01:00
Markus Heiser
af2cae6d1d doc: make use of sphinx.ext.extlinks & sphinx.ext.intersphinx
- add sphinx extensions
- patch documentation to make use of

These modules help to simplify the reST markup of external references.  BTW it
helps to write more readable reST and form custom brands.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-12 12:39:38 +01:00
Markus Heiser
ef85943e06 Makefile: add documentation build targets docs & docs-live
BTW:
- add build & dist folder to .gitignore
- justify indentation of build messages (makefile.python)

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-12-12 12:10:32 +01:00
Markus Heiser
796197db2d boilerplate: add pylint / WIP: balance linting with pylint
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-11-28 20:07:10 +01:00
Markus Heiser
7e572a2453 Makefile: add test.pep8 test.unit test.robot (from manage.sh)
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-11-28 20:05:29 +01:00
Markus Heiser
b55a8004ed boilerplate: add inital Makefile with run & install targets
Add *Makefile* boilerplate useful for python projects.  All python tasks are
using a virtualenv from ./local/py3

$ make help
  run       - run developer instance
  install   - developer install (./local)
  uninstall - uninstall (./local)

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2019-11-28 19:54:57 +01:00
Adam Tauber
53979a7bf7 [mod] remove buildout/makefile infrastructure 2016-01-10 19:23:10 +01:00
Matej Cotman
d4289222f2 fix: update buildout 2015-11-01 06:42:06 +01:00
Cqoicebordel
d740e7384a New Theme, Pix-art.
First commit
2015-02-15 19:09:17 +01:00
Adam Tauber
df9cf9d09b Merge branch 'rtl' of github.com:Cqoicebordel/searx 2015-02-10 15:23:56 +01:00
Cqoicebordel
14447a0761 Modify courgette theme and less it. 2015-01-16 00:55:28 +01:00
Adam Tauber
410dbc573b [enh] static content generalization 2015-01-12 14:54:16 +01:00
Adam Tauber
0d36dcbf4c [enh] pep8 check added to tests 2015-01-02 12:36:09 +01:00
Adam Tauber
8151585918 [fix] static file paths 2015-01-01 17:54:33 +01:00
Thomas Pointhuber
e687f5c290 [enh][oscar_template] split js-files and compile them together 2014-11-30 13:21:58 +01:00
Thomas Pointhuber
f4457da0a1 oscar template: using less to generate oscar.min.css 2014-10-05 14:40:47 +02:00
Thomas Pointhuber
841f1eedfc oscar template: generate bootstrap.min.css from source 2014-10-05 14:40:47 +02:00
Gabor Nagy
8810273010 Cover searx.utils 2014-07-12 15:46:55 +02:00
Matej Cotman
08eaffe245 add multi theming support 2014-06-05 13:18:22 +02:00
Thomas Pointhuber
c8a1e0bda4 move *.less files into seperate directory 2014-03-13 16:51:15 +01:00
Thomas Pointhuber
425ec3b707 Using .less instead of .css
to generate the .css file from the .less file run: $make styles
2014-03-05 15:20:30 +01:00
asciimoo
852dfc77c6 [enh] configurable localization 2014-01-22 00:59:18 +01:00
Matej Cotman
dd4662978d fix: robot fw, entry points, some flake8, package searx egg 2014-01-20 01:06:29 +01:00
Matej Cotman
8210fe90ea production environment with supervisor and crontab 2014-01-15 21:19:24 +01:00
Matej Cotman
e740c8a8ea tests and robot tests framework, build overhaul 2014-01-14 23:31:15 +01:00