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

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

    <bug>
          <bug_id>34323</bug_id>
          
          <creation_ts>2017-12-12 01:24:13 +0300</creation_ts>
          <short_desc>Неверная обработка зависимостей на команды, если команда является ссылкой</short_desc>
          <delta_ts>2021-04-07 14:54:38 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>3</classification_id>
          <classification>Distributions</classification>
          <product>Branch p8</product>
          <component>rpm-build</component>
          <version>не указана</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>NOTABUG</resolution>
          
          <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=22887</see_also>
    
    <see_also>https://bugzilla.altlinux.org/show_bug.cgi?id=39891</see_also>
          <bug_file_loc>http://git.altlinux.org/people/lav/packages/broken-symlink-requires.git</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>major</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>34318</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Vitaly Lipatov">lav</reporter>
          <assigned_to name="Andrey Cherepanov">cas</assigned_to>
          <cc>asy</cc>
    
    <cc>glebfm</cc>
    
    <cc>m</cc>
          
          <qa_contact name="qa-p8@altlinux.org">qa-p8</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>167850</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2017-12-12 01:24:13 +0300</bug_when>
    <thetext>На p8 (rpm-build-4.0.4-alt101.M80P.1)
при сборке пакета, имеющего скрипт с вызовом ip:
...
find-requires: FINDPACKAGE-COMMANDS: ip
Requires: /bin/ip, /bin/sh

При этом
# apt-get install /bin/ip установить не умеет (в отличие от /sbin/ip):
...
Building Dependency Tree... Done
E: Couldn&apos;t find package /bin/ip

На Сизифе (rpm-build-4.0.4-alt106.x86_64)
при сборке пакета, имеющего скрипт с вызовом ip:
...
find-requires: FINDPACKAGE-COMMANDS: ip
Requires: /bin/sh, iproute2

Пример репозитория:
git.alt:/people/lav/packages/broken-symlink-requires.git</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167875</commentid>
    <comment_count>1</comment_count>
    <who name="Sergey Y. Afonin">asy</who>
    <bug_when>2017-12-12 16:50:46 +0300</bug_when>
    <thetext>Как бы не оказалось, что в Сизифе это работает из-за нового rpm... Тогда вряд ли это будет в p8.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167877</commentid>
    <comment_count>2</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2017-12-12 17:03:47 +0300</bug_when>
    <thetext>(В ответ на комментарий №1)
&gt; Как бы не оказалось, что в Сизифе это работает из-за нового rpm... Тогда вряд
&gt; ли это будет в p8.
Проблема в скрипте поиска зависимостей, как я понимаю. Где найденный файл преобразуется в название пакета. А это всё в rpm-build, и rpm (который устанавливает пакеты) отношения не имеет.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171956</commentid>
    <comment_count>3</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2018-06-18 18:36:44 +0300</bug_when>
    <thetext>Если в rpm-build-4.0.4-alt101.M80P.1 есть проблема, а в rpm-build-4.0.4-alt106 проблемы нет, стоит ожидать портирования в p8 или оставим систему в состоянии, не умеющем обрабатывать команды из симлинков?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171958</commentid>
    <comment_count>4</comment_count>
    <who name="Gleb F-Malinovskiy">glebfm</who>
    <bug_when>2018-06-18 18:46:18 +0300</bug_when>
    <thetext>(In reply to comment #3)
&gt; Если в rpm-build-4.0.4-alt101.M80P.1 есть проблема,

А она есть?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171992</commentid>
    <comment_count>5</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2018-06-19 20:41:36 +0300</bug_when>
    <thetext>(В ответ на комментарий №4)
&gt; (In reply to comment #3)
&gt; &gt; Если в rpm-build-4.0.4-alt101.M80P.1 есть проблема,
&gt; 
&gt; А она есть?
Коварный вопрос. Так, проблема на тестовом стенде не воспроизводится. Пошёл искать в поле.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172741</commentid>
    <comment_count>6</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2018-07-19 18:37:37 +0300</bug_when>
    <thetext>*** Bug 35163 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172809</commentid>
    <comment_count>7</comment_count>
    <who name="mikhailnov">m</who>
    <bug_when>2018-07-20 12:54:05 +0300</bug_when>
    <thetext>Подтверждаю проблему в p8. Воспроизведение здесь: https://bugzilla.altlinux.org/show_bug.cgi?id=35163#c4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193999</commentid>
    <comment_count>8</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-11-10 00:32:15 +0300</bug_when>
    <thetext>(Ответ для Gleb F-Malinovskiy на комментарий #4)
&gt; (In reply to comment #3)
&gt; &gt; Если в rpm-build-4.0.4-alt101.M80P.1 есть проблема,
&gt; 
&gt; А она есть?

Я уже подготовил точное воспроизведение:

Проблема есть. И на p9 тоже. Тестовое задание:

http://git.altlinux.org/tasks/261141/gears/100/git?p=git;a=blob;f=broken-symlink-requires.spec;h=f500668b99a2c9c9d06f078cddd62e554e927e26;hb=ec85abd1a042538c79b6ffaabda231a68c2c6606

Собранный пакет в p9 не устанавливается:
http://git.altlinux.org/tasks/261141/build/100/x86_64/rpms/broken-symlink-requires-1.3-alt1.noarch.rpm

rpm -Uvh broken-symlink-requires-1.3-alt1.noarch.rpm
ошибка: Неудовлетворенные зависимости:
	/bin/ip нужен для broken-symlink-requires-1.3-alt1.noarch


Но оказалось, что всё это фейк, возникший из-за того, что на машине был создан симлинк /bin/ip.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194000</commentid>
    <comment_count>9</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-11-10 00:49:57 +0300</bug_when>
    <thetext>Выяснилось, что собранный с ошибкой пакет можно получить только при наличии /bin/ip в системе:

Если сборку этого пакета запустить в системе, где выполнено
# ln -s /usr/bin/ip /bin/ip
то вместо зависимости на iproute2 будет указана /bin/ip

и пакет не установится:
ошибка: Неудовлетворенные зависимости:
	/bin/ip нужен для broken-symlink-requires-1.3-alt1.noarch</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>