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

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

    <bug>
          <bug_id>16195</bug_id>
          
          <creation_ts>2008-06-27 15:05:59 +0400</creation_ts>
          <short_desc>Versionize /etc/X11/lib directory</short_desc>
          <delta_ts>2012-04-25 15:22:58 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>libmesa</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://git.altlinux.org/people/raorn/packages/?p=mesa.git;a=shortlog;h=refs/heads/biarch</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>patch</keywords>
          <priority>P2</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>16227</blocked>
    
    <blocked>16228</blocked>
    
    <blocked>16229</blocked>
    
    <blocked>27263</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Sir Raorn">raorn</reporter>
          <assigned_to name="Valery Inozemtsev">shrek</assigned_to>
          <cc>anubix</cc>
    
    <cc>boris</cc>
    
    <cc>evg</cc>
    
    <cc>lakostis</cc>
    
    <cc>lav</cc>
    
    <cc>led</cc>
    
    <cc>mike</cc>
    
    <cc>sr</cc>
    
    <cc>zerg</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>73251</commentid>
    <comment_count>0</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-06-27 15:05:59 +0400</bug_when>
    <thetext>В данный момент ссылка %_libdir/libGL.so.1 ведёт на %_x11sysconfdir/lib/libGL.so.1.  Из-за явного &quot;lib&quot; на обоих архитектурах mesa нельзя нормально отбиарчить.

Предлагаю в этом месте использовать %_x11sysconfdir/%_lib/ и дополнительно поменять helper&apos;ы в /usr/libexec/X11/drv*.d чтобы они обрабатывали и lib и lib64 на обоих архитектурах (о чём будут развешаны дополнительные баги).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73268</commentid>
    <comment_count>1</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-06-27 21:26:43 +0400</bug_when>
    <thetext>о каком биарче речь?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73273</commentid>
    <comment_count>2</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-06-27 22:24:00 +0400</bug_when>
    <thetext>Архитектура x86_32, пакет arepo.  Сейчас /etc/X11/lib/libGL.so.1 не попадает в пакет i586-libmesa потому как присутствует в бинарных пакетах обоих архитектур.

Я попробую это зафиксить у себя в git и выложу результат на people.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73293</commentid>
    <comment_count>3</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-06-28 10:23:47 +0400</bug_when>
    <thetext>а что на что ты там планируешь переключать?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73300</commentid>
    <comment_count>4</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-06-28 16:09:03 +0400</bug_when>
    <thetext>То же, что и сейчас, libGL.so.1.  Только 64-bit отдельно, 32-bit отдельно.

В общем подожди немного.  А я ищу добровольца с x86_64 Sisyphus и XOrg&apos;овым glx (не fglrx и не nvidia).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73302</commentid>
    <comment_count>5</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-06-28 16:55:40 +0400</bug_when>
    <thetext>да я и не спешу.
1. я не сказал что буду это делать
2. поддерживать x86_32 я точно не буду</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73303</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2008-06-28 18:30:00 +0400</bug_when>
    <thetext>(In reply to comment #4)
&gt; А я ищу добровольца с x86_64 Sisyphus и XOrg&apos;овым glx
Тебя на стенд с ati запустить?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73391</commentid>
    <comment_count>7</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-07-01 15:28:42 +0400</bug_when>
    <thetext>Люди говорят работает.  Патч по ссылке (изменения только в spec&apos;е).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73394</commentid>
    <comment_count>8</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-07-01 16:45:46 +0400</bug_when>
    <thetext>а как по твоему должен работать /usr/libexec/X11/drv.d/x11</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>73398</commentid>
    <comment_count>9</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-07-01 17:08:51 +0400</bug_when>
    <thetext>Обновлять оба линка независимо от архитектуры.  См. такж. bug #16227.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76333</commentid>
    <comment_count>10</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-26 17:46:50 +0400</bug_when>
    <thetext>А может, разнести /usr/libexec/X11/drv.d/ в /usr/lib{,64}/X11/drv.d/ ?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76338</commentid>
    <comment_count>11</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-08-26 18:19:44 +0400</bug_when>
    <thetext>Те же яйца, только вид сбоку.  Симлинков (libGL.so.1 -&gt; xxx/libGL.so.1) один или два (32 или 32 и 64 bit).  Скрипт, который их обновляет один (x11updatedrv).

Надо либо научить drv.d/* обновлять эти &quot;один или два&quot; симлинка (как я предложил первый раз), либо научить x11updatedrv запускать &quot;один или два&quot; drv.d/XXX.  Из-за nvidia_glx я начинаю склоняться ко второму варианту.

А сделать разные drv.d/XXX можно и средствами arepo.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76339</commentid>
    <comment_count>12</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-26 19:05:57 +0400</bug_when>
    <thetext>(In reply to comment #11)
&gt; первый раз), либо научить x11updatedrv запускать &quot;один или два&quot; drv.d/XXX.  
&gt; Из-за nvidia_glx я начинаю склоняться ко второму варианту.
&gt; А сделать разные drv.d/XXX можно и средствами arepo.
Я о том же.
Только, поизвращаюсь сначала с drv.d/nvidia , т.к. лучше без arepo, конечно же.

2 shrek:
Будет ли достаточно проверки на существование каталога /etc/X11/lib64 для определения, что включилась новая схема?
Как думаешь?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76425</commentid>
    <comment_count>13</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 11:31:47 +0400</bug_when>
    <thetext>давайте проще. /usr/libexec/X11/drv.d/чтототам будет проверять наличие файлов/каталогов lib/lib64 и симлинкать соответственно</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76427</commentid>
    <comment_count>14</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 11:32:31 +0400</bug_when>
    <thetext>*** Bug 16227 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76429</commentid>
    <comment_count>15</comment_count>
    <who name="Sir Raorn">raorn</who>
    <bug_when>2008-08-28 12:11:36 +0400</bug_when>
    <thetext>Т.е. возвращаемся к первому варианту?  Что-то типа:

for LIB in lib lib64; do
  [ -d &quot;/etc/X11/$LIB&quot; ] || continue
  ln -sf ...../libFOO.so.X &quot;/etc/X11/$LIB/libFOO.so.X&quot;
  ...
done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76431</commentid>
    <comment_count>16</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 12:28:55 +0400</bug_when>
    <thetext>ну еще и наличие файлов проверять</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76448</commentid>
    <comment_count>17</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2008-08-28 15:37:02 +0400</bug_when>
    <thetext>(In reply to comment #13)
&gt; давайте проще. /usr/libexec/X11/drv.d/чтототам будет проверять наличие
&gt; файлов/каталогов lib/lib64 и симлинкать соответственно
Нет, это ошибка. У меня в данный момент на 4.1/branch есть файлы в /usr/lib и /usr/lib64, но ссылки в /etc/X11/lib64 создавать нельзя.

Нужно проверять, произошел ли переход на новую схему. Например на наличие каталога /etc/X11/lib64 (или еще каким-то способом).
Это можно делать только на x86_64.

Проверку на наличие библиотек в /usr/lib нужно делать только на x86_64 и это уже несколько другая тема. Она касается только окончательной работоспособности программ в drv.d/*</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76449</commentid>
    <comment_count>18</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2008-08-28 15:39:51 +0400</bug_when>
    <thetext>А так же, все изменения _с_проверками_ нужно сделать везде до перехода на новую схему пакета, содержащего /usr/lib{,64}/libGL.so.1, т.е. libmesa
Тогда переход будет прозрачен.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76453</commentid>
    <comment_count>19</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 15:45:31 +0400</bug_when>
    <thetext>(In reply to comment #17)
&gt; (In reply to comment #13)
&gt; &gt; давайте проще. /usr/libexec/X11/drv.d/чтототам будет проверять наличие
&gt; &gt; файлов/каталогов lib/lib64 и симлинкать соответственно
&gt; Нет, это ошибка. У меня в данный момент на 4.1/branch есть файлы в /usr/lib и /usr/lib64, но
&gt; ссылки в /etc/X11/lib64 создавать нельзя.

что мешает создать ссылки в /etc/X11/lib64 если будет /etc/X11/lib и /etc/X11/lib64</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76456</commentid>
    <comment_count>20</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-28 16:28:31 +0400</bug_when>
    <thetext>(In reply to comment #19)
&gt; что мешает создать ссылки в /etc/X11/lib64 если будет
&gt; /etc/X11/lib и /etc/X11/lib64
то, что на x86_64 ссылки, лежащие в /etc/X11/lib будут ошибочно указывать не в /usr/lib64

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76457</commentid>
    <comment_count>21</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-28 16:32:27 +0400</bug_when>
    <thetext>(In reply to comment #19)
&gt; что мешает создать ссылки в /etc/X11/lib64 если будет
&gt; /etc/X11/lib и /etc/X11/lib64
Для пакета libmesa ничего не мешает. В нем не нужно делать проверок, только поставить конфликты на всякие fglrx_glx и nvidia_glx_common, в которых проверка на новую схему еще не сделана

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76458</commentid>
    <comment_count>22</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 16:36:51 +0400</bug_when>
    <thetext>так я про mesa и говорю, всякие fglrx_glx и nvidia_glx_common мне до лампочки
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76459</commentid>
    <comment_count>23</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-28 16:39:19 +0400</bug_when>
    <thetext>(In reply to comment #21)
&gt; поставить конфликты на всякие fglrx_glx и nvidia_glx_common,
&gt; в которых проверка на новую схему еще не сделана
Т.е. именно подождать, пока везде появиться и только тогда конфликт c *_glx* &lt; клевая-версия-релиз и только после этого новый libmesa отправлять в Сизиф.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76460</commentid>
    <comment_count>24</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-28 16:40:05 +0400</bug_when>
    <thetext>(In reply to comment #22)
&gt; всякие fglrx_glx и nvidia_glx_common мне до лампочки
Это ошибка.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76461</commentid>
    <comment_count>25</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 16:43:44 +0400</bug_when>
    <thetext>это ошибка в fglrx_glx и nvidia_glx_common, которую я не могу исправить</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76462</commentid>
    <comment_count>26</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-28 17:13:30 +0400</bug_when>
    <thetext>(In reply to comment #25)
&gt; это ошибка в fglrx_glx и nvidia_glx_common, которую я не могу исправить
Блин! Я только что разжевал, как тебе исправить эту твою ошибку.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76472</commentid>
    <comment_count>27</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-28 19:08:59 +0400</bug_when>
    <thetext>(In reply to comment #12)
&gt; 2 shrek:
&gt; Будет ли достаточно проверки на существование каталога /etc/X11/lib64 для
&gt; определения, что включилась новая схема?
Если у кого-то стоит fglrx, который успел нагадить в /etc/X11/lib64, то не подходит.
Как однозначно определить переход на /etc/X11/lib64 ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76484</commentid>
    <comment_count>28</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 22:29:12 +0400</bug_when>
    <thetext>не знаю. не изобретай велосипеды, обновляй оба каталога при наличии файлов в lib и lib64</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76485</commentid>
    <comment_count>29</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2008-08-28 22:57:23 +0400</bug_when>
    <thetext>(In reply to comment #28)
&gt; не знаю. не изобретай велосипеды, обновляй оба каталога при наличии файлов в
&gt; lib и lib64
У меня в данный момент на x86_64 4.1/branch есть файлы в lib и lib64.
3D в cedega работает.
Представь, что я собрал и установил новый nvidia_glx (в чем я лично не вижу никаких проблем, если он будет правильно работать).
Перечисли конкретно весь список, какие файлы куда и откуда линковать?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76486</commentid>
    <comment_count>30</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-28 23:04:33 +0400</bug_when>
    <thetext>для branch4.1 делать это я не планирую (во всяком случае пока). это быдет в mesa-7.1/xorg-server-1.5. что и куда линковать - когда сделаю, пришлю коменты и посмотришь</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76490</commentid>
    <comment_count>31</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2008-08-28 23:35:09 +0400</bug_when>
    <thetext>(In reply to comment #30)
&gt; для branch4.1 делать это я не планирую
Я и не прошу. Ответь на мой вопрос.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76495</commentid>
    <comment_count>32</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2008-08-29 01:09:08 +0400</bug_when>
    <thetext>(In reply to comment #31)
&gt; Ответь на мой вопрос.
В общем, забей.
Я буду проверять переход на новую схему по наличию каталога /etc/X11/lib64
А кто его без просу создаст, тому по шапке.
2 lakostis:
Смотри, чтоб в 4.1 Desktop опять не напортить. И не говори, что кто-нибудь тебя с толку сбил.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76497</commentid>
    <comment_count>33</comment_count>
    <who name="Konstantin A Lepikhov (L.A. Kostis)">lakostis</who>
    <bug_when>2008-08-29 01:59:11 +0400</bug_when>
    <thetext>(In reply to comment #32)
&gt; (In reply to comment #31)
&gt; &gt; Ответь на мой вопрос.
&gt; В общем, забей.
&gt; Я буду проверять переход на новую схему по наличию каталога /etc/X11/lib64
&gt; А кто его без просу создаст, тому по шапке.
&gt; 2 lakostis:
&gt; Смотри, чтоб в 4.1 Desktop опять не напортить. И не говори, что кто-нибудь тебя с
&gt; толку сбил.
&gt; 
Мне пофиг. И тот патч не мой, а raorn@ ;)
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76498</commentid>
    <comment_count>34</comment_count>
    <who name="Zerg">anubix</who>
    <bug_when>2008-08-29 02:16:46 +0400</bug_when>
    <thetext>(In reply to comment #33)
&gt; Мне пофиг. И тот патч не мой, а raorn@ ;)
А голова чья? ;-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76551</commentid>
    <comment_count>35</comment_count>
    <who name="Valery Inozemtsev">shrek</who>
    <bug_when>2008-08-29 16:45:55 +0400</bug_when>
    <thetext>http://git.altlinux.org/people/shrek/packages/?p=mesa.git;a=commitdiff;h=106c971f99308d4f0447e89a43e0212ccee4f4b0
http://git.altlinux.org/people/shrek/packages/?p=xorg-server.git;a=commitdiff;h=eab327181d5d7082cd69d5ba37f33a6b40b0b866</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76562</commentid>
    <comment_count>36</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-08-29 18:45:56 +0400</bug_when>
    <thetext>Только не забудь, что конфликты нужно поставить на *_glx* &lt;= последняя_версия_без_etc64, иначе поломается как-минимум 3D.
Версию nvidia_glx_common я сообщу в понедельник. Потестить нужно на всякий.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>76790</commentid>
    <comment_count>37</comment_count>
    <who name="Sergey V Turchin">zerg</who>
    <bug_when>2008-09-01 17:49:20 +0400</bug_when>
    <thetext>Conflicts: nvidia_glx_common &lt;= 173.14.12-alt47
Именно так, как написано.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>