<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>55018</bug_id>
          
          <creation_ts>2025-07-02 14:04:47 +0300</creation_ts>
          <short_desc>Список пакетов нефункционален</short_desc>
          <delta_ts>2025-12-19 15:59:57 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>alt-components-base</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=55721</see_also>
    
    <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=55924</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergey V Turchin">zerg</reporter>
          <assigned_to name="Evgeny Sinelnikov">sin</assigned_to>
          <cc>alxvmr</cc>
    
    <cc>armatik</cc>
    
    <cc>jqt4</cc>
    
    <cc>liannnix</cc>
    
    <cc>liannnix</cc>
    
    <cc>mvb</cc>
    
    <cc>oleg</cc>
    
    <cc>rauty</cc>
    
    <cc>rider</cc>
    
    <cc>sin</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>268233</commentid>
    <comment_count>0</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2025-07-02 14:04:47 +0300</bug_when>
    <thetext>Предлагаю добавить в описание компоненты секции
[packages-install] и [packages-remove]
Списки из которых будут применяться только для установки и только для удаления. Список из [packages] должен применяться в обоих случаях.

Полезно, когда, например, у меня компонента KDE с единственным пакетом kde-big, а после её удаления удалится ровно ничего.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272215</commentid>
    <comment_count>1</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2025-09-09 19:03:30 +0300</bug_when>
    <thetext>А так же при удалении компонент предлагаю вычислять все удаляемые пакеты, из них убирать все устанавливаемые(если бы устанавливались), а остальные предлагать на подтверждение удаления пользователю.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272217</commentid>
    <comment_count>2</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2025-09-09 19:15:29 +0300</bug_when>
    <thetext>Мне кажется что при использовании компонент надо вообще вести транзакции установки/удаления пакетов и запоминать те пакеты, которые ставились при компонентах (что бы в дальнейшем их попробовать удалить).
Управление этим, правда, выглядит очень сложной историей.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272224</commentid>
    <comment_count>3</comment_count>
    <who name="Evgeny Sinelnikov">sin</who>
    <bug_when>2025-09-10 02:43:38 +0300</bug_when>
    <thetext>Исходное предложение избыточно.

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

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

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

___________

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

_______________

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

Насколько я понимаю, при формировании транзакции устанавливаемые пакеты из пакетов удаляемых компонент должны убираться. Другое дело, если они для компоненты явно не указаны. В любом случае, большая часть возможных ситуаций непреднамеренного удаления пакетов предусмотрены. Если имеются конкретные кейсы, прошу привести.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272229</commentid>
    <comment_count>4</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2025-09-10 09:20:55 +0300</bug_when>
    <thetext>(Ответ для Anton Farygin на комментарий #2)
&gt; Мне кажется что при использовании компонент надо вообще вести транзакции
&gt; установки/удаления пакетов и запоминать те пакеты, которые ставились при
&gt; компонентах (что бы в дальнейшем их попробовать удалить).
Не надо. Этот список со временем изменится, что вызовет проблемы.
Лучше в реальном времени делать, как я предложил в comment#0 + comment#1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272230</commentid>
    <comment_count>5</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2025-09-10 09:22:33 +0300</bug_when>
    <thetext>(Ответ для Evgeny Sinelnikov на комментарий #3)
&gt; Например, если мы хотим, чтобы при удалении kde-big
Тут уже ошибка. Ты не знаешь и никогда не узнаешь, что нужно удалять при таком подходе.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272231</commentid>
    <comment_count>6</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2025-09-10 09:23:30 +0300</bug_when>
    <thetext>(Ответ для Evgeny Sinelnikov на комментарий #3)
&gt; указание их в общем перечне на установку приведёт к их удалению при удалении компоненты.
Нет. Это 2 разных списка.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>272232</commentid>
    <comment_count>7</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2025-09-10 09:25:06 +0300</bug_when>
    <thetext>Зашёл дополнить, но тогда дальнейшие фичереквесты по этому поводу пока придержу.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>