on v0.8.1 help sign in
searx/README.rst
158 lines 4.5 kB history raw
1searx
2=====
4A privacy-respecting, hackable `metasearch
5engine <https://en.wikipedia.org/wiki/Metasearch_engine>`__.
7List of `running
8instances <https://github.com/asciimoo/searx/wiki/Searx-instances>`__.
10See the `wiki <https://github.com/asciimoo/searx/wiki>`__ for more information.
12|Flattr searx|
14Features
15~~~~~~~~
17- Tracking free
18- Supports multiple output formats
20 - json ``curl https://searx.me/?format=json&q=[query]``
21 - csv ``curl https://searx.me/?format=csv&q=[query]``
22 - opensearch/rss ``curl https://searx.me/?format=rss&q=[query]``
23- Opensearch support (you can set as default search engine)
24- Configurable search engines/categories
25- Different search languages
26- Duckduckgo like !bang functionality with engine shortcuts
27- Parallel queries - relatively fast
29Installation
30~~~~~~~~~~~~
32- clone source:
33 ``git clone git@github.com:asciimoo/searx.git && cd searx``
34- install dependencies: ``pip install -r requirements.txt``
35- edit your
36 `settings.yml <https://github.com/asciimoo/searx/blob/master/settings.yml>`__
37 (set your ``secret_key``!)
38- run ``python searx/webapp.py`` to start the application
40For all the details, follow this `step by step
41installation <https://github.com/asciimoo/searx/wiki/Installation>`__
43Alternative (Recommended) Installation
44~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
46- clone source:
47 ``git clone git@github.com:asciimoo/searx.git && cd searx``
48- build in current folder: ``make minimal``
49- run ``bin/searx-run`` to start the application
51Development
52~~~~~~~~~~~
54Just run ``make``. Versions of dependencies are pinned down inside
55``versions.cfg`` to produce most stable build. Also remember, NO make
56command should be run as root, not even ``make production``
58Deployment
59~~~~~~~~~~
61- clone source:
62 ``git clone git@github.com:asciimoo/searx.git && cd searx``
63- build in current folder: ``make production``
64- run ``bin/supervisord`` to start the application
66Upgrading
67~~~~~~~~~
69- inside previously cloned searx directory run: ``git stash`` to
70 temporarily save any changes you have made
71- pull source: ``git pull origin master``
72- re-build in current folder: ``make production``
73- run ``bin/supervisorctl stop searx`` to stop searx, if it does not,
74 then run ``fuser -k 8888/tcp``
75- run ``bin/supervisorctl reload`` to re-read supervisor config and
76 start searx
78Command make
79~~~~~~~~~~~~
81``make``
82''''''''
84Builds development environment with testing support.
86``make tests``
87''''''''''''''
89Runs tests. You can write tests
90`here <https://github.com/asciimoo/searx/tree/master/searx/tests>`__ and
91remember 'untested code is broken code'.
93``make robot``
94''''''''''''''
96Runs robot (Selenium) tests, you must have ``firefox`` installed because
97this functional tests actually run the browser and perform operations on
98it. Also searx is executed with
99`settings\_robot <https://github.com/asciimoo/searx/blob/master/searx/settings_robot.yml>`__.
101``make flake8``
102'''''''''''''''
104'pep8 is a tool to check your Python code against some of the style
105conventions in `PEP 8 <http://www.python.org/dev/peps/pep-0008/>`__.'
107``make coverage``
108'''''''''''''''''
110Checks coverage of tests, after running this, execute this:
111``firefox ./coverage/index.html``
113``make production``
114'''''''''''''''''''
116Used to make co-called production environment - without tests (you
117should ran tests before deploying searx on the server). This installs
118supervisord, so if searx crashes, it will try to pick itself up again.
119And crontab entry is added to start supervisord at server boot.
121``make minimal``
122''''''''''''''''
124Minimal build - without test frameworks, the quickest build option.
126``make clean``
127''''''''''''''
129Deletes several folders and files (see ``Makefile`` for more), so that
130next time you run any other ``make`` command it will rebuild everithing.
132TODO
133~~~~
135- Moar engines
136- Better ui
137- Browser integration
138- Documentation
139- Tests
141Bugs
142~~~~
144Bugs or suggestions? Visit the `issue
145tracker <https://github.com/asciimoo/searx/issues>`__.
147`License <https://github.com/asciimoo/searx/blob/master/LICENSE>`__
148~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
150More about searx
151~~~~~~~~~~~~~~~~
153- `ohloh <https://www.ohloh.net/p/searx/>`__
154- `twitter <https://twitter.com/Searx_engine>`__
155- IRC: #searx @ freenode
157.. |Flattr searx| image:: http://api.flattr.com/button/flattr-badge-large.png
158 :target: https://flattr.com/submit/auto?user_id=asciimoo&url=https://github.com/asciimoo/searx&title=searx&language=&tags=github&category=software