[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Ways of overriding KConfigured stuff



        Hi there,

 I'm preparing desktop-base with the Etch artwork. [0]   I would like
 the desktop-base package to hold as many artwork types as possible for
 the various desktop environments, and to override the per desktop
 environment defaults when installed.

 The current problem I'm facing is: how do I override the kdesktoprc
 Wallpaper and its friends settings cleanly?

 I would like your opinion on the best way for desktop-base to set the
 default Wallpaper for the Etch timeframe, and only the default (users
 may still change wallpaper afterwards).


 Current technical research I made:

 It seems to me that KDE uses the "KConfig" mechanism which relies on
 "KStandardDirs" to build the list of directories to search per file
 type. [1]
   Some environment variables (KDEDIRS, and XDG_CONFIG_DIRS) are
 included in the list of directories to search, but there's no interface
 for a package maintainer to set these vars cleanly.
   The desktop-profiles package aims at solving a similar task: I think
 it builds a KDEDIRS var dynamically on each login based on the result
 of commands and on group membership; however, I don't want to add such
 a dependency on desktop-base so late in the cycle and have some
 technical objections to the tool. [2]
   I've also found debian/patches/10_kstandarddirs.diff in kdelibs which
 hardcodes an additional "/etc/kde3/" directory to the standard list of
 "config" directories.
   GConf has a clean mechanism to handle this: via dh_gconf, you may
 install and register a gconf defaults file which has an associated
 priority and will be included in the default gconf path.

   Bye,

[0] It's pulled by the desktop task starting with the last tasksel
upload.  It is not required for desktop environments to depend on
desktop-base, each DE should continue shipping its own default.

[1] see kdecore/kstandarddirs.cpp in kdelibs

[2] A sample implementation of setting the default wallpaper via
desktop-profiles is in #348702.  My problem with desktop-base is that it
will generate temporary files on each login (at least in the GConf
case), and requires special configuration of all login entry points
(each shell has to be configured to hook the script, there's a Xsession
script, etc.).

PS: Obviously, I'll have to change other config items, such as the
splash screen, and the KDM theme.
-- 
Loïc Minier <lool@dooz.org>



Reply to: