Bug 38617 - Сбой aspell при использовании симлинка /usr/share/aspell/ru.dat -> ru-lebedev.dat
Summary: Сбой aspell при использовании симлинка /usr/share/aspell/ru.dat -> ru-lebedev...
Status: CLOSED WORKSFORME
Alias: None
Product: Branch p9
Classification: Distributions
Component: aspell (show other bugs)
Version: не указана
Hardware: aarch64 Linux
: P5 normal
Assignee: qa-team@altlinux.org
QA Contact: qa-p9@altlinux.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-06-16 13:40 MSK by jqt4
Modified: 2023-07-03 11:43 MSK (History)
3 users (show)

See Also:


Attachments
Лог команды, которая не завершается. (15.59 KB, text/plain)
2020-06-22 13:33 MSK, invariabilis
no flags Details
Лог успешного завершения команды (16.62 KB, text/plain)
2020-06-22 13:34 MSK, invariabilis
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description jqt4 2020-06-16 13:40:45 MSK
recoll выдаёт ошибку:

aspell : aspell dictionary creation command failed: /usr/bin/aspell --lang=ru --encoding=utf-8 create master /home/user/.recoll/aspdict.ru.rws One possible reason might be missing language
data files for lang = ru. Maybe try to execute the command by hand for a better diag.

При выполнении указанной в сообщении команды выдаётся сообщение:

/usr/bin/aspell --lang=ru --encoding=utf-8 create master /home/user/.recoll/aspdict.ru.rws
Ошибка: The language "ru" is not known. Это возможно вследствие: the file "/usr/share/aspell/ru.dat" can not be opened for reading.

Это сообщение воспроизводится и на x86_64

Файла /usr/share/aspell/ru.dat действительно нет. Есть похожие: ru-lebedev.dat ru-rk.dat

Эта проблема была решена для Сизифа в баге 36827

Создал симлинк вручную:
ln -s ru-lebedev.dat /usr/share/aspell/ru.dat

После этого каманда
/usr/bin/aspell --lang=ru --encoding=utf-8 create master /home/user/.recoll/aspdict.ru.rws
не завершается и не выдаёт сообщений.
Проблема воспроизвелась и на x86_64
Comment 1 invariabilis 2020-06-22 13:33:46 MSK
Created attachment 8844 [details]
Лог команды, которая не завершается.
Comment 2 invariabilis 2020-06-22 13:34:26 MSK
Created attachment 8845 [details]
Лог успешного завершения команды
Comment 3 Sergey Novikov 2020-06-22 15:39:35 MSK
Какое ожидаемое поведение команды?
/usr/bin/aspell --lang=ru --encoding=utf-8 create master /home/user/.recoll/aspdict.ru.rws
Comment 4 jqt4 2020-06-22 15:55:46 MSK
Насколько я понимаю, команда
/usr/bin/aspell --lang=ru --encoding=utf-8 create master /home/user/.recoll/aspdict.ru.rws
должна создать файл /home/user/.recoll/aspdict.ru.rws из файла /usr/share/aspell/ru.dat и завершиться без ошибок.
Comment 5 invariabilis 2020-06-22 16:30:15 MSK
Забыл отправить текстовую часть.

Я выполнил две команды. Собственно, логи их выполнения:
1.
test@workstation-9-x86-64-20200617 ~ $ strace -o /home/test/1 aspell --lang=ru --encoding=utf-8 create master /home/test/test.rws
2.
test@workstation-9-x86-64-20200617 ~ $ strace -o /home/test/log aspell --lang=ru --encoding=utf-8 create master /home/test/test.rws < 1.txt

В первом случае программа что-то выполняет, при этом файл словаря не создаётся.
Во втором случае, когда на вход программы подаю файл со словами - всё успешно создаётся.
Comment 6 Nikolai Zurabishvili 2023-07-03 11:43:32 MSK
При установленных пакетах :

aspell-en-2018.04.16-alt1_2.x86_64
aspell-ru-lebedev-0.99g5-alt14.x86_64
aspell-0.60.8-alt1.x86_64

На стенде p9-workstation-9.2-x86-64 

Команда aspell --lang=ru --encoding=utf-8 create master /home/test/test.rws не "что-то выполняет и не завершается" а ждет ввода пользователя, а именно слов из которых будет создан словарь (слова надо вводить через ENTER и после составления списка нажать CTRL+D, после чего будет создан файл словаря test.rws)

Команда aspell --lang=ru --encoding=utf-8 create master /home/test/test.rws < 1.txt работает аналогично, только получает список слов из файла 1.txt и затем создает файл словаря test.rws