How to learn about all those configuration file values?

Stephen Dowdy sdowdy at ucar.edu
Sun Apr 7 00:37:41 BST 2013


Adrelanos,

adrelanos wrote, On 04/02/2013 04:10 PM:
> There is an Ubuntu Package kde-settings-lowfat. The creator of that
...
> At the bottom is a list of settings I can hardly make head of tail of. I
> am not asking to tell me what each any any values do, I am just asking
> about the best approach to learn all those things.
...
> didn't help. I assumed to phrase a configuration file which contains
> "[Module-kwrited]" you must somewhere use the word "kwrited" in the
> sources and at least by reading the source I should get an idea what it
> does, but I also don't find references for it in "kwrited", so I am
> really lost on how to find reliable information.

I think we all are.  Unfortunately, useful documentation seems to
get sparser and sparser in the brave new world we live in.

> Please tell me how I can find best information about these settings.
> 
> Cheers,
> adrelanos

I'm going to spew some stuff that is probably 90+% true, and may not
necessarily be the best way to determine this stuff, but hopefully
is at least useful.

> /kde/share/config/kdedrc
>
> [Module-bluedevil]
> autoload=false
...

kded  is the "KDE Daemon",

http://api.kde.org/4.0-api/kdelibs-apidocs/kded/html/index.html

each of these "Module-*" group identifiers represent a service
adjunct daemon that 'kded' is responsible for starting.  In the
cases you reference, the 'autoload' key is being set to "false",
indicating that 'kded' won't start those auxiliary processes.
(presumably to reduce startup times, memory consumption, additional
opportunities for bugs to bork your session...)

You can get *some* idea of what the currently loaded kded modules
do by this dbus call loop:

    # figure out where the KDE4 system services directory *probably* is
    d=$(kde4-config --path services); d=${d##*:};
** i reference value of '${d}' in other examples below...
    # get each loadedModule from 'kded'
    for module in $(qdbus org.kde.kded /kded loadedModules)
        #look in the associate service .desktop for a comment
        do printf "%32s - %s\n" "$module" "$(grep '^Comment=' ${d}/kded/${module}.desktop | sed -e 's/^Comment=//')"
    done

e.g.:
                   networkstatus - Tracks status of network interfaces and provides notification to applications using the network.
                 remotedirnotify - Provides change notification for network folders
                   soliduiserver - Provides a user interface for hardware events
                      powerdevil - Battery, Display and CPU power management and notification
   ....


or get them all with:

    for dt in ${d}/kded/*.desktop; do \
        printf "%32s - %s\n" "$(basename "${dt}" .desktop)" \
        "$(sed -ne '/^Comment=/{s/^Comment=//;p}' "${dt}")"; done

or, 'man kded4' seems to have much of this as well.

As for the 'krunnerrc' [Plugins] group, same sort of deal:

> /kde/share/config/krunnerrc
> 
> [Plugins]
> PowerDevilEnabled=false
> bookmarksEnabled=false
...
> windowsEnabled=false

services files with "X-KDE-ServiceTypes=Plasma/Runner" are the
plugins listed above.

The configuration key: "X-KDE-PluginInfo-EnabledByDefault" defines if that plugin
is enabled or not.

$ for dt in $(grep -l X-KDE-ServiceTypes=Plasma/Runner $d/*.desktop); do t=$(basename ${dt} .desktop); printf "%32s - %s\n" "${t}" "$(sed -ne '/^Comment=/{s/^Comment=//;p}' $dt)"; done
                  browserhistory - Searches in Konqueror's history
                 CharacterRunner - Creates special characters from their hexadecimal codes
                    katesessions - Matches Kate Sessions
               konquerorsessions - Matches Konqueror Sessions
...
   plasma-runner-windowedwidgets - Find Plasma widgets that can be run as standalone windows
           plasma-runner-windows - List windows and desktops and switch them
                 recentdocuments -


In general, google searching for
    "KConfig <key-name> <application>"
    "kcfgfile <key-name> <application>"
might get you something useful.


Another thing i often have to do is :
    $ rsync -axWS ~/.kde/  /var/tmp/${USER}-kde/
run a kcmshell4 / system-settings UI and toggle or change something,
then:

    $ kompare ~/.kde/ /var/tmp/${USER}-kde/
(or diff -hwbr  ~/.kde/ /var/tmp/${USER}-kde/ )

to figure out what KConfig key values changed in the process.
unfortunately, the converse (change a value and dig through UI
screens is MUCH more work ;}

btw, you can generally put SYSTEM LEVEL overrides in /etc/kde4/...

$ cat /etc/kde4/nepomukserverrc
[Basic Settings]
Start Nepomuk=false

overrides the Start setting for nepomuk.

Good luck.
--stephen
___________________________________________________
This message is from the kde mailing list.
Account management:  https://mail.kde.org/mailman/listinfo/kde.
Archives: http://lists.kde.org/.
More info: http://www.kde.org/faq.html.




More information about the kde mailing list