Bug 44618

Summary: alterator-packages: После установки через acc не устанавливает через apt-get
Product: Sisyphus Reporter: Anton Shevtsov <shevtsov.anton>
Component: alterator-packagesAssignee: Andrey Cherepanov <cas>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: cas, lepata, pikone
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Anton Shevtsov 2022-12-14 15:13:29 MSK
Не работает, висит, ничего не делает, блокирует дальнейшую работу с пакетами.
Только ребутом можно восстановить работу apt-get/synaptic и прочего.

Может связано с ошибками в регулярках

gawk --source 'BEGIN { exit(0) } END { exit(0) }' --file /usr/lib/alterator/backend3/packages

gawk: /usr/lib/alterator/backend3/packages:340: warning: regexp escape sequence `\"' is not a known regexp operator
gawk: /usr/lib/alterator/backend3/packages:557: warning: regexp escape sequence `\#' is not a known regexp operator
Comment 1 Evgeny Ivanitskiy 2022-12-14 16:27:15 MSK
(Ответ для Anton Shevtsov на комментарий #0)
> Не работает, висит, ничего не делает, блокирует дальнейшую работу с пакетами.
> Только ребутом можно восстановить работу apt-get/synaptic и прочего.

Здравствуйте, могли бы Вы уточнить следующие моменты:

- На каком образе воспроизводится ошибка?
- Какая версия программы у Вас установлена?
- Какие шаги нужно сделать, чтобы ошибка воспроизвелась?
- Какой, вместо ошибки, ожидается результат?
Comment 2 Anton Shevtsov 2022-12-14 16:45:33 MSK
(Ответ для Evgeny Ivanitskiy на комментарий #1)
> (Ответ для Anton Shevtsov на комментарий #0)
> > Не работает, висит, ничего не делает, блокирует дальнейшую работу с пакетами.
> > Только ребутом можно восстановить работу apt-get/synaptic и прочего.
> 
> Здравствуйте, могли бы Вы уточнить следующие моменты:
> 
> - На каком образе воспроизводится ошибка?

натолкнулся в 8СП, + проверил на wks 10, версия одна везде, во всех дистрибутивах

> - Какая версия программы у Вас установлена?

https://packages.altlinux.org/ru/sisyphus/srpms/alterator-packages/
0.5.4

> - Какие шаги нужно сделать, чтобы ошибка воспроизвелась?

попробуйте установить любой пакет. Когда надоесть ждать сходите в apt-get, и увидите что и он тоже теперь не работает

> - Какой, вместо ошибки, ожидается результат?

установленный пакет
Comment 3 Evgeny Ivanitskiy 2022-12-20 11:43:13 MSK
После установки пакетов через alterator-packages не удается установить пакеты через apt-get без перезагрузки системы

Версия пакета:
alterator-packages 0.5.4-alt10

Проверялось в виртуальной машине на workstation K обновленной до Sisyphus

Шаги для воспроизведения:
1. Установить alterator-packages
2. Открыть acc и нажать "Установка пакетов" в разделе "Программное обеспечение"
3. Установить один пакет
4. После окончания установки пакета открыть терминал
5. В терминале выполнить установку любого пакета
Например:
# apt-get install neovim

Ожидаемый результат:
Программа успешно установлена

Получаемый результат:
Установка "Зависает"
Comment 4 Elena Mishina 2023-10-30 16:09:51 MSK
(Ответ для Anton Shevtsov на комментарий #2)

> > > Не работает, висит, ничего не делает, блокирует дальнейшую работу с пакетами.
> > > Только ребутом можно восстановить работу apt-get/synaptic и прочего.

На самом деле не только ребутом) Достаточно завершить процесс apt-pipe (см. также https://bugzilla.altlinux.org/31526)

Это происходит потому что при нажатии кнопки "Выход" в асс событие destroyed не срабатывает
(document:root
 (when destroyed
   (woo-write "/packages/control" 'control "quit")))

> 
> попробуйте установить любой пакет. Когда надоесть ждать сходите в apt-get, и
> увидите что и он тоже теперь не работает
> 

Про надоест ждать - это вторая ошибка:
Если запускать acc от пользователя, то все пакеты устанавливаются, а если от root, то кажется, что процесс завис, но на самом деле пакеты устанавливаются, но процесс висит.
Нужно от roota запускать /usr/bin/acc и тогда этой проблемы не будет (см. также https://bugzilla.altlinux.org/38425) (или предварительно для root задать значение переменной TMPDIR: /tmp).

При запуске от пользователя (+consolehelper) создаётся /tmp/alterator/browser-sock, а при запуске от root (/usr/sbin/acc) — /tmp/.private/root/alterator/browser-sock. При установке/удалении пакетов с этими файлами пытается работать alterator-mailbox-send. Но т.к. значение переменной TMPDIR в  alterator-mailbox-send не попадает:
tmp: (null) 
path: (null)/alterator/browser-sock

срабатывает только подключение try_connect(sock,"/tmp/alterator/browser-sock"), которое существует только при запуске через /usr/bin/acc