Собираю xscreensaver 4.20. jwz без об'яснений причин выкинул xscreensaver.kss (KDE, но это отдельная тема), я полез это дело раскапывать и понял, что поддержка GNOME у меня какая-то кривобокая... Сначала напишу что у нас есть, потом что хочу с этим сделать. Выдержка из Makefile: GNOME_DATADIR = /usr/share GNOME_CCDIR_1 = $(GNOME_DATADIR)/control-center/Desktop GNOME_CCDIR_2 = $(GNOME_DATADIR)/control-center/capplets GNOME_CCDIR_3 = $(GNOME_DATADIR)/control-center-2.0/capplets GNOME_PANELDIR1 = $(GNOME_DATADIR)/gnome/apps/Settings/Desktop GNOME_PANELDIR2 = $(GNOME_DATADIR)/applications GNOME_PANELDIR = $(GNOME_PANELDIR2) HACK_CONF_DIR = /usr/X11R6/lib/xscreensaver/config После make install получаются такие .desktop файлы (разноязыковые каменты поскипаны): /usr/share/applications/screensaver-properties.desktop, он же лежит в GNOME_CCDIR_{1,2,3}: [Desktop Entry] Encoding=UTF-8 Exec=xscreensaver-demo Icon=xscreensaver.xpm Terminal=false Name=Screensaver Comment=Change screensaver properties Type=Application Categories=Application;Settings;Appearance;AdvancedSettings; Для нашего GNOME (2.4+) используется GNOME_CCDIR_3, насколько я понимаю. Идём дальше, в /usr/bin находится скрипт screensaver-properties-capplet следующего содержания: #!/bin/sh #[...] # The existence of this script in /usr/bin/ forces Gnome to use the # xscreensaver-demo program (instead of the lame Gnome code) to launch, # initialize, and configure xscreensaver. When running in crapplet mode, # xscreensaver-demo accepts the same arguments that Gnome's capplet does, # except that "--capplet" must be the first argument. exec xscreensaver-demo --crapplet "$@" Насколько я понял по коду, опция --crapplet использовалась для сторого gnomecc, версии наверно 1.4. config.h.in: /* Define this if you have Gnome and want to build support for the xscreensaver control panel in the Gnome Control Center (gnomecc). (This is needed only with Gtk 1.x.) */ #undef HAVE_CRAPPLET Меню генерится следующим образом: %__cat < %buildroot%_menudir/%name-frontend ?package(%name-frontend): needs=X11 \ section="Configuration/Other" \ title="XScreenSaver" \ longtitle="Configure the setting of the XScreenSaver" \ command="%name-demo" EOF %__cat < %buildroot%_menudir/%name-gnome ?package(%name-gnome): needs=gnome \ section="Configuration/Gnome" \ title="Screensaver" \ longtitle="Configure the setting of the screensaver" \ icon="xscreensaver.xpm" \ command="%_bindir/screensaver-properties-capplet" EOF Ну и наконец состав xscreensaver-gnome: %files gnome %_bindir/screensaver-properties-capplet %_datadir/control-center-2.0/*/* %_datadir/pixmaps/%name.xpm %_menudir/%name-gnome Предложения: 1. Выкинуть screensaver-properties-capplet, помойму им никто не пользуется. 2. Выкинуть %_menudir/%name-gnome, бо как не нужен 3. %_menudir/%name-frontend генерить при помощи freedesktop2menu.pl Что скажут ведущие гномоводы? -- Regards, Sir Raorn. ------------------- В Сизиф грядёт новый automake-1.8.2, и, как это принято у autolools'овцев, несёт с собой новые проблемы: к 181 непересобирающемуся пакету добавляется ещё 51. -- ldv in devel@