On Fri, Sep 19, 2008 at 05:17:36AM +0000, Alexey Tourbin wrote: > > > Пакет wm-common, по-моему, можно не делать. Насколько я понимаю, любой > > > window manager кладёт файл в /etc/X11/wmsession.d, и поэтому у него уже есть > > > зависимость на каталог /etc/X11/wmsession.d, а этот каталог принадлежит > > > пакету xinitrc. В пакете xinitrc также находится скрипт /usr/sbin/update_wms. > > > Отстаётся запаковать триггер в пакет xinitrc, тогда никакие дополнительные > > > зависимости в window manager пакетах будут не нужны. > > > > а меню, а update-desktop-db, a update-mime-info, a [еще что-то нужно будет]? > > набор зависимостей для window manager не сводится в xinitrc. > > > > смысл wm-common -- что это псевдоним для открытого списка зависимостей. > > Давайте это обсудим. Идея триггера в том, что, получая на вход список > установленных/обновленных/удаленных файлов, он может выполнять некоторое > действие. Но шаблон для имени файлов не является единственным критерием -- > триггер может делать fs lookup (собственно, чтобы определить, был ли > файл установлен/обновлен или же удален) и что-то ещё. > > Нужна спецификация, что именно должны делать конкретные триггеры и при > каких условиях. Триггер от /etc/X11/wmsession.d отличается от триггера > /usr/lib/menu. Они могут быть запакованы в разных пакетах -- xinitrc > и menu соответственно. Спецификация триггера должна включать в себя: - шаблон имени файлов - дополнительные условия срабатывания триггера - команда/действие, выполняемое триггером - состояние системы до срабатывания триггера - состояние системы после срабатывания триггера (Только это должны быть не детсадовские объяснения, что дескать, до запуска триггера меню находится в старом состоянии, а после запуска триггера мы имеем обновленное меню, а конкретные -- что именно должно измениться в menu на уровне представления данных.) Window manager'ы, которые поддерживают menu, кладут специальный файл в /etc/menu-methods. Значит, можно обеспечить зависимость на каталог /etc/menu-methods. Тогда в триггере wmsession.d специально обрабатывать меню не надо, а menu триггер должен срабатывать по двум шаблонам: /usr/lib/menu (для приложений) /etc/menu-methods (для window manager'ов). Значит, для menu мы уже двигаемся ближе к спецификации. А как обстоит дело с update-desktop-db?