about summary refs log tree commit diff
diff options
context:
space:
mode:
authorrnhmjoj <rnhmjoj@inventati.org>2023-06-30 21:53:42 +0200
committerrnhmjoj <rnhmjoj@inventati.org>2023-06-30 21:58:36 +0200
commit2151defed00e45c9a4a43cdb6d1119a07be07d0f (patch)
tree9cfff1259f4e63d27d7dfe0072dbed1bb0643d72
parent91dbeebd0fb9018bc202962ca08d5760e4bebc98 (diff)
searx: fix for flask-babel 3.0
The update to flask-babel 3.0 (48958930) broke searx, despite the program
apparently building.
-rw-r--r--pkgs/servers/web-apps/searx/default.nix4
-rw-r--r--pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch27
2 files changed, 31 insertions, 0 deletions
diff --git a/pkgs/servers/web-apps/searx/default.nix b/pkgs/servers/web-apps/searx/default.nix
index 60a8e22a48455..995d2d9fee0ac 100644
--- a/pkgs/servers/web-apps/searx/default.nix
+++ b/pkgs/servers/web-apps/searx/default.nix
@@ -14,6 +14,10 @@ toPythonModule (buildPythonApplication rec {
     sha256 = "sha256-+Wsg1k/h41luk5aVfSn11/lGv8hZYVvpHLbbYHfsExw=";
   };
 
+  patches = [
+   ./fix-flask-babel-3.0.patch
+  ];
+
   postPatch = ''
     sed -i 's/==.*$//' requirements.txt
   '';
diff --git a/pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch b/pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch
new file mode 100644
index 0000000000000..d69cc30b60af1
--- /dev/null
+++ b/pkgs/servers/web-apps/searx/fix-flask-babel-3.0.patch
@@ -0,0 +1,27 @@
+commit 38b3a4f70e3226a091c53300659752c595b120f9
+Author: rnhmjoj <rnhmjoj@inventati.org>
+Date:   Fri Jun 30 21:48:35 2023 +0200
+
+    Fix for flask-babel 3.0
+
+diff --git a/searx/webapp.py b/searx/webapp.py
+index 2027e72d..f3174a45 100755
+--- a/searx/webapp.py
++++ b/searx/webapp.py
+@@ -167,7 +167,7 @@ _flask_babel_get_translations = flask_babel.get_translations
+ def _get_translations():
+     if has_request_context() and request.form.get('use-translation') == 'oc':
+         babel_ext = flask_babel.current_app.extensions['babel']
+-        return Translations.load(next(babel_ext.translation_directories), 'oc')
++        return Translations.load(babel_ext.translation_directories[0], 'oc')
+ 
+     return _flask_babel_get_translations()
+ 
+@@ -188,7 +188,6 @@ def _get_browser_or_settings_language(request, lang_list):
+     return settings['search']['default_lang'] or 'en'
+ 
+ 
+-@babel.localeselector
+ def get_locale():
+     if 'locale' in request.form\
+        and request.form['locale'] in settings['locales']: