Bug 55018

Summary: Список пакетов нефункционален
Product: Sisyphus Reporter: Sergey V Turchin <zerg>
Component: alt-components-baseAssignee: Evgeny Sinelnikov <sin>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: alxvmr, liannnix, mvb, oleg, rauty, rider, sin
Version: unstable   
Hardware: x86_64   
OS: Linux   
See Also: https://bugzilla.altlinux.org/show_bug.cgi?id=55721
https://bugzilla.altlinux.org/show_bug.cgi?id=55924

Description Sergey V Turchin 2025-07-02 14:04:47 MSK
Предлагаю добавить в описание компоненты секции
[packages-install] и [packages-remove]
Списки из которых будут применяться только для установки и только для удаления. Список из [packages] должен применяться в обоих случаях.

Полезно, когда, например, у меня компонента KDE с единственным пакетом kde-big, а после её удаления удалится ровно ничего.
Comment 1 Sergey V Turchin 2025-09-09 19:03:30 MSK
А так же при удалении компонент предлагаю вычислять все удаляемые пакеты, из них убирать все устанавливаемые(если бы устанавливались), а остальные предлагать на подтверждение удаления пользователю.
Comment 2 Anton Farygin 2025-09-09 19:15:29 MSK
Мне кажется что при использовании компонент надо вообще вести транзакции установки/удаления пакетов и запоминать те пакеты, которые ставились при компонентах (что бы в дальнейшем их попробовать удалить).
Управление этим, правда, выглядит очень сложной историей.
Comment 3 Evgeny Sinelnikov 2025-09-10 02:43:38 MSK
Исходное предложение избыточно.

Для того, чтобы обеспечить явное удаление пакетов, которые прилетают по зависимостям, их достаточно перечислить в общем перечне пакетов, входящих в компоненту.

Например, если мы хотим, чтобы при удалении kde-big удалялись какие-то пакеты, которые мы рассчитываем что с ним прилетели, то указание их в общем перечне на установку приведёт к их удалению при удалении компоненты.

Сайд-эффектом будет отображение соответствующих пакетов в перечне пакетов входящих в компоненту. Если это проблема, то можно предусмотреть опцию, указывающую для таких пакетов необходимость их не отображать.

___________

Ещё один вариант, крайне спорный, состоит в том, чтобы при удалении компоненты удалять другие пакеты, которые явно не перечислены в списке пакетов входящих в компоненту и по зависимостям от них не прилетают. Только для таких пакетов может потребоваться отдельный список на удаление. Я не уверен, что это так стоит делать и что такое поведение было заложено исходном запросе. Но может, правда, было? Просьба уточнить.

_______________

В плане проверок на удаление проведена значительная работа - новая версия alt-components доступна для p11 в таске:
#392186 EPERM #13 p11 [...] alt-components.git=0.5.4-alt2 [...]

Насколько я понимаю, при формировании транзакции устанавливаемые пакеты из пакетов удаляемых компонент должны убираться. Другое дело, если они для компоненты явно не указаны. В любом случае, большая часть возможных ситуаций непреднамеренного удаления пакетов предусмотрены. Если имеются конкретные кейсы, прошу привести.
Comment 4 Sergey V Turchin 2025-09-10 09:20:55 MSK
(Ответ для Anton Farygin на комментарий #2)
> Мне кажется что при использовании компонент надо вообще вести транзакции
> установки/удаления пакетов и запоминать те пакеты, которые ставились при
> компонентах (что бы в дальнейшем их попробовать удалить).
Не надо. Этот список со временем изменится, что вызовет проблемы.
Лучше в реальном времени делать, как я предложил в comment#0 + comment#1
Comment 5 Sergey V Turchin 2025-09-10 09:22:33 MSK
(Ответ для Evgeny Sinelnikov на комментарий #3)
> Например, если мы хотим, чтобы при удалении kde-big
Тут уже ошибка. Ты не знаешь и никогда не узнаешь, что нужно удалять при таком подходе.
Comment 6 Sergey V Turchin 2025-09-10 09:23:30 MSK
(Ответ для Evgeny Sinelnikov на комментарий #3)
> указание их в общем перечне на установку приведёт к их удалению при удалении компоненты.
Нет. Это 2 разных списка.
Comment 7 Sergey V Turchin 2025-09-10 09:25:06 MSK
Зашёл дополнить, но тогда дальнейшие фичереквесты по этому поводу пока придержу.