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

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

    <bug>
          <bug_id>29650</bug_id>
          
          <creation_ts>2013-12-13 07:01:43 +0400</creation_ts>
          <short_desc>i586-libnss-{mdns,myhostname} should be installed along with libnss-{mdns,myhostname} and i586-glibc-nss</short_desc>
          <delta_ts>2020-10-29 02:46:28 +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>wine-full</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dmitry Timoshkov">dmitry</reporter>
          <assigned_to name="Vitaly Lipatov">lav</assigned_to>
          <cc>aen</cc>
    
    <cc>cas</cc>
    
    <cc>dd</cc>
    
    <cc>lav</cc>
    
    <cc>ldv</cc>
    
    <cc>mike</cc>
    
    <cc>sem</cc>
    
    <cc>vsu</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>144228</commentid>
    <comment_count>0</comment_count>
    <who name="Dmitry Timoshkov">dmitry</who>
    <bug_when>2013-12-13 07:01:43 +0400</bug_when>
    <thetext>* Вт апр 09 2013 Dmitry V. Levin &lt;ldv@altlinux.org&gt; 6:2.17-alt5
- getaddrinfo: updated fix for sw#15339.

Я заменил example.net на nxdomain.codeweavers.com в примере из
https://sourceware.org/bugzilla/show_bug.cgi?id=15339
и ниже привожу результаты моего тестироввания:

$ cat glibc_bug15339.c
#include &lt;stdio.h&gt;
#include &lt;netdb.h&gt;
int main(void) {
        struct addrinfo *ai;
        int res = getaddrinfo (&quot;nxdomain.codeweavers.com&quot;, &quot;http&quot;, 0, &amp;ai);
        if (res)
                printf(&quot;%s: %m\n&quot;, gai_strerror(res));
        return res &amp;&amp; res != EAI_NONAME;
}

$ gcc -Wall -O2 -o glibc_bug15339 glibc_bug15339.c
$ ./glibc_bug15339
Name or service not known: Success
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
$ gcc -m32 -Wall -O2 -o glibc_bug15339 glibc_bug15339.c
$ ./glibc_bug15339
System error: Success
^^^^^^^^^^^^^^^^^^^^^

$ file /lib/libc.so.6
/lib/libc.so.6: symbolic link to `libc-2.17.so&apos;
$ file /lib/libc-2.17.so
/lib/libc-2.17.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
$ rpm -qf /lib/libc-2.17.so
i586-glibc-core-2.17-alt5
^^^^^^^^^^^^^^^^^^^^^^^^^
$ file /lib64/libc.so.6
/lib64/libc.so.6: symbolic link to `libc-2.17.so&apos;
$ file /lib64/libc-2.17.so
/lib64/libc-2.17.so: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
$ rpm -qf /lib64/libc-2.17.so
glibc-core-2.17-alt5
^^^^^^^^^^^^^^^^^^^^
$ uname -r
3.10.23-std-def-alt1

Похоже, что i586-* версию пакета glibc просто не пропатчили/забыли обновить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144231</commentid>
    <comment_count>1</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2013-12-13 11:05:50 +0400</bug_when>
    <thetext>На Sisyphus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144236</commentid>
    <comment_count>2</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2013-12-13 13:36:03 +0400</bug_when>
    <thetext>А пакет i586-glibc-nss установлен?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144237</commentid>
    <comment_count>3</comment_count>
    <who name="Dmitry Timoshkov">dmitry</who>
    <bug_when>2013-12-13 13:54:26 +0400</bug_when>
    <thetext>(В ответ на комментарий №2)
&gt; А пакет i586-glibc-nss установлен?

Да.

$ rpm -qa | grep i586-glibc-nss
i586-glibc-nss-2.17-alt5</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144279</commentid>
    <comment_count>4</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2013-12-14 15:36:51 +0400</bug_when>
    <thetext>(В ответ на комментарий №0)
&gt; Похоже, что i586-* версию пакета glibc просто не пропатчили/забыли обновить.
Вообще-то x86_64 и i586 собираются в рамках атомарного задания и разъехаться по соответствию исходнику не могут в принципе (гарантия сборочницы), да и i586-* не собираются, а перепаковываются в рамках того же задания (см. http://git.altlinux.org/tasks и пакет rpmrebuild-arepo).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144280</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry Timoshkov">dmitry</who>
    <bug_when>2013-12-14 15:46:03 +0400</bug_when>
    <thetext>(В ответ на комментарий №4)
&gt; &gt; Похоже, что i586-* версию пакета glibc просто не пропатчили/забыли обновить.
&gt; Вообще-то x86_64 и i586 собираются в рамках атомарного задания и разъехаться по
&gt; соответствию исходнику не могут в принципе (гарантия сборочницы), да и i586-*
&gt; не собираются, а перепаковываются в рамках того же задания (см.
&gt; http://git.altlinux.org/tasks и пакет rpmrebuild-arepo).

Я вего лишь высказал свое предположение и назвал возможную причину :)
Тогда как можно объяснить причину такого поведения i586-* сборки glibc?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144281</commentid>
    <comment_count>6</comment_count>
    <who name="Sergey Vlasov">vsu</who>
    <bug_when>2013-12-14 16:41:13 +0400</bug_when>
    <thetext>Проверьте, какие модули указаны в /etc/nsswitch.conf для hosts, и доустановите недостающие 32-битные пакеты для этих модулей. Сейчас конфигурация по умолчанию может выглядеть так:

  hosts:      files dns mdns4_minimal [NOTFOUND=return] mdns4 myhostname

(myhostname сюда добавляется в %post пакета libnss-myhostname, который указан в зависимостях пакета systemd).

Поэтому, помимо i586-glibc-nss, ещё требуются пакеты:

  i586-libnss-mdns
  i586-libnss-myhostname

Отсутствие i586-libnss-mdns при наличии mdns4_minimal и mdns4 в nsswitch.conf приводит как раз к появлению &quot;System error&quot; в данном тесте.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144282</commentid>
    <comment_count>7</comment_count>
    <who name="Dmitry Timoshkov">dmitry</who>
    <bug_when>2013-12-15 08:53:45 +0400</bug_when>
    <thetext>(В ответ на комментарий №6)
&gt; Поэтому, помимо i586-glibc-nss, ещё требуются пакеты:
&gt; 
&gt;   i586-libnss-mdns
&gt;   i586-libnss-myhostname
&gt; 
&gt; Отсутствие i586-libnss-mdns при наличии mdns4_minimal и mdns4 в nsswitch.conf
&gt; приводит как раз к появлению &quot;System error&quot; в данном тесте.

Да, пакеты, перечисленные выше, установлены не были. После их установки
32-битный тест печатает ту же информацию об ощибке, что и 64-битный.

Решайте сами, насколько &apos;optional&apos; являются эти пакеты, и должна ли от них
зависеть базовая функциональность glibc (IMHO - не должна). Или нужно &quot;просто&quot;
добавить эти пакеты в зависимости glibc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144591</commentid>
    <comment_count>8</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2014-01-12 04:13:33 +0400</bug_when>
    <thetext>(In reply to comment #7)
&gt; (В ответ на комментарий №6)
&gt; &gt; Поэтому, помимо i586-glibc-nss, ещё требуются пакеты:
&gt; &gt; 
&gt; &gt;   i586-libnss-mdns
&gt; &gt;   i586-libnss-myhostname
&gt; &gt; 
&gt; &gt; Отсутствие i586-libnss-mdns при наличии mdns4_minimal и mdns4 в nsswitch.conf
&gt; &gt; приводит как раз к появлению &quot;System error&quot; в данном тесте.
&gt; 
&gt; Да, пакеты, перечисленные выше, установлены не были. После их установки
&gt; 32-битный тест печатает ту же информацию об ощибке, что и 64-битный.

Q.E.D.

&gt; Решайте сами, насколько &apos;optional&apos; являются эти пакеты,

Пакеты libnss-mdns и libnss-myhostname являются optional в том смысле, что если реализуемый ими функционал не нужен, то устанавливать их незачем.

Парные к ним i586-libnss-mdns и i586-libnss-myhostname optional в том смысле, что их имеет смысл устанавливать только в том случае, когда установлены libnss-mdns, libnss-myhostname и i586-glibc-nss.

&gt; и должна ли от них
&gt; зависеть базовая функциональность glibc (IMHO - не должна).

Базовая функциональность glibc является настраиваемой, в данном случае, посредством /etc/nsswitch.conf, причем пакеты libnss-mdns и libnss-myhostname при установке редактируют этот конфигурационный файл, в результате чего поведение glibc NSS начинает зависеть от этих пакетов.

&gt; Или нужно &quot;просто&quot; добавить эти пакеты в зависимости glibc.

Видимо, в профиле дистрибутива надо что-то подкрутить.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144592</commentid>
    <comment_count>9</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2014-01-12 04:16:07 +0400</bug_when>
    <thetext>Перевешиваю на Кентавра.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144593</commentid>
    <comment_count>10</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2014-01-12 04:20:31 +0400</bug_when>
    <thetext>Судя по всему, это сейчас касается только Centaurus и Simply:
в двух образах присутствуют пакеты libnss-{mdns,myhostname} и i586-glibc-nss,
но при этом отсутствуют пакеты i586-libnss-{mdns,myhostname}:

altlinux-7.0.1-centaurus-x86_64-ru-install-dvd5.iso
altlinux-7.0.2-simply-x86_64-install-dvd5.iso</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165771</commentid>
    <comment_count>11</comment_count>
    <who name="Andrey Cherepanov">cas</who>
    <bug_when>2017-09-15 12:09:14 +0300</bug_when>
    <thetext>Может, в пакет wine-full включить симлинки на 32-битные библиотеки glibc-nss,
 libnss-{mdns,myhostname} и sssd-client (по одной на каждый пакет), как это сделано в пакете https://packages.altlinux.org/en/Sisyphus/srpms/skype-preinstall/spec ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165792</commentid>
    <comment_count>12</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2017-09-16 22:26:01 +0300</bug_when>
    <thetext>(В ответ на комментарий №11)
&gt; Может, в пакет wine-full включить симлинки на 32-битные библиотеки glibc-nss,
&gt;  libnss-{mdns,myhostname} и sssd-client (по одной на каждый пакет), как это
&gt; сделано в пакете
&gt; https://packages.altlinux.org/en/Sisyphus/srpms/skype-preinstall/spec ?
Я думаю, более правильно добиться, чтобы 32-битная basesystem была полноценная, а не что вытянется случайно.
Уж вот каким боком sssd-client связан с wine?
В Debian не так уж и плохо было с ia32-libs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193595</commentid>
    <comment_count>13</comment_count>
    <who name="Vitaly Lipatov">lav</who>
    <bug_when>2020-10-29 02:46:28 +0300</bug_when>
    <thetext>Начиная с eepm 3.3.0-alt1 добавлен сценарий для приведения 32-битных модулей в соответствие 64-битным:
# epm prescription i586-fix

Начиная с eepm 3.5.0-alt1
# epm play i586-fix</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>