On Fri, Sep 19, 2008 at 11:18:25AM +0300, Igor Vlasenko wrote: > > Допустим, что при изменении чего-либо в /etc/X11/wmsession.d надо также > > обновлять menu. > > А здесь вы меня не поняли. > Никаким образом не имелось в виду, что wm-common связан с filetriggers. > > Уточню мысль. > Пусть %post menu,update-desktop-database и т.д. переехали на filetriggers. > > Предлагаю не только убить эти %post вызовы в пакетах, но и пойти дальше: > Убить явные зависимости на update-desktop-database, menu и т.д. > в обычных пакетах. Конечно. Зависимости должны выставляться автоматически. Для update_wms и update_menus есть хороший способ выставлять автоматические зависимости. 1) Если window manager кладёт файл (регистрируется) в /etc/X11/wmsession.d, то через зависимость на каталог /etc/X11/wmsession.d будет вытягиваться пакет xinitrc, в котором также будет запакован триггер %update_wms. 2) Если менеджер поддреживает традиционную систему меню, то он кладёт файл в /etc/menu-methods/$WM_NAME, и через зависимость на каталог /etc/menu-methods будет вытягиваться пакет menu, в котором также будет запакован триггер %update_menus. Некоторые менеджеры (в частности, wmii, который я использую) не поддерживают традиционную систему меню; они не кладут файл в /etc/menu-methods/$WM_NAME, поэтому они не получат лишнюю зависимость на пакет menu. Пока всё чисто. > Пример. > Сервер. java. в пакете есть .desktop файлы для меню и для > обработки mime-типа java-jar. Ранее при наличии таких > файлов предлагалось ставить явную зависимость на > ту же update-desktop-database. > > Теперь предлагается Убить явные зависимости. > Бонус -- компактнее серверная инсталляция. Как быть с update-desktop-database? В пакетах-приложениях зависимость на update-desktop-database, конечно же, вообще не нужна, а только в window manager'ах, которые поддерживают desktop database. Некоторые window manager'ы не поддерживают desktop database, и зависимость на update-desktop-database для них будет лишней. > Грабли --- если никто явно не требует menu,update-desktop-database и т.д. > то их может просто не оказаться в установленной системе. > > Поэтому кто-то их все-таки должен требовать. > Кто? Логически думая -- WM/DE. они потребители > всех этих desktop-database, mime-database, generated menus, etc. > > Вот и предлагается весь список и вытягивать > через 1 пакет wm-common. Это удобно тем, что если > изменится внутренняя кухня, пакеты пересобирать не надо. > > В отличие от явного прописывания списка в каждый DE/WM. Получается, что, вообще говоря, разные window manager'ы могут поддерживать разные списки desktop фич. Зависимости должны быть прозрачными и поддаваться автоматическому поиску, а если непрозрачны и не поддаются автоматическому поиску, то нужно их гранулированно указывать вручную.