diff options
Diffstat (limited to 'kded/README.kded')
-rw-r--r-- | kded/README.kded | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/kded/README.kded b/kded/README.kded new file mode 100644 index 000000000..b530d707d --- /dev/null +++ b/kded/README.kded @@ -0,0 +1,128 @@ +Welcome to this readme about KDED. + +KDED stands for KDE Daemon which isn't very descriptive. +KDED runs in the background and performs a number of small tasks. +Some of these tasks are built in, others are started on demand. + +Built in tasks +============== +*) Checking for newly installed software and updating ksycoca when new +software is detected. Updating of ksycoca is done by the program kbuildsycoca +which gets started by kded. When kded is first started it always runs +kbuildsycoca to ensure that ksycoca is up to date. + +*) Checking for newly installed update files. Applications can install +*.upd update files. These *.upd files are used to update configuration files +of users, primarily when new versions of applications are installed with +(slightly) different configuration file formats. Updating of configuration +files is done by kconf_update. kded starts kconf_update when it detects a +new update file. When kded is first started it always runs kconf_update to +ensure that it has not missed any update files. kconf_update keeps track +of which update files have been processed already in the config-file +kconf_updaterc. It only performs a certain update once. + +*) Checking for hostname changes. It is a really bad idea to change the +hostname of a running system and it usually only happens with incorrectly +configured dial-up connections. Never the less, kded will check for hostname +changes and if it detects one it will make the necassery changes to the +KDE environemnt and X-server to allow continued proper operation. The +program kdontchangethehostname is executed to make the actual changes. + +Configuration of built in tasks. +================================ +The built in tasks have some configuration options that can be changed by +editing the kdedrc configuration file. Changes need to be made with a text- +editor, there is no GUI available. All options are listed under the [General] +group: + +HostnamePollInterval: This can be used to adjust the time interval at which +the hostname is checked for changes. The time is specified in milliseconds +and has a default of 5000 (5 seconds). + +CheckSycoca: This option can be used to disable checking for new software. +ksycoca will still be built when kded starts up and when applications +explicitly request a rebuild of the ksycoca database. The user can +also manually rebuild ksycoca by running the kbuildsycoca program. +The default value of this option is "true". Checking can be disabled by +setting this option to "false". + +CheckUpdates: This option can be used to disable checking for update files. +kconf_update will still be run when kded starts up. +The default value of this option is "true". Checking can be disabled by +setting this option to "false". + +CheckHostname: This option can be used to disable checking for hostname +changes. The default value of this option is "true". Checking can be +disabled by setting this option to "false". + +Example kdedrc file with default values: + +[General] +HostnamePollInterval=5000 +CheckSycoca=true +CheckUpdates=true +CheckHostname=true + +If FAM or DNOTIFY is not available, the filesystem will be polled at regular interval for any changes. Under the [DirWatch] group in the kdeglobals file +the following options are available to adjust the polling frequency: + +PollInterval: This can be used to adjust the time interval at which the local +filesystem is checked for new software or update files. The time is specified +in milliseconds and has a default of 500 (0.5 seconds). + +NFSPollInterval: This can be used to adjust the time interval at which remote +filesystems, such as NFS or Samba, are ebing checked for new software or +update files. The time is specified in milliseconds and has a default of 5000 +(5 seconds). + +The above options are not used when FAM is used to watch for changes in the +filesystem, or when DNOTIFY is used. Specifying larger intervals may reduce +the CPU load and/or network traffic. Shorter intervals are not recommended. + +Please note that in previous versions of KDE these options where listed in +the kderc file. + +Example kdeglobals fragment: + +[DirWatch] +PollInterval=500 +NFSPollInterval=5000 + +Tasks loaded on demand +====================== +Some things can be greatly simplified if they can be coordinated from a +central place. KDED has support for modules that will be demand-loaded +whenever an application attempts to make DCOP call to the module. +This can be useful for central administration tasks. + +An example of a KDED module is the print module. When an application prints +a file, the print module will watch over the print-job while the file +is being printed. This allows you to close the application after submitting +your print-command to the printer, the print module will make sure to +inform the user when a print problem occurs (printer out of paper, printer +on fire) + +A KDED module should install a .desktop file with + ServicesTypes=KDEDModule + +A KDED module will be loaded on KDE startup if it has a line + X-KDE-Kded-autoload=true + +Note that this flag doesn't cause the module to be loaded if the KDE desktop +is not running (i.e. when running a KDE application in another environment). + +Normally KDED modules are loaded whenever they are accessed, so you don't +need autoloading enabled. On demand loading can be disabled by putting +the following line in the .desktop file: + X-KDE-Kded-load-on-demand=false + +Further it should contain: + X-KDE-ModuleType=Library + X-KDE-Library=foo + X-KDE-FactoryName=foo + +Which means that kded_foo.la is the name of the library that contains +the module and KDEDModule *create_foo(const QCString &) is the factory +function that should be called. + +The .desktop file should be installed to ${kde_servicesdir}/kded |