1
0
mirror of https://github.com/searxng/searxng.git synced 2024-11-05 04:40:11 +01:00

[mod] live build of a theme: LIVE_THEME=simple make run

Environment variable to get live builds while modifying CSS & JS of a theme::

    LIVE_THEME=simple make run

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
This commit is contained in:
Markus Heiser 2021-12-29 21:28:25 +01:00
parent 1706b130a4
commit c7f2740414
4 changed files with 29 additions and 12 deletions

View File

@ -25,11 +25,7 @@ help:
PHONY += run PHONY += run
run: install run: install
$(Q) ( \ $(Q)./manage webapp.run
sleep 2 ; \
xdg-open http://127.0.0.1:8888/ ; \
) &
SEARXNG_DEBUG=1 ./manage pyenv.cmd python -m searx.webapp
PHONY += install uninstall PHONY += install uninstall
install uninstall: install uninstall:

View File

@ -13,7 +13,7 @@ Makefile
To install system requirements follow :ref:`buildhosts`. To install system requirements follow :ref:`buildhosts`.
All relevant build tasks are implemented in :origin:`manage.sh` and for CI or All relevant build tasks are implemented in :origin:`manage` and for CI or
IDE integration a small ``Makefile`` wrapper is available. If you are not IDE integration a small ``Makefile`` wrapper is available. If you are not
familiar with Makefiles, we recommend to read gnu-make_ introduction. familiar with Makefiles, we recommend to read gnu-make_ introduction.
@ -173,14 +173,19 @@ Install latest Node.js_ LTS locally (uses nvm_)::
To get up a running a developer instance simply call ``make run``. This enables To get up a running a developer instance simply call ``make run``. This enables
*debug* option in :origin:`searx/settings.yml`, starts a ``./searx/webapp.py`` *debug* option in :origin:`searx/settings.yml`, starts a ``./searx/webapp.py``
instance, disables *debug* option again and opens the URL in your favorite WEB instance and opens the URL in your favorite WEB browser (:man:`xdg-open`)::
browser (:man:`xdg-open`)::
$ make run $ make run
PYENV OK
SEARXNG_DEBUG=1 ./manage.sh pyenv.cmd python ./searx/webapp.py Changes to theme's HTML templates (jinja2) are instant. Changes to the CSS & JS
... sources of the theme need to be rebuild. You can do that by running::
INFO:werkzeug: * Running on http://127.0.0.1:8888/ (Press CTRL+C to quit)
$ make themes.all
Alternatively to ``themes.all`` you can run *live builds* of the theme you are
modify::
$ LIVE_THEME=simple make run
.. _make clean: .. _make clean:

View File

@ -40,10 +40,15 @@ JavaScript:
Alternatively you can also compile selective the theme you have modified, Alternatively you can also compile selective the theme you have modified,
e.g. the *simple* theme. e.g. the *simple* theme.
.. code:: sh .. code:: sh
make themes.simple make themes.simple
.. tip::
To get live builds while modifying CSS & JS use: ``LIVE_THEME=simple make run``
If you finished your *tests* you can start to commit your changes. To separate If you finished your *tests* you can start to commit your changes. To separate
the modified source code from the build products first run: the modified source code from the build products first run:

11
manage
View File

@ -117,6 +117,17 @@ fi
# needed by sphinx-docs # needed by sphinx-docs
export DOCS_BUILD export DOCS_BUILD
webapp.run() {
SEARXNG_DEBUG=1 pyenv.cmd python -m searx.webapp &
sleep 3
if [ "${LIVE_THEME}" ]; then
themes.live "${LIVE_THEME}" &
fi
xdg-open http://127.0.0.1:8888/
wait -n
kill 0
}
buildenv() { buildenv() {
# settings file from repository's working tree are used by default # settings file from repository's working tree are used by default