You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
129 lines
5.6 KiB
129 lines
5.6 KiB
15 years ago
|
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
|