When I apt-get upgraded my Ubuntu system today, I noriced that they added a new splash screen I totally dislike. Not that I disliked the aesthetic aspects, but having naked people greeting me everyday doesn't seem to improve productivity, instead I've found it a pretty impertinent. So I decided to change the splash screen. The current procedure is quiet unacceptable for end users, since they have to mess with GConf Editor to change that theme aspect of their desktop. For that reason, I've concluded to write a little utility (attached, not yet cleaned up) for manipulating the gconf settings, that could be included in gcc; it comes with a built-in splash screen preview. The problem is that /apps/gnome-session/options/splash_image specifies its splash paths relatively to $PREFIXDIR/pixmaps, while splash screens usually reside in $PREFIXDIR/pixmaps/splash. My utility currently picks up all regular files in $PREFIXDIR/pixmaps/splash, because displaying those in $PREFIXDIR/pixmaps as well is pretty confusing (hundrets of images, no way to distinguish splash screens from other images). This difficulty would be resolvabkle pretty easily, though - one could try to "/splash" prefix from gconf keys (if existing), add the image filename specified by the splash_image key to the list as well, etc. There are some more aspects to consider, though: - GUI splash screen selectors demand for useful splash screen names/descriptions, similar to what we have for themes - What about theme integration? Should themes be able to provide their own splash screen? - Is it worth the effort? Is changing splash screens a common case? Some alternatives (feel free to add more): A keep current state - pro - no work - con - not user-friendly - no GUI - no user-visible names/i18n B introduce a concept similar to icon-spec - pro - will be fdo'ed => may be picked up by other DEs as well - fdo theme integration - con - much work required: elaborate on meta-info for icon layout, progress bars, etc instead of just doing some intransparent (but working) widget layout voodoo; spec needs to be written. C introduce a gconf-based concept (see below) - pro - uses gconf => integration into GNOME - very simple i18n - very simple implementation - con - no collaborative effort (gconf, anti-fdo), still layout vodoo gconf-based concept: each theme installs a key that applies to /desktop/gnome/interface/splash-screens/blob, where the key name blob is the theme id and the value is a string specifying a filename ("gnome-splash.png") which is then checked against $PREFIX/prefix/splash and $HOME/.gnome2/splash. The obligatory <short> and <long> information can easily be optionally i18n'ed using intltool and used for the name/description GUI information. /desktop/gnome/interface/splash-screen specifies the splash screen id to use (i.e. "blob"). All keys in /desktop/gnome/interface/splash-screens are checked against it. If any of them matches, it is used. Comments, additions, opinions, anybody? regs, Chris
Attachment:
splash-prefs.tbz2
Description: application/bzip