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

61 Commits

Author SHA1 Message Date
ToxyFlog1627
f175574f37 [fix] typos in documentation & messages 2023-08-13 08:50:29 +02:00
Markus Heiser
fc8bd98c59 [CI] drop Python 3.7 from CI
- Python 3.7 supports security fixes only, as needed, until 2023-06 [1]
- Some of SearXNG's dependencies do no longer support Python 3.7 [2]

[1] https://peps.python.org/pep-0537/#and-beyond-schedule
[2] https://github.com/searxng/searxng/pull/2102

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-04-19 14:55:17 +02:00
Markus Heiser
6e5f22e558 [mod] replace engines_languages.json by engines_traits.json
Implementations of the *traits* of the engines.

Engine's traits are fetched from the origin engine and stored in a JSON file in
the *data folder*.  Most often traits are languages and region codes and their
mapping from SearXNG's representation to the representation in the origin search
engine.

To load traits from the persistence::

    searx.enginelib.traits.EngineTraitsMap.from_data()

For new traits new properties can be added to the class::

    searx.enginelib.traits.EngineTraits

.. hint::

   Implementation is downward compatible to the deprecated *supported_languages
   method* from the vintage implementation.

   The vintage code is tagged as *deprecated* an can be removed when all engines
   has been ported to the *traits method*.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2023-03-24 10:37:42 +01:00
nathannaveen
b5ce39b536 chore: Set permissions for GitHub actions (#3225)
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: nathannaveen <42319948+nathannaveen@users.noreply.github.com>
2022-11-04 16:50:43 +00:00
Alexandre FLAMENT
7101c5ecf2 GH workflow: add Python 3.11 2022-11-04 14:28:46 +00:00
Alexandre FLAMENT
46aaa57cfe GH workflow: use actions/cache@v3
Also cache ./.nvm and ./node_modules
2022-11-04 14:25:15 +00:00
Alexandre FLAMENT
bc1278d25e GH workflow: use actions/setup-python@v4
GitHub displays this warning with the actions/setup-python@2 :

Warning: The `set-output` command is deprecated and will be disabled soon.
Please upgrade to using Environment Files.
For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
2022-11-04 08:37:31 +00:00
Alexandre FLAMENT
1f78445d88 GitHub worfklow: add daily security check using trivy 2022-08-31 18:38:59 +00:00
Markus Heiser
692708aa77 [clean up] drop obsolete searx, filtron and morty install scripts
Since ./utils/searxng.sh is implemented, the old installation procedures from
filtron, morty and searx can be removed.

For users who want to upgrade, the procedures for removing old installations
have still been retained.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2022-07-30 13:39:35 +02:00
Alexandre Flament
e5cc3e36ad
Update data-update.yml
See #1271
2022-06-27 15:01:23 +02:00
Alexandre Flament
52d3d2fb42
data-update.yml: updated on the 28th of the month
Administrators of public instances are incentivised to update their instances on the 1st of the month.

With this commit, the data are up to date by the 1st of the next month.
2022-06-02 21:18:58 +02:00
Alexandre Flament
ec59a1580c GitHub monthly data update: add engine descriptions 2022-04-16 13:16:27 +02:00
Alexandre Flament
1f7059e040 [mod] GitHub workflow: use cache 2022-01-05 20:59:59 +01:00
Alexandre Flament
34b820a87d [fix] PR #646 2021-12-23 22:08:45 +01:00
Markus Heiser
cb1b6686f0 [ci] drop Python 3.6
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-12-23 10:09:23 +01:00
Alexandre Flament
7bd9cd51d0 integration.yml : python 3.10 2021-10-08 10:03:12 +02:00
Alexandre Flament
1bb82a6b54 SearXNG: searxng_extra 2021-10-02 17:30:39 +02:00
Alexandre Flament
499c7b3cce SearXNG: .github, searxng-docker 2021-10-01 09:48:53 +02:00
Alexandre Flament
ca73a37679
[ci] add Python 3.10.0-rc.2 2021-09-10 13:13:49 +02:00
Markus Heiser
97355672cd [translations] ./manage rename shell functions to integrate weblate
Functions implemented to run *Weblate* workflows should use prefix 'weblate.':

- babel.setup.translations.worktree --> weblate.translations.worktree

  Create git worktree ${TRANSLATIONS_WORKTREE} and checkout branch
  'translations' from Weblate's counterpart (weblate) of the SearXNG
   (origin)::

       remote weblate https://weblate.bubu1.eu/git/searxng/searxng/

- babel.weblate.to.translations     --> weblate.to.translations

  Update 'translations' branch of SearXNG (origin) with last additions from
  Weblate.

- babel.translations.to.master      --> weblate.translations.commit

  Update 'translations' branch of SearXNG (origin) with last additions from
  Weblate.  Copy the changes to the master branch, compile translations and
  create a commit in the local branch (master)

- babel.master.to.translations      --> weblate.push.translations

  Push *translation changes* from SearXNG (origin) to Weblate's
  counterpart (weblate).

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-08-16 12:06:12 +02:00
Markus Heiser
0dc8d244c5 [translation] ./manage: add comments to new functions, rename job
./mange

  Comment functions:
  - babel.setup.translations.worktree
  - babel.weblate.to.translations
  - babel.translations.to.master
  - babel.master.to.translations
  BTW:
  - changed some cd into pushd
  - removed obsolete `set -x`
  - remove not needed echo from `last_commit_message=$(echo ..`

.github/workflows/translations-update.yml
docs/dev/translation.rst

  Rename job to: "create PR for additons from weblate"

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-08-16 12:00:16 +02:00
Alexandre Flament
901ab87717 [translations] web integration
* make babel.translations.to.master: pull weblate updates
* make babel.master.to.translations: push .pot and .po files to weblate
2021-08-07 15:06:06 +02:00
Markus Heiser
900baf2eae [mod] manage - implement babel commands, drop update_translations.sh
In ./manage implement babel.*:

-  extract   : extract messages from source files and generate POT file
-  update    : update existing message catalogs from POT file
-  compile   : compile translation catalogs into binary MO files

Replace searx_extra/update/update_translations.sh by command:

- ci.babel.update

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-08-02 10:06:27 +02:00
Alexandre Flament
49aa7822d9 github workflow: babel jobs to update messages.pot 2021-08-02 09:44:13 +02:00
Alexandre Flament
7137d2893f [mod] simple theme: remove src/less/ion.less
This file is generated by webfont.
* It is now generated as searx/static/themes/simple/ion.less
* It is generated before the .less compilation.
* .gitignore includes this file

Add two new package depedencies: fontforge ttfautohint
See utils/searx.sh
2021-06-16 14:30:09 +02:00
Alexandre Flament
96ae39c3b6
Update data-update.yml
Call to peter-evans/create-pull-request@v3 : 
Use the default GITHUB_TOKEN
2021-05-01 10:21:27 +02:00
Alexandre Flament
898d789e82
Update data-update.yml
Disable fail fast: so even if a script fails, the other scripts create PR.
2021-05-01 10:15:17 +02:00
Alexandre Flament
26b0de6843
Update data-update.yml
- searxng brand
- fix call to ./manage
2021-05-01 10:10:24 +02:00
Alexandre Flament
20580bcbd4 [docker] multiarch support: linux/amd64,linux/arm64,linux/arm/v7
make docker.buildx : build and push multiarch build.
(it can't be only build)

use buildx with the --cache-from and --cache-to options to cache the layers
(only the last built is cached)
2021-04-28 14:40:00 +02:00
Alexandre Flament
a7b9eca98a
Merge pull request #8 from return42/manage-script
Replace Makefile boilerplate by shell scripts
2021-04-24 07:14:35 +02:00
Markus Heiser
360266bca9 [CI] JamesIves/github-pages-deploy-action COMMIT_MESSAGE
remove rocket symbol from the commit message

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
Suggested-by: https://github.com/JamesIves/github-pages-deploy-action/pull/576
2021-04-23 14:13:13 +02:00
Markus Heiser
5ecd539c6a [CI] JamesIves/github-pages-deploy-action SINGLE_COMMIT
Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-04-23 12:01:11 +02:00
Markus Heiser
d0e371f474 [mod] replace makefile boilerplate by 'manage' script
Replaces the make targets with the bash scripts

Signed-off-by: Markus Heiser <markus@darmarit.de>
2021-04-23 11:26:22 +02:00
Alexandre Flament
10ecc303c9
Fix integration.yml
Don't run twice the workflow on PR opened from the same repository.
2021-03-05 11:54:45 +01:00
Alexandre Flament
245f8626dd
Fix data-update.yml, run once a month 2021-03-05 11:12:31 +01:00
Alexandre Flament
d9a35fc28e
Fix data-update.yml 2021-03-05 10:24:54 +01:00
Alexandre Flament
917dff3aab
Update data-update.yml
Allow to manually running the workflow

See:
* https://docs.github.com/en/actions/managing-workflow-runs/manually-running-a-workflow
* https://docs.github.com/en/actions/reference/events-that-trigger-workflows#workflow_dispatch
2021-03-05 10:16:59 +01:00
Alexandre Flament
b97273df6b
Update data-update.yml
Remove cache
2021-03-05 09:49:39 +01:00
Alexandre Flament
b8cd326464 Add searx_extra package
Split the utils directory into:
* searx_extra contains update scripts, standalone_searx.py
* utils contains the files to build and setup searx.
2021-03-04 11:59:14 +01:00
Alexandre Flament
728e096764
data-update.yml: on PR per file 2021-02-25 08:41:17 +01:00
Alexandre Flament
46ca32c3cc [mod] update currencies.json and fetch_currencies.py
use a sparql request on wikidata to get the list of currencies.

currencies.json contains the translation for all supported searx languages.

Supersede #993
2021-02-23 16:42:28 +01:00
Alexandre Flament
aef1161633
data-update.yml: run on Friday, 16:05 UTC 2021-02-12 17:19:44 +01:00
Alexandre Flament
50bde93dbb
data-update.yml: run on searx org 2021-02-12 16:56:00 +01:00
Alexandre Flament
f59acf4138
data-update.yml: run on Friday
give the weekend to review the PR
2021-02-12 11:15:46 +01:00
Alexandre Flament
966a7a1f25 [fix] fix github action data-update.yml 2021-02-09 09:58:59 +01:00
Alexandre Flament
90b9d0d6a8 [mod] CI: minor changes
* utils/makefile.python: travis-gh-pages renamed ci-gh-pages
2021-02-02 08:53:57 +01:00
Alexandre Flament
34de715e62
Merge pull request #2500 from dalf/github-action-data
[enh] every Sunday, call utils/fetch_*.py scripts and create a PR automatically
2021-02-01 17:16:58 +01:00
Alexandre Flament
99244440e4
Merge pull request #2514 from return42/fix-gh-pages
[fix] Makefile target gh-pages & flatten history of branch gh.pages
2021-02-01 17:07:08 +01:00
Markus Heiser
8c45f1149d [hardening] github workflows - corrupted cache
aka: ensure that 'make test' works as expected

The cache contains a copy './local' which is - under some circumstance -
corrupted.  It is not possible to clear the cache [1] (see the top of the page).

Ensure that 'make test' works as expected [2] even if

- the python interpreter is missing
- the virtualenv exists but pyyaml is missing

To hardening when the workflow cache fails, this patch adds the new target
'travis.test' into the workflow.  This target probes to import a python module
'yaml'.  If this fails the virtualenv will be completely new build.

[1] https://github.com/actions/cache/issues/2#issuecomment-673493515
[2] https://github.com/searx/searx/pull/2517#discussion_r567240235

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-02-01 16:58:04 +01:00
Markus Heiser
40d2a116e1 [fix] Makefile target gh-pages & flatten history of branch gh.pages
1. This patch fixes error:

    rm -rf gh-pages/
    make V=1 gh-pages
    make[1]: Leaving directory '/800GBPCIex4/share/searx'
    [ -d "gh-pages/.git" ] || git clone  gh-pages
    fatal: repository 'gh-pages' does not exist

2. The gh-page build has been moved to ./build/gh-pages this also affects
   'travis-gh-pages'

3. The gh-pages commit messages now includes a ref to the repository and commit

4. Since a gh-pages history has only the drawback that the reposetory grows
   fast, this patch also flattens the history:

    cd build/gh-pages/; git log --oneline
    bash: cd: build/gh-pages/: Datei oder Verzeichnis nicht gefunden
    026126be (HEAD -> gh-pages, origin/gh-pages) make gh-pages: from https://github.com/return42/searx.git@71d66979c2935312e0aed7fc7c3cf6199fbe88a2

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-01-29 11:41:48 +01:00