about summary refs log tree commit diff
path: root/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/hunspell-dirs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/hunspell-dirs.patch')
-rw-r--r--pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/hunspell-dirs.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/hunspell-dirs.patch b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/hunspell-dirs.patch
new file mode 100644
index 000000000000..7b624b379a26
--- /dev/null
+++ b/pkgs/tools/inputmethods/ibus-engines/ibus-typing-booster/hunspell-dirs.patch
@@ -0,0 +1,31 @@
+diff --git a/engine/itb_util.py b/engine/itb_util.py
+index ded236a..633525a 100755
+--- a/engine/itb_util.py
++++ b/engine/itb_util.py
+@@ -1876,14 +1876,18 @@ def find_hunspell_dictionary(language):
+             If no dictionary can be found for the requested language,
+             the return value is ('', '').
+     '''
+-    dirnames = [
+-        '/usr/share/hunspell',
+-        '/usr/share/myspell',
+-        '/usr/share/myspell/dicts',
+-        '/usr/local/share/hunspell', # On FreeBSD the dictionaries are here
+-        '/usr/local/share/myspell',
+-        '/usr/local/share/myspell/dicts',
+-    ]
++
++    if "NIX_HUNSPELL_DIRS" in os.environ:
++        dirnames = os.environ["NIX_HUNSPELL_DIRS"].split(":")
++    else:       # fallback to the original behavior
++        dirnames = [
++            '/usr/share/hunspell',
++            '/usr/share/myspell',
++            '/usr/share/myspell/dicts',
++            '/usr/local/share/hunspell', # On FreeBSD the dictionaries are here
++            '/usr/local/share/myspell',
++            '/usr/local/share/myspell/dicts',
++        ]
+     dic_path = ''
+     aff_path = ''
+     for language in expand_languages([language]):