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

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

    <bug>
          <bug_id>39242</bug_id>
          
          <creation_ts>2020-11-10 16:08:35 +0300</creation_ts>
          <short_desc>Добавление Suggests в rpm</short_desc>
          <delta_ts>2020-11-11 21:57:44 +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>rpm-build</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <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="Vitaly Lipatov">lav</reporter>
          <assigned_to name="placeholder@altlinux.org">placeholder</assigned_to>
          <cc>arseny</cc>
    
    <cc>cas</cc>
    
    <cc>glebfm</cc>
    
    <cc>imz</cc>
    
    <cc>iv</cc>
    
    <cc>ldv</cc>
    
    <cc>m</cc>
    
    <cc>placeholder</cc>
    
    <cc>rider</cc>
    
    <cc>vt</cc>
    
    <cc>zerg</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>194041</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-11-10 16:08:35 +0300</bug_when>
    <thetext>Указание Suggests позволило бы мягко указывать, какой пакет поставить при прочих равных.

Например, при установке mediawiki-extensions-PdfHandler 

 # apt-cache depends mediawiki-extensions-PdfHandler выбрался бы конкретный пакет, а не первый попавшийся. В то же время Suggests не мешается, если требуемая зависимость уже установлена.

mediawiki-extensions-PdfHandler-1.35.0-alt4:p9+261266.40.4.1@1604944379
  Требует: &lt;/usr/bin/convert&gt;
    ImageMagick-tools-6.9.11.23-alt1:p9+254712.100.2.1@1594661886
    GraphicsMagick-ImageMagick-compat-1.3.30-alt2.1:sisyphus+219907.6600.2.1@1548537237</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194043</commentid>
    <comment_count>1</comment_count>
    <who name="Anton Farygin">rider</who>
    <bug_when>2020-11-10 16:12:46 +0300</bug_when>
    <thetext>поддерживаю, очень нужна эта возможность.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194044</commentid>
    <comment_count>2</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2020-11-10 16:19:55 +0300</bug_when>
    <thetext>https://fedoraproject.org/wiki/Packaging:WeakDependencies</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194053</commentid>
    <comment_count>3</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-11-10 19:09:46 +0300</bug_when>
    <thetext>Вы пишете про указание Suggests (пакет rpm-build), в примере у вас apt-cache (пакет apt), а баг вешаете на rpm.  Я не понимаю.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194055</commentid>
    <comment_count>4</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-11-10 19:20:26 +0300</bug_when>
    <thetext>(Ответ для Dmitry V. Levin на комментарий #3)
&gt; Вы пишете про указание Suggests (пакет rpm-build), в примере у вас apt-cache
&gt; (пакет apt), а баг вешаете на rpm.  Я не понимаю.
Исправил на rpm-build.
Как я понимаю, после того, как можно будет добавлять тэг Suggests в пакет, можно будет перейти к apt для его учитывания.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194087</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-11-11 12:54:58 +0300</bug_when>
    <thetext>Поскольку перспективы добавления поддержки чего-либо в apt сейчас более чем туманны, я предлагаю подождать, пока они прояснятся.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194097</commentid>
    <comment_count>6</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-11-11 15:53:34 +0300</bug_when>
    <thetext>(Ответ для Dmitry V. Levin на комментарий #5)
&gt; Поскольку перспективы добавления поддержки чего-либо в apt сейчас более чем
&gt; туманны, я предлагаю подождать, пока они прояснятся.

Да, но если из апстрим в rpm приедет поддержка Suggestions, то их можно было было бы поддерживать помимо rpm (типа сначала ставить все suggestions из rpm-пакетов, а потом уже аптом ставить пакеты). Это было бы полезно для разрешаторов неоднозначных зависимостей, которые сейчас всё равно вне apt находятся.

В общем, видимо, это бага пока будет просто для новостей по теме...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194099</commentid>
    <comment_count>7</comment_count>
    <who name="mikhailnov">m</who>
    <bug_when>2020-11-11 16:15:28 +0300</bug_when>
    <thetext>(Ответ для Vitaly Lipatov на комментарий #6)
&gt; Это было бы полезно для
&gt; разрешаторов неоднозначных зависимостей, которые сейчас всё равно вне apt
&gt; находятся.
А о каких резрешаторах вне apt речь?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194100</commentid>
    <comment_count>8</comment_count>
    <who name="mikhailnov">m</who>
    <bug_when>2020-11-11 16:16:33 +0300</bug_when>
    <thetext>Помимо rpm-build, понадобится поддержка в генераторе метаданных, чтобы дополнительные разрешаторы могли этим пользоваться.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194103</commentid>
    <comment_count>9</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2020-11-11 17:34:39 +0300</bug_when>
    <thetext>(Ответ для Михаил Новоселов на комментарий #7)
&gt; (Ответ для Vitaly Lipatov на комментарий #6)
&gt; &gt; Это было бы полезно для
&gt; &gt; разрешаторов неоднозначных зависимостей, которые сейчас всё равно вне apt
&gt; &gt; находятся.
&gt; А о каких резрешаторах вне apt речь?

Об интерактивных оболочках: synaptic, packageinstall, alterator-pkg, alterator-packages, packageinstall, PackageKit. Пожалуйста, реализуйте во всех указанных пакетах хуки интерактивного выбора.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194105</commentid>
    <comment_count>10</comment_count>
    <who name="mikhailnov">m</who>
    <bug_when>2020-11-11 17:38:56 +0300</bug_when>
    <thetext>В апстримном rpm нет никаких хуков интерактивного выбора, там либо в пакетном менеджере включена установка мягких зависимостей, либо нет. Как и нет вопросов, что сделать с изменившимся %config, в отличие от dpkg.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194106</commentid>
    <comment_count>11</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2020-11-11 17:41:05 +0300</bug_when>
    <thetext>(Ответ для Михаил Новоселов на комментарий #10)
&gt; В апстримном rpm нет никаких хуков интерактивного выбора, там либо в
&gt; пакетном менеджере включена установка мягких зависимостей, либо нет. Как и
&gt; нет вопросов, что сделать с изменившимся %config, в отличие от dpkg.

В таком случае ценность подобного решения крайне сомнительна.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194107</commentid>
    <comment_count>12</comment_count>
    <who name="mikhailnov">m</who>
    <bug_when>2020-11-11 17:43:16 +0300</bug_when>
    <thetext>(Ответ для Andrey Cherepanov на комментарий #11)
&gt; (Ответ для Михаил Новоселов на комментарий #10)
&gt; &gt; В апстримном rpm нет никаких хуков интерактивного выбора, там либо в
&gt; &gt; пакетном менеджере включена установка мягких зависимостей, либо нет. Как и
&gt; &gt; нет вопросов, что сделать с изменившимся %config, в отличие от dpkg.
&gt; 
&gt; В таком случае ценность подобного решения крайне сомнительна.

Это вполне решит то, что хочет решить Виталий.

Suggests прописывается не в тех пакетах, которые участвуют в выборе, а в неком стороннем пакете, который может быть установлен. Решение о выборе должно приниматься штатным резолвером зависимостей на основе анализа всех метаданных подключенных репозиториев, делать какие-то сторонние выборы в обход apt сомнительно, т.к. потребует изобрести велосипедный разрешатель зависимостей, по функционалу фактически дублирующий apt, а результаты их выбора могут оказаться разными.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194108</commentid>
    <comment_count>13</comment_count>
    <who name="mikhailnov">m</who>
    <bug_when>2020-11-11 17:46:28 +0300</bug_when>
    <thetext>Suggests вообще не требуется для какого-то интерактивного выбора между альтернативами, мне кажется. Сейчас известно, что 2 пакета предоставляют /usr/bin/convert, этой информации достаточно для дачи пользователю возможности интерактивного выбора.
Suggests рулит выбором по умолчанию, кажется, в apt где-то были списки приоритетов, поставляемые конфигами, если я не путаю и они правда есть, то Suggests - примерно то же самое, но реализованное иначе.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194113</commentid>
    <comment_count>14</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-11-11 21:57:44 +0300</bug_when>
    <thetext>(Ответ для Михаил Новоселов на комментарий #7)
&gt; (Ответ для Vitaly Lipatov на комментарий #6)
&gt; &gt; Это было бы полезно для
&gt; &gt; разрешаторов неоднозначных зависимостей, которые сейчас всё равно вне apt
&gt; &gt; находятся.
&gt; А о каких резрешаторах вне apt речь?
Ну вообще я имел в виду установку пакетов в hasher и у меня ещё есть похожая штука rpmreqs в etersoft-build-utils, которая выводит список зависимостей, разрешённый в названия пакетов.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>