|
@@ -120,6 +120,17 @@ fi
|
|
|
# needed by sphinx-docs
|
|
|
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() {
|
|
|
|
|
|
# settings file from repository's working tree are used by default
|
|
@@ -514,12 +525,15 @@ gecko.driver() {
|
|
|
dump_return $?
|
|
|
}
|
|
|
|
|
|
-node.env() {
|
|
|
+nodejs.ensure() {
|
|
|
if ! nvm.min_node "${NODE_MINIMUM_VERSION}"; then
|
|
|
info_msg "install Node.js by NVM"
|
|
|
nvm.nodejs
|
|
|
fi
|
|
|
+}
|
|
|
|
|
|
+node.env() {
|
|
|
+ nodejs.ensure
|
|
|
( set -e
|
|
|
|
|
|
build_msg INSTALL "searx/static/themes/oscar/package.json"
|
|
@@ -701,6 +715,30 @@ themes.all() {
|
|
|
dump_return $?
|
|
|
}
|
|
|
|
|
|
+themes.live() {
|
|
|
+ local LIVE_THEME="${LIVE_THEME:-${1}}"
|
|
|
+ case "${LIVE_THEME}" in
|
|
|
+ simple|oscar)
|
|
|
+ theme="searx/static/themes/${LIVE_THEME}"
|
|
|
+ ;;
|
|
|
+ '')
|
|
|
+ die_caller 42 "missing theme argument"
|
|
|
+ ;;
|
|
|
+ *)
|
|
|
+ die_caller 42 "unknown theme '${LIVE_THEME}' // [simple|oscar]'"
|
|
|
+ ;;
|
|
|
+ esac
|
|
|
+ build_msg GRUNT "theme: $1 (live build)"
|
|
|
+ nodejs.ensure
|
|
|
+ cd "${theme}"
|
|
|
+ {
|
|
|
+ npm install
|
|
|
+ npm run watch
|
|
|
+ } 2>&1 \
|
|
|
+ | prefix_stdout "${_Blue}THEME ${1} ${_creset} " \
|
|
|
+ | grep -E --ignore-case --color 'error[s]?[:]? |warning[s]?[:]? |'
|
|
|
+}
|
|
|
+
|
|
|
themes.oscar() {
|
|
|
build_msg GRUNT "theme: oscar"
|
|
|
npm --prefix searx/static/themes/oscar run build
|
|
@@ -708,7 +746,6 @@ themes.oscar() {
|
|
|
}
|
|
|
|
|
|
themes.simple() {
|
|
|
- local static="searx/static/themes/simple"
|
|
|
( set -e
|
|
|
build_msg GRUNT "theme: simple"
|
|
|
npm --prefix searx/static/themes/simple run build
|
|
@@ -718,10 +755,7 @@ themes.simple() {
|
|
|
|
|
|
themes.simple.test() {
|
|
|
build_msg TEST "theme: simple"
|
|
|
- if ! nvm.min_node "${NODE_MINIMUM_VERSION}"; then
|
|
|
- info_msg "install Node.js by NVM"
|
|
|
- nvm.nodejs
|
|
|
- fi
|
|
|
+ nodejs.ensure
|
|
|
npm --prefix searx/static/themes/simple install
|
|
|
npm --prefix searx/static/themes/simple run test
|
|
|
dump_return $?
|