[devel] libgtk+2

Dmitry V. Levin =?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Пн Сен 8 19:27:23 MSD 2008


On Mon, Sep 08, 2008 at 07:15:18PM +0400, Yuri N. Sedunov wrote:
> В Пнд, 08/09/2008 в 18:46 +0400, Dmitry V. Levin пишет:
> > On Mon, Sep 08, 2008 at 06:42:10PM +0400, Yuri N. Sedunov wrote:
> > > В Пнд, 08/09/2008 в 18:23 +0400, Dmitry V. Levin пишет:
> > > > On Mon, Sep 08, 2008 at 06:18:03PM +0400, Yuri N. Sedunov wrote:
> > > > > В Пнд, 08/09/2008 в 17:49 +0400, Dmitry V. Levin пишет:
> > > > > > On Mon, Sep 08, 2008 at 01:51:06PM +0400, Alexey Tourbin wrote:
> > > > > > > Юрий Седунов просил меня реализовать posttrans filetriggers,
> > > > > > > чтобы решить проблему c gtk icon cache в branch-4.1 (для предостящего
> > > > > > > релиза дистрибутива).
> > > > > > > 
> > > > > > > Проблема это такая: библиотека libgtk+2 может использовать кеш
> > > > > > > иконок /usr/share/icons/hicolor/icon-theme.cache, чтобы ускорить
> > > > > > > загрузку иконок.  По умолчанию этот кеш отсутствует; но если он создан,
> > > > > > > то libgtk+2 не находит иконки, отсутствующие в кеше (но существующие в
> > > > > > > файловой системе).
> > > > > > 
> > > > > > Такое поведение libgtk+2 считаю глубоко порочным.  Представьте себе, что
> > > > > > ld-linux.so при наличии файла /etc/ld.so.cache будет игнорировать те
> > > > > > библиотеки в %_lib и %_libdir, которых в /etc/ld.so.cache нет.
> > > > > > 
> > > > > > Лучше исправить libgtk+2, чем городить объезды вокруг.
> > > > > 
> > > > > Нет, -- механизм работает и отказываться от него не надо.
> > > > 
> > > > Механизм работает, но при этом содержит серьёзный архитектурный изъян,
> > > > из-за которого возникают проблемы.
> > > 
> > > Проблемы возникают, если иконок нет в caсhe. Если gtk будет искать
> > > отсутствующие в caсhe, получаются те же "a lot of system call and disk
> > > seek overhead". Мне представляется поведение gtk логичным. 
> > 
> > А если ld-linux.so не будет запускать ELF'ы после смены soname до запуска
> > ldconfig'а, разве это тоже будет логично?
> 
> Давай не все в одну кучу сваливать,

Я привёл эту аналогию потому, что она мне показалась совершенно
естественной.  Не вижу принципиальной разницы между этими кэшами.

> > > Как нужно правильно
> > > invalidate'ить /usr/share/icons/hicolor/icon-theme.cache?
> > 
> > Полагаю, надо искать файл по файловой системе, ЕСЛИ его не нашлось
> > в icon-theme.cache
> 
> Это предложение равносильно тому, чтобы не использовать icon-theme.cache
> совсем.  

Отнюдь.  Это естественный порядок вещей для пользовательского кэша части
файловой системы.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20080908/a6edbc22/attachment-0002.bin>


Подробная информация о списке рассылки Devel