Воспроизводится на стенде, обновлённом до Sisyphus: Alt Workstation 11.1 x86_64 Версия пакета: alt-components-base-0.10.5-alt1 Описание: При установке компоненты "ПО для среднего профессионального образования" как через Альт Центр, так и через Альт Компоненты и дальнейшей попытке их удалить возникают ошибки: 1) В Альт Центре ошибка: Неудовлетворенные зависимости: python3(curses) < 0 нужен для (установлен) iotop-0.6-alt3.noarch Операция завершилась с ошибкой. (при этом пакет iotop-0.6-alt3 в системе установлен) 2) В Альт Компонентах: Транзакция содержит пакеты на удаление, помеченные системой как установленные вручную В обоих случаях компонента не удаляется из системы. Шаги для воспроизведения: 1) Запустить Альт Центр и перейти в Режим Эксперта, зайти во вкладку Компоненты. 2) Найти в списке и установить компонент "ПО для среднего профессионального образования", дождаться успешной установки. 3) Попытаться удалить компоненту "ПО для среднего профессионального образования" средствами Альт Центр или Альт Компоненты. Ожидаемый результат: Компоненты и все их содержимое удаляется. Реальный результат: Компоненты остаются в системе. Воспроизводится в p11. Не воспроизводится на Alt Education 11.1 KDE/XFCE, не воспроизводится на KWorkstation 11.4
Так происходит, потому что в составе компоненты "ПО для среднего профессионального образования" находится python3-modules-curses. Этот пакет установлен в системе по умолчанию - еще до того, как вы устанавливаете "ПО для среднего профессионального образования". Также по умолчанию установлен и iotop, который зависит от python3-modules-curses. Когда вы пытаетесь удалить компоненту, то команда на удаление содержит в себе и python3-modules-curses. Альтцентр, а если быть точнее, rpm сообщает, что от python3-modules-curses зависит iotop, и обрывает выполнение. Это не связано с компонентой как таковой, можете просто выполнить на Alt Workstation следующую команду, будет тот же результат: # rpm -e python3-modules-curses ошибка: Неудовлетворенные зависимости: python3(curses) < 0 нужен для (установлен) iotop-0.6-alt3.noarch Альт Компоненты сообщают примерно то же самое, только другими словами - пакет был установлен до установки компоненты, а значит его удаление может привести к поломке чего-либо в системе. Оба приложения по сути останавливают процесс, т.к. расценивают его опасным. В связи с этим ожидаемый результат изначально неправильный, удаление всего содержимого компоненты может привести к фатальным последствиям.
(Ответ для Белая Алёна на комментарий #1) > Так происходит, потому что в составе компоненты "ПО для среднего > профессионального образования" находится python3-modules-curses. Этот пакет > установлен в системе по умолчанию - еще до того, как вы устанавливаете "ПО > для среднего профессионального образования". > Также по умолчанию установлен и iotop, который зависит от > python3-modules-curses. Согласен, но тогда вопрос сопровождающему: Есть ли смысл включать этот пакет в данный компонент? Я проверил, пакет python3-modules-curses действительно по умолчанию присутствует во всех актуальных дистрибутивах. Его наличие в компоненте точно препятствует нормальному удалению последнего, возникает выше описанная ошибка, что точно не является ожидаемым поведением.
(Ответ для Mikhail D Hoteev на комментарий #2) > Есть ли смысл включать этот пакет в данный компонент? Если он нужен, то обязательно. > Я проверил, пакет > python3-modules-curses действительно по умолчанию присутствует во всех > актуальных дистрибутивах. Сейчас да, потом может быть не так. По-хорошему, пользователь должен иметь возможность удалить то, что поставил сам. Приложение должно понимать, какие пакеты были установлены "до" и при удалении удалять только те, которые были установлены в процессе установки компоненты, не трогая те, которые были установлены до. Считаю, что ошибка в поведении всё-таки скорее есть, чем её нету.