GNOME Bugzilla – Bug 308667
Should use desktop independent hacks directory
Last modified: 2005-10-05 22:26:09 UTC
It's possible other desktops will wish to do xscreensaver-based screensaver subsystems. It'd be nice if the themes directory was not specific to gnome-screensaver. Actually, what is the reason it can't simply use the xscreensaver default directories?
gnome-screensaver can use the xscreensaver hacks (the actual programs that draw to a window) where they are installed. However, gnome-screensaver uses a slightly different concept for the way a theme is defined. We don't have a one to one mapping from theme to theme-engine. For example, we can have multiple themes that use a slideshow engine: Forest Slideshow, Beach Slideshow, My Vacation Slideshow. Xscreensaver cannot do this. This is done by extending the xscreensaver XML configuration file in a compatible way. To use your xscreensaver "hacks" simply copy the XML configuration files into the gnome-screensaver directories. On the other hand, if you want to create a screensaver theme engine that will only run under gnome-screensaver then you would install it into the gnome-screensaver libexec dir instead of the xscreensaver one. Does that answer your question?
Yes, mostly. I was wondering why copying the hacks files to a new directory was necessary at all though? Can't they all be placed in the same xscreensaver directory and distinguished by extension so if KDE wish to use your extensions, there is no stigma of loading things from a directory called gnome-screensaver (trivial issue I agree, but it exists...)
I agree with you. If we get to that point I have no problem removing the gnome- from the directory name. :) However, I think that assuming this will be accepted across desktops is a bit presumptuous for now.
gnome-screensaver will soon use desktop entry files and the desktop menu spec to lookup screensaver themes. This will be similar to what KDE seems to do. Hopefully, we can come to a cross desktop consensus on how: * screensaver themes are installed and identified * DBUS interface for screensaver activation and control
We now use .desktop files to define themes, the desktop menu spec to define the list and look for theme engines in the path and known locations.