forked from zaclys/searxng
		
	Merge pull request #213 from return42/drop-brand
[mod] drop searx.brand namespace
This commit is contained in:
		
						commit
						4f0d232a3d
					
				
					 20 changed files with 126 additions and 117 deletions
				
			
		| 
						 | 
				
			
			@ -73,9 +73,6 @@ Global Settings
 | 
			
		|||
``wiki_url``:
 | 
			
		||||
  Link to your wiki (or ``false``)
 | 
			
		||||
 | 
			
		||||
``twitter_url``:
 | 
			
		||||
  Link to your tweets (or ``false``)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
``server:``
 | 
			
		||||
-----------
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										41
									
								
								docs/conf.py
									
										
									
									
									
								
							
							
						
						
									
										41
									
								
								docs/conf.py
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -4,7 +4,7 @@
 | 
			
		|||
import  sys, os
 | 
			
		||||
from pallets_sphinx_themes import ProjectLink
 | 
			
		||||
 | 
			
		||||
from searx import brand
 | 
			
		||||
from searx import get_setting
 | 
			
		||||
from searx.version import VERSION_STRING
 | 
			
		||||
 | 
			
		||||
# Project --------------------------------------------------------------
 | 
			
		||||
| 
						 | 
				
			
			@ -14,6 +14,15 @@ copyright = u'2015-2020, Adam Tauber, Noémi Ványi'
 | 
			
		|||
author = u'Adam Tauber'
 | 
			
		||||
release, version = VERSION_STRING, VERSION_STRING
 | 
			
		||||
 | 
			
		||||
SEARX_URL = get_setting('server.base_url') or 'https://example.org/searx'
 | 
			
		||||
GIT_URL = get_setting('brand.git_url')
 | 
			
		||||
GIT_BRANCH = get_setting('brand.git_branch')
 | 
			
		||||
ISSUE_URL = get_setting('brand.issue_url')
 | 
			
		||||
DOCS_URL = get_setting('brand.docs_url')
 | 
			
		||||
PUBLIC_INSTANCES = get_setting('brand.public_instances')
 | 
			
		||||
CONTACT_URL = get_setting('general.contact_url')
 | 
			
		||||
WIKI_URL = get_setting('brand.wiki_url')
 | 
			
		||||
 | 
			
		||||
# hint: sphinx.ext.viewcode won't highlight when 'highlight_language' [1] is set
 | 
			
		||||
#       to string 'none' [2]
 | 
			
		||||
#
 | 
			
		||||
| 
						 | 
				
			
			@ -49,10 +58,10 @@ extlinks['pull'] = ('https://github.com/searxng/searxng/pull/%s', 'PR ')
 | 
			
		|||
extlinks['pull-searx'] = ('https://github.com/searx/searx/pull/%s', 'PR ')
 | 
			
		||||
 | 
			
		||||
# links to custom brand
 | 
			
		||||
extlinks['origin'] = (brand.GIT_URL + '/blob/' + brand.GIT_BRANCH + '/%s', 'git://')
 | 
			
		||||
extlinks['patch'] = (brand.GIT_URL + '/commit/%s', '#')
 | 
			
		||||
extlinks['search'] = (brand.SEARX_URL + '/%s', '#')
 | 
			
		||||
extlinks['docs'] = (brand.DOCS_URL + '/%s', 'docs: ')
 | 
			
		||||
extlinks['origin'] = (GIT_URL + '/blob/' + GIT_BRANCH + '/%s', 'git://')
 | 
			
		||||
extlinks['patch'] = (GIT_URL + '/commit/%s', '#')
 | 
			
		||||
extlinks['search'] = (SEARX_URL + '/%s', '#')
 | 
			
		||||
extlinks['docs'] = (DOCS_URL + '/%s', 'docs: ')
 | 
			
		||||
extlinks['pypi'] = ('https://pypi.org/project/%s', 'PyPi: ')
 | 
			
		||||
extlinks['man'] = ('https://manpages.debian.org/jump?q=%s', '')
 | 
			
		||||
#extlinks['role'] = (
 | 
			
		||||
| 
						 | 
				
			
			@ -108,18 +117,16 @@ imgmath_font_size = 14
 | 
			
		|||
 | 
			
		||||
html_theme_options = {"index_sidebar_logo": True}
 | 
			
		||||
html_context = {"project_links": [] }
 | 
			
		||||
if brand.GIT_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Source", brand.GIT_URL))
 | 
			
		||||
if brand.WIKI_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Wiki", brand.WIKI_URL))
 | 
			
		||||
if brand.PUBLIC_INSTANCES:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Public instances", brand.PUBLIC_INSTANCES))
 | 
			
		||||
if brand.TWITTER_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Twitter", brand.TWITTER_URL))
 | 
			
		||||
if brand.ISSUE_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Issue Tracker", brand.ISSUE_URL))
 | 
			
		||||
if brand.CONTACT_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Contact", brand.CONTACT_URL))
 | 
			
		||||
html_context["project_links"].append(ProjectLink("Source", GIT_URL + '/tree/' + GIT_BRANCH))
 | 
			
		||||
 | 
			
		||||
if WIKI_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Wiki", WIKI_URL))
 | 
			
		||||
if PUBLIC_INSTANCES:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Public instances", PUBLIC_INSTANCES))
 | 
			
		||||
if ISSUE_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Issue Tracker", ISSUE_URL))
 | 
			
		||||
if CONTACT_URL:
 | 
			
		||||
    html_context["project_links"].append(ProjectLink("Contact", CONTACT_URL))
 | 
			
		||||
 | 
			
		||||
html_sidebars = {
 | 
			
		||||
    "**": ["project.html", "relations.html", "searchbox.html"],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										7
									
								
								manage
									
										
									
									
									
								
							
							
						
						
									
										7
									
								
								manage
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -177,6 +177,13 @@ docker.buildx() {
 | 
			
		|||
docker.build() {
 | 
			
		||||
    pyenv.install
 | 
			
		||||
 | 
			
		||||
    local SEARX_GIT_VERSION
 | 
			
		||||
    local VERSION_GITCOMMIT
 | 
			
		||||
    local SEARX_PYTHON_VERSION
 | 
			
		||||
    local GITHUB_USER
 | 
			
		||||
    local SEARX_IMAGE_NAME
 | 
			
		||||
    local BUILD
 | 
			
		||||
 | 
			
		||||
    build_msg DOCKER build
 | 
			
		||||
    # run installation in a subprocess and activate pyenv
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -32,52 +32,24 @@ if max_request_timeout is None:
 | 
			
		|||
else:
 | 
			
		||||
    logger.info('max_request_timeout=%i second(s)', max_request_timeout)
 | 
			
		||||
 | 
			
		||||
_unset = object()
 | 
			
		||||
 | 
			
		||||
class _brand_namespace:  # pylint: disable=invalid-name
 | 
			
		||||
def get_setting(name, default=_unset):
 | 
			
		||||
    """Returns the value to which ``name`` point.  If there is no such name in the
 | 
			
		||||
    settings and the ``default`` is unset, a :py:obj:`KeyError` is raised.
 | 
			
		||||
 | 
			
		||||
    @classmethod
 | 
			
		||||
    def get_val(cls, group, name, default=''):
 | 
			
		||||
        return settings.get(group, {}).get(name) or default
 | 
			
		||||
    """
 | 
			
		||||
    value = settings
 | 
			
		||||
    for a in name.split('.'):
 | 
			
		||||
        if isinstance(value, dict):
 | 
			
		||||
            value = value.get(a, _unset)
 | 
			
		||||
        else:
 | 
			
		||||
            value = _unset
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def SEARX_URL(self):
 | 
			
		||||
        return self.get_val('server', 'base_url')
 | 
			
		||||
        if value is _unset:
 | 
			
		||||
            if default is _unset:
 | 
			
		||||
                raise KeyError(name)
 | 
			
		||||
            value = default
 | 
			
		||||
            break
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def CONTACT_URL(self):
 | 
			
		||||
        return self.get_val('general', 'contact_url')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def GIT_URL(self):
 | 
			
		||||
        return self.get_val('brand', 'git_url')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def GIT_BRANCH(self):
 | 
			
		||||
        return self.get_val('brand', 'git_branch')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def ISSUE_URL(self):
 | 
			
		||||
        return self.get_val('brand', 'issue_url')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def NEW_ISSUE_URL(self):
 | 
			
		||||
        return self.get_val('brand', 'new_issue_url')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def DOCS_URL(self):
 | 
			
		||||
        return self.get_val('brand', 'docs_url')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def PUBLIC_INSTANCES(self):
 | 
			
		||||
        return self.get_val('brand', 'public_instances')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def WIKI_URL(self):
 | 
			
		||||
        return self.get_val('brand', 'wiki_url')
 | 
			
		||||
 | 
			
		||||
    @property
 | 
			
		||||
    def TWITTER_URL(self):
 | 
			
		||||
        return self.get_val('brand', 'twitter_url')
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
brand = _brand_namespace()
 | 
			
		||||
    return value
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -130,6 +130,13 @@ SCHEMA = {
 | 
			
		|||
        'contact_url': SettingsValue((None, False, str), None),
 | 
			
		||||
    },
 | 
			
		||||
    'brand': {
 | 
			
		||||
        'git_url': SettingsValue(str),
 | 
			
		||||
        'git_branch': SettingsValue(str),
 | 
			
		||||
        'issue_url': SettingsValue(str, None),
 | 
			
		||||
        'new_issue_url': SettingsValue(str, None),
 | 
			
		||||
        'docs_url': SettingsValue(str, None),
 | 
			
		||||
        'public_instances': SettingsValue(str, None),
 | 
			
		||||
        'wiki_url': SettingsValue(str, None),
 | 
			
		||||
    },
 | 
			
		||||
    'search': {
 | 
			
		||||
        'safe_search': SettingsValue((0,1,2), 0),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,6 +2,15 @@ general:
 | 
			
		|||
  debug: false
 | 
			
		||||
  instance_name: "searx_test"
 | 
			
		||||
 | 
			
		||||
brand:
 | 
			
		||||
  git_url: https://github.com/searxng/searxng
 | 
			
		||||
  git_branch: master
 | 
			
		||||
  issue_url: https://github.com/searxng/searxng/issues
 | 
			
		||||
  new_issue_url: https://github.com/searxng/searxng/issues/new
 | 
			
		||||
  docs_url: https://searxng.github.io/searxng
 | 
			
		||||
  public_instances: https://searx.space
 | 
			
		||||
  wiki_url: https://github.com/searxng/searxng/wiki
 | 
			
		||||
 | 
			
		||||
search:
 | 
			
		||||
  language: "all"
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,7 +11,7 @@
 | 
			
		|||
  <p>More about SearXNG ...</p>
 | 
			
		||||
 | 
			
		||||
  <ul>
 | 
			
		||||
    <li><a href="{{ brand.GIT_URL }}">github</a></li>
 | 
			
		||||
    <li><a href="{{ get_setting('brand.git_url') }}">SearXNG sources</a></li>
 | 
			
		||||
    <li><a href="https://www.transifex.com/projects/p/searx/">transifex</a></li>
 | 
			
		||||
  </ul>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -30,7 +30,8 @@
 | 
			
		|||
    </li>
 | 
			
		||||
    <li>
 | 
			
		||||
      SearXNG is free software, the code is 100% open and you can help to make
 | 
			
		||||
      it better.  See more on <a href="{{ brand.GIT_URL }}">github</a>.
 | 
			
		||||
      it better.  See more on <a href="{{ get_setting('brand.git_url')
 | 
			
		||||
      }}">SearXNG sources</a>.
 | 
			
		||||
    </li>
 | 
			
		||||
  </ul>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -80,10 +81,11 @@
 | 
			
		|||
 | 
			
		||||
  <p>
 | 
			
		||||
    SearXNG appreciates your concern regarding logs, so take the code from
 | 
			
		||||
    the <a href="{{ brand.GIT_URL }}">SearXNG project</a> and run it yourself!
 | 
			
		||||
    the <a href="{{ get_setting('brand.git_url') }}">SearXNG project</a> and
 | 
			
		||||
    run it yourself!
 | 
			
		||||
  </p>
 | 
			
		||||
  <p>
 | 
			
		||||
    Add your instance to this <a href="{{ brand.PUBLIC_INSTANCES }}"> list of
 | 
			
		||||
    Add your instance to this <a href="{{ get_setting('brand.public_instances') }}"> list of
 | 
			
		||||
    public instances</a> to help other people reclaim their privacy and make the
 | 
			
		||||
    Internet freer!  The more decentralized the Internet is, the more freedom we
 | 
			
		||||
    have!
 | 
			
		||||
| 
						 | 
				
			
			@ -92,8 +94,8 @@
 | 
			
		|||
  <h2>Where are the docs & code of this instance?</h2>
 | 
			
		||||
 | 
			
		||||
  <p>
 | 
			
		||||
    See the <a href="{{ brand.DOCS_URL }}">{{ brand.DOCS_URL }}</a>
 | 
			
		||||
    and <a href="{{ brand.GIT_URL }}">{{ brand.GIT_URL }}</a>
 | 
			
		||||
    See the <a href="{{ get_setting('brand.docs_url') }}">SearXNG docs</a>
 | 
			
		||||
    and <a href="{{ get_setting('brand.git_url') }}">SearXNG sources</a>
 | 
			
		||||
  </p>
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
{% macro new_issue(new_issue_url, engine_name, engine_reliability) %}
 | 
			
		||||
<form action="{{ new_issue_url }}" method="GET">
 | 
			
		||||
{% macro new_issue(engine_name, engine_reliability) %}
 | 
			
		||||
<form action="{{ get_setting('brand.new_issue_url') }}" method="GET">
 | 
			
		||||
    <input name="title" type="hidden" value="Bug: {{ engine_name }} engine">
 | 
			
		||||
    <input name="labels" type="hidden" value="bug">
 | 
			
		||||
    <input name="template" type="hidden" value="bug-report.md">
 | 
			
		||||
| 
						 | 
				
			
			@ -52,6 +52,6 @@ or manually by executing the searx/webapp.py file? -->
 | 
			
		|||
{{-'\n  '}}* {{ test_name }}: {% for result in results%}`{{ result }}`,{% endfor -%}
 | 
			
		||||
{%- endfor -%}
 | 
			
		||||
    </textarea>
 | 
			
		||||
    <button type="submit" class="github-issue-button" title="{{ new_issue_url }}">{{ _('Submit a new issue on Github including the above information') }}</button>
 | 
			
		||||
    <button type="submit" class="github-issue-button" title="{{ get_setting('brand.new_issue_url') }}">{{ _('Submit a new issue on Github including the above information') }}</button>
 | 
			
		||||
</form>
 | 
			
		||||
{% endmacro %}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -82,11 +82,11 @@
 | 
			
		|||
            {% endblock %}
 | 
			
		||||
            <p class="text-muted">
 | 
			
		||||
                <small>
 | 
			
		||||
                    {{ _('Powered by') }} <a href="{{ brand.DOCS_URL }}">searxng</a> - {{ searx_version }} - {{ _('a privacy-respecting, hackable metasearch engine') }}<br/>
 | 
			
		||||
                    <a href="{{ brand.GIT_URL }}">{{ _('Source code') }}</a> |
 | 
			
		||||
                    <a href="{{ brand.ISSUE_URL }}">{{ _('Issue tracker') }}</a> |
 | 
			
		||||
                    <a href="{{ brand.PUBLIC_INSTANCES }}">{{ _('Public instances') }}</a>{% if brand.CONTACT_URL %} |
 | 
			
		||||
                    <a href="{{ brand.CONTACT_URL }}">{{ _('Contact instance maintainer') }}</a>{% endif %}
 | 
			
		||||
                    {{ _('Powered by') }} <a href="{{ get_setting('brand.docs_url') }}">SearXNG</a> - {{ searx_version }} - {{ _('a privacy-respecting, hackable metasearch engine') }}<br/>
 | 
			
		||||
                    <a href="{{ get_setting('brand.git_url') }}">{{ _('Source code') }}</a> |
 | 
			
		||||
                    <a href="{{ get_setting('brand.issue_url') }}">{{ _('Issue tracker') }}</a> |
 | 
			
		||||
                    <a href="{{ get_setting('brand.public_instances') }}">{{ _('Public instances') }}</a>{% if get_setting('general.contact_url') %} |
 | 
			
		||||
                    <a href="{{ get_setting('general.contact_url') }}">{{ _('Contact instance maintainer') }}</a>{% endif %}
 | 
			
		||||
                </small>
 | 
			
		||||
            </p>
 | 
			
		||||
        </div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,7 +10,7 @@
 | 
			
		|||
        </a> ){{- '' -}}
 | 
			
		||||
    </p>
 | 
			
		||||
    {%- endfor -%}
 | 
			
		||||
    <p><small>{{ _('Please, try again later or find another searx instance.') }} (<a href="{{ brand.PUBLIC_INSTANCES }}">{{ _('Public instances') }}</a>)</small></p>
 | 
			
		||||
    <p><small>{{ _('Please, try again later or find another searx instance.') }} (<a href="{{ get_setting('brand.public_instances') }}">{{ _('Public instances') }}</a>)</small></p>
 | 
			
		||||
</div>
 | 
			
		||||
{% else %}
 | 
			
		||||
<div class="alert alert-info fade in" role="alert">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
{% extends 'oscar/base.html' %}
 | 
			
		||||
{% from '__common__/new_issue.html' import new_issue %}
 | 
			
		||||
{% from '__common__/new_issue.html' import new_issue with context %}
 | 
			
		||||
 | 
			
		||||
{% block title %}{{ _('stats') }} - {% if selected_engine_name %} {{ selected_engine_name }} - {% endif %}{% endblock %}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -148,7 +148,7 @@
 | 
			
		|||
                    {% endfor %}
 | 
			
		||||
                </table>
 | 
			
		||||
            {% endif %}
 | 
			
		||||
            {{ new_issue(brand.NEW_ISSUE_URL, selected_engine_name, engine_reliabilities[selected_engine_name]) }}
 | 
			
		||||
            {{ new_issue(selected_engine_name, engine_reliabilities[selected_engine_name]) }}
 | 
			
		||||
        {% endif %}
 | 
			
		||||
        </div>
 | 
			
		||||
    </div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -51,10 +51,10 @@
 | 
			
		|||
  <footer>
 | 
			
		||||
    <p>
 | 
			
		||||
    {{ _('Powered by') }} <a href="{{ url_for('about') }}">searxng</a> - {{ searx_version }} — {{ _('a privacy-respecting, hackable metasearch engine') }}<br/>
 | 
			
		||||
        <a href="{{ brand.GIT_URL }}">{{ _('Source code') }}</a> |
 | 
			
		||||
        <a href="{{ brand.ISSUE_URL }}">{{ _('Issue tracker') }}</a> |
 | 
			
		||||
        <a href="{{ brand.PUBLIC_INSTANCES }}">{{ _('Public instances') }}</a>{% if brand.CONTACT_URL %} |
 | 
			
		||||
        <a href="{{ brand.CONTACT_URL }}">{{ _('Contact instance maintainer') }}</a>{% endif %}
 | 
			
		||||
        <a href="{{ get_setting('brand.git_url') }}">{{ _('Source code') }}</a> |
 | 
			
		||||
        <a href="{{ get_setting('brand.issue_url') }}">{{ _('Issue tracker') }}</a> |
 | 
			
		||||
        <a href="{{ get_setting('brand.public_instances') }}">{{ _('Public instances') }}</a>{% if get_setting('general.contact_url') %} |
 | 
			
		||||
        <a href="{{ get_setting('general.contact_url') }}">{{ _('Contact instance maintainer') }}</a>{% endif %}
 | 
			
		||||
    </p>
 | 
			
		||||
  </footer>
 | 
			
		||||
  <!--[if gte IE 9]>-->
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,7 +11,7 @@
 | 
			
		|||
  </p>
 | 
			
		||||
  {%- endfor %}
 | 
			
		||||
 | 
			
		||||
  <p><small>{{ _('Please, try again later or find another searx instance.') }} (<a href="{{ brand.PUBLIC_INSTANCES }}">{{ _('Public instances') }}</a>) </small></p>
 | 
			
		||||
  <p><small>{{ _('Please, try again later or find another searx instance.') }} (<a href="{{ get_setting('brand.public_instances') }}">{{ _('Public instances') }}</a>) </small></p>
 | 
			
		||||
</div>
 | 
			
		||||
{% else %}
 | 
			
		||||
<div class="dialog-error" role="alert">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
{% from 'simple/macros.html' import icon %}
 | 
			
		||||
{% from '__common__/new_issue.html' import new_issue %}
 | 
			
		||||
{% from '__common__/new_issue.html' import new_issue with context %}
 | 
			
		||||
 | 
			
		||||
{% extends "simple/base.html" %}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -147,7 +147,7 @@
 | 
			
		|||
                {% endfor %}
 | 
			
		||||
            </table>
 | 
			
		||||
        {% endif %}
 | 
			
		||||
        {{ new_issue(brand.NEW_ISSUE_URL, selected_engine_name, engine_reliabilities[selected_engine_name]) }}
 | 
			
		||||
        {{ new_issue(selected_engine_name, engine_reliabilities[selected_engine_name]) }}
 | 
			
		||||
    {% endif %}
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -50,7 +50,7 @@ from flask_babel import (
 | 
			
		|||
)
 | 
			
		||||
 | 
			
		||||
from searx import logger
 | 
			
		||||
from searx import brand
 | 
			
		||||
from searx import get_setting
 | 
			
		||||
from searx import (
 | 
			
		||||
    settings,
 | 
			
		||||
    searx_debug,
 | 
			
		||||
| 
						 | 
				
			
			@ -473,11 +473,9 @@ def render(template_name, override_theme=None, **kwargs):
 | 
			
		|||
    kwargs['search_formats'] = [
 | 
			
		||||
        x for x in settings['search']['formats'] if x != 'html'
 | 
			
		||||
    ]
 | 
			
		||||
 | 
			
		||||
    # brand
 | 
			
		||||
    kwargs['instance_name'] = settings['general']['instance_name']
 | 
			
		||||
    kwargs['instance_name'] = get_setting('general.instance_name')
 | 
			
		||||
    kwargs['searx_version'] = VERSION_STRING
 | 
			
		||||
    kwargs['brand'] = brand
 | 
			
		||||
    kwargs['get_setting'] = get_setting
 | 
			
		||||
 | 
			
		||||
    # helpers to create links to other pages
 | 
			
		||||
    kwargs['url_for'] = url_for_theme  # override url_for function in templates
 | 
			
		||||
| 
						 | 
				
			
			@ -1323,9 +1321,9 @@ def config():
 | 
			
		|||
        'default_theme': settings['ui']['default_theme'],
 | 
			
		||||
        'version': VERSION_STRING,
 | 
			
		||||
        'brand': {
 | 
			
		||||
            'CONTACT_URL': brand.CONTACT_URL,
 | 
			
		||||
            'GIT_URL': brand.GIT_URL,
 | 
			
		||||
            'DOCS_URL': brand.DOCS_URL
 | 
			
		||||
            'CONTACT_URL': get_setting('general.contact_url'),
 | 
			
		||||
            'GIT_URL': get_setting('brand.git_url'),
 | 
			
		||||
            'DOCS_URL': get_setting('brand.docs_url'),
 | 
			
		||||
        },
 | 
			
		||||
        'doi_resolvers': list(settings['doi_resolvers'].keys()),
 | 
			
		||||
        'default_doi_resolver': settings['default_doi_resolver'],
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										8
									
								
								setup.py
									
										
									
									
									
								
							
							
						
						
									
										8
									
								
								setup.py
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -8,7 +8,7 @@ import os
 | 
			
		|||
import sys
 | 
			
		||||
 | 
			
		||||
from searx.version import VERSION_STRING
 | 
			
		||||
from searx import brand
 | 
			
		||||
from searx import get_setting
 | 
			
		||||
 | 
			
		||||
with open('README.rst', encoding='utf-8') as f:
 | 
			
		||||
    long_description = f.read()
 | 
			
		||||
| 
						 | 
				
			
			@ -24,10 +24,10 @@ setup(
 | 
			
		|||
    version=VERSION_STRING,
 | 
			
		||||
    description="A privacy-respecting, hackable metasearch engine",
 | 
			
		||||
    long_description=long_description,
 | 
			
		||||
    url=brand.DOCS_URL,
 | 
			
		||||
    url=get_setting('brand.docs_url'),
 | 
			
		||||
    project_urls={
 | 
			
		||||
        "Code": brand.GIT_URL,
 | 
			
		||||
        "Issue tracker": brand.ISSUE_URL
 | 
			
		||||
        "Code": get_setting('brand.git_url'),
 | 
			
		||||
        "Issue tracker": get_setting('brand.issue_url')
 | 
			
		||||
    },
 | 
			
		||||
    classifiers=[
 | 
			
		||||
        "Development Status :: 4 - Beta",
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,4 +6,3 @@ export DOCS_URL='https://searxng.github.io/searxng'
 | 
			
		|||
export PUBLIC_INSTANCES='https://searx.space'
 | 
			
		||||
export CONTACT_URL=''
 | 
			
		||||
export WIKI_URL='https://github.com/searxng/searxng/wiki'
 | 
			
		||||
export TWITTER_URL=''
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -16,18 +16,25 @@ os.environ['SEARX_SETTINGS_PATH'] = abspath(dirname(__file__) + '/settings.yml')
 | 
			
		|||
# from /etc/searx/settings.yml.
 | 
			
		||||
os.environ['SEARX_SETTINGS_PATH'] = abspath(dirname(__file__) + sep + 'settings.yml')
 | 
			
		||||
 | 
			
		||||
from searx import brand
 | 
			
		||||
from searx import get_setting
 | 
			
		||||
 | 
			
		||||
def _env(*arg, **kwargs):
 | 
			
		||||
    val = get_setting(*arg, **kwargs)
 | 
			
		||||
    if val is True:
 | 
			
		||||
        val = '1'
 | 
			
		||||
    elif val is False:
 | 
			
		||||
        val = ''
 | 
			
		||||
    return val
 | 
			
		||||
 | 
			
		||||
name_val = [
 | 
			
		||||
    ('SEARX_URL'              , brand.SEARX_URL),
 | 
			
		||||
    ('GIT_URL'                , brand.GIT_URL),
 | 
			
		||||
    ('GIT_BRANCH'             , brand.GIT_BRANCH),
 | 
			
		||||
    ('ISSUE_URL'              , brand.ISSUE_URL),
 | 
			
		||||
    ('DOCS_URL'               , brand.DOCS_URL),
 | 
			
		||||
    ('PUBLIC_INSTANCES'       , brand.PUBLIC_INSTANCES),
 | 
			
		||||
    ('CONTACT_URL'            , brand.CONTACT_URL),
 | 
			
		||||
    ('WIKI_URL'               , brand.WIKI_URL),
 | 
			
		||||
    ('TWITTER_URL'            , brand.TWITTER_URL),
 | 
			
		||||
    ('SEARX_URL'              , _env('server.base_url','')),
 | 
			
		||||
    ('GIT_URL'                , _env('brand.git_url', '')),
 | 
			
		||||
    ('GIT_BRANCH'             , _env('brand.git_branch', '')),
 | 
			
		||||
    ('ISSUE_URL'              , _env('brand.issue_url', '')),
 | 
			
		||||
    ('DOCS_URL'               , _env('brand.docs_url', '')),
 | 
			
		||||
    ('PUBLIC_INSTANCES'       , _env('brand.public_instances', '')),
 | 
			
		||||
    ('CONTACT_URL'            , _env('general.contact_url', '')),
 | 
			
		||||
    ('WIKI_URL'               , _env('brand.wiki_url', '')),
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
brand_env = 'utils' + sep + 'brand.env'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										12
									
								
								utils/lib.sh
									
										
									
									
									
								
							
							
						
						
									
										12
									
								
								utils/lib.sh
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -606,9 +606,13 @@ pyenv.OK() {
 | 
			
		|||
        return 1
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    pyenv.check \
 | 
			
		||||
        | "${PY_ENV_BIN}/python" 2>&1 \
 | 
			
		||||
        | prefix_stdout "${_Blue}PYENV     ${_creset}[check] "
 | 
			
		||||
    if [ "$VERBOSE" = "1" ]; then
 | 
			
		||||
        pyenv.check \
 | 
			
		||||
            | "${PY_ENV_BIN}/python" 2>&1 \
 | 
			
		||||
            | prefix_stdout "${_Blue}PYENV     ${_creset}[check] "
 | 
			
		||||
    else
 | 
			
		||||
        pyenv.check | "${PY_ENV_BIN}/python" 1>/dev/null
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    local err=${PIPESTATUS[1]}
 | 
			
		||||
    if [ "$err" -ne "0" ]; then
 | 
			
		||||
| 
						 | 
				
			
			@ -616,7 +620,7 @@ pyenv.OK() {
 | 
			
		|||
        return "$err"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    build_msg PYENV "OK"
 | 
			
		||||
    [ "$VERBOSE" = "1" ] && build_msg PYENV "OK"
 | 
			
		||||
    _pyenv_OK="OK"
 | 
			
		||||
    return 0
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ server:
 | 
			
		|||
  secret_key: "ultrasecretkey"  # change this!
 | 
			
		||||
  # Set custom base_url. Possible values:
 | 
			
		||||
  #   false or "https://your.custom.host/location/"
 | 
			
		||||
  base_url: https://darmarit.org/searx
 | 
			
		||||
  # base_url: https://example.org/searx
 | 
			
		||||
  # Proxying image results through searx
 | 
			
		||||
  image_proxy: false
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue