Bug 57241 - command-not-found включается/выключается не с первого раза
Summary: command-not-found включается/выключается не с первого раза
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: command-not-found (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: radiolamp@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-12-16 11:36 MSK by obidinog@basealt.ru
Modified: 2026-03-16 17:40 MSK (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description obidinog@basealt.ru 2025-12-16 11:36:46 MSK
Платформа:
Alt Kworkstation p11 x86_64 (Обновленный до Sisyphus)

Пакет:
command-not-found 0.5-alt1

Шаги:
Установить пакет
# apt-get install command-not-found

# command-not-found --work=enable
Рабочий режим ВКЛЮЧЕНО и сохранён в настройках

Результат: Режим НЕ включен, в конфиге не добавилась строка
WORK_ENABLED=1

Ожидаемый результат: Режим включен 

Дополнительно: Необходимо команду включения ввести второй раз, чтобы режим включился
Comment 1 obidinog@basealt.ru 2025-12-16 12:00:27 MSK
Аналогичное поведение с первым выключением
# command-not-found --work=disable

Первый раз при использовании, рабочий режим не отключается
Comment 2 Elena Mishina 2026-03-03 13:45:37 MSK
Ошибка стабильно воспроизводится после установки пакета. После второго выполнения команды отключения, все дальнейшие выключения/включения выполняются с первого раза. 

Шаги воспроизведения:
# apt-get install command-not-found

# command-not-found --status
Текущий рабочий режим: ВКЛЮЧЕНО
Файл конфигурации существует: /etc/command-not-found/config (exists)

# command-not-found --work=disable
Рабочий режим ВЫКЛЮЧЕНО и сохранён в настройках

# command-not-found --status
Текущий рабочий режим: ВКЛЮЧЕНО
Файл конфигурации существует: /etc/command-not-found/config (exists)

# command-not-found --status
Текущий рабочий режим: ВКЛЮЧЕНО
Файл конфигурации существует: /etc/command-not-found/config (exists)

# command-not-found --work=disable
Рабочий режим ВЫКЛЮЧЕНО и сохранён в настройках
# command-not-found --status
Текущий рабочий режим: ВЫКЛЮЧЕНО
Файл конфигурации существует: /etc/command-not-found/config (exists)
Comment 3 Radiolamp 2026-03-16 08:50:53 MSK
Вы перезапускаете после установки shell?
Comment 4 Антон Мидюков 2026-03-16 09:20:35 MSK
(Ответ для Radiolamp на комментарий #3)
> Вы перезапускаете после установки shell?

Тогда нужно выдавать сообщение в post и postun скрипте, что shell требуется перезапустить.
Comment 5 Radiolamp 2026-03-16 09:29:33 MSK
(Ответ для Антон Мидюков на комментарий #4)
> (Ответ для Radiolamp на комментарий #3)
> > Вы перезапускаете после установки shell?
> 
> Тогда нужно выдавать сообщение в post и postun скрипте, что shell требуется
> перезапустить.

https://packages.altlinux.org/ru/sisyphus/srpms/zsh-completions/specfiles/
Вот аналогичный пример где так же без перезапуска работать не будет и ни чего не указано. Нужно просто знать что модули в любом shell динамически не подцепляются на данный момент без предустановленных хуков.
Comment 6 Антон Мидюков 2026-03-16 09:30:59 MSK
(Ответ для Антон Мидюков на комментарий #4)
> (Ответ для Radiolamp на комментарий #3)
> > Вы перезапускаете после установки shell?
> 
> Тогда нужно выдавать сообщение в post и postun скрипте, что shell требуется
> перезапустить.

Аналогично должно быть предупреждение при выполнении:
# command-not-found --work=enable
и
# command-not-found --work=disable

Но думаю, что правильнее в %post и %preun выполнять эти две команды, соответственно, с соответствующим предупреждением.
Comment 7 Антон Мидюков 2026-03-16 09:32:07 MSK
(Ответ для Radiolamp на комментарий #5)
> (Ответ для Антон Мидюков на комментарий #4)
> > (Ответ для Radiolamp на комментарий #3)
> > > Вы перезапускаете после установки shell?
> > 
> > Тогда нужно выдавать сообщение в post и postun скрипте, что shell требуется
> > перезапустить.
> 
> https://packages.altlinux.org/ru/sisyphus/srpms/zsh-completions/specfiles/
> Вот аналогичный пример где так же без перезапуска работать не будет и ни
> чего не указано. Нужно просто знать что модули в любом shell динамически не
> подцепляются на данный момент без предустановленных хуков.

Целевая аудитория разная. Тем, кто пользуется zsh, ничего объяснять не надо.
Comment 8 Radiolamp 2026-03-16 10:40:45 MSK
zsh так же предустановлен в alt sysyphus как и bash и целевая аудитория у них одна и та же :)
Comment 9 Антон Мидюков 2026-03-16 10:42:10 MSK
(Ответ для Radiolamp на комментарий #8)
> zsh так же предустановлен в alt sysyphus как и bash и целевая аудитория у
> них одна и та же :)

Совершенно не так. zsh включать надо. Его новички себе не включают.
Comment 10 Radiolamp 2026-03-16 10:44:50 MSK
Это субьективно, в целом задумка не плохая, но тогда я предлагаю что бы во всех пакетах так делали связанные с модулями shell.
Comment 11 Repository Robot 2026-03-16 17:40:48 MSK
command-not-found-0.6-alt1 -> sisyphus:

Mon Mar 16 2026 Anton Osipov <radiolamp@altlinux> 0.6-alt1
- Improved package sorting (Closes: 58094).
- Added post and postun recommendation to restart $SHELL (Closes: 57241).
- Added warning that command not found if program is disabled (Closes: 57241).
- Complete removal of apt-cache.