[devel] gtk-update-icon-cache filetrigger (+ libtcl deficiency)

Led =?iso-8859-1?q?ledest_=CE=C1_gmail=2Ecom?=
Ср Сен 10 01:25:36 MSD 2008


On Wednesday, 10 September 2008 00:04:08 Dmitry V. Levin wrote:
> On Wed, Sep 10, 2008 at 12:23:45AM +0400, Alexey Tourbin wrote:
> [...]
>
> > Посмотрим, какой расклад мы имеем с кешем gtk2.  Библиотека libgtk+2
> > использует кеш по умолчанию, если он существует (это ускоряет запуск
> > приложений, а также экономит память, т.к. иконки расшариваются между
> > приложениями).  Есть стандартная программа обновления кеша
> > gtk-update-icon-cache.  Кроме библиотеки libgtk+2 этот кеш больше никто
> > не использует.
> >
> > Следуя принципу правильной группировки файлов в пакетах, можно
> > заключить, что библиотеку libgtk+2, программу gtk-update-icon-cache
> > и триггер /usr/lib/rpm/gtk-icon-cache.filetrigger следует запаковать
> > в один и тот же пакет (libgtk+2).
> >
> > Принцип правильной группировки файлов между пакетами состоит в том,
> > что совместно используемые файлы нужно паковать в один и тот же пакет.
> > Действительно, программа gtk-update-icon-cache сама по себе, по
> > отдельности, имеет мало смысла (т.к. результат её работы представляет
> > интерес только для библиотеки libgtk+2).  А триггер
> > /usr/lib/rpm/gtk-icon-cache.filetrigger, в свою очередь, сможет сделать
> > что-либо только при наличии программы gtk-update-icon-cache.  Короче,
> > эти две программы просто "обслуживают" библиотеку libgtk+2.
> >
> > С другой стороны, этот принцип не является настолько однозначным, чтобы
> > можно было применять его механически.  Нужно думать.  Ведь библиотека
> > libgtk+2, хотя и использует кеш иконок по умолчанию, всё же обходится
> > без него, если кеш отсутствует.  Так что кто-то может возразить, что
> > мы кладём в libgtk+2 лишние файлы, без которых, строго говоря, можно
> > обойтись.  На что мы можем парировать позитивной интерпретацией: кеш
> > иконок работает "из коробки" (а в противном случае возможны проблемы
> > с инвалидацией кеша, то есть битые иконки в приложениях).
>
> Существует как минимум один распространённый тип использования libgtk+2,
> при котором кэш иконок не используется совершенно: libgtk+2-devel.  Так
> что в библиотеке libgtk+2, запакованной без вспомогательных инструментов
> обновления этого кэша, есть вполне понятный смысл.
>
> Тоже самое, наверное, можно сказать и про libtcl.

Врядли. Там ещё кроме названных at@ есть "тщательно разложенные и 
замаскированные грабли":
https://bugzilla.altlinux.org/show_bug.cgi?id=16657

-- 
Led


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