KDE System Administration/Environment Variables: Difference between revisions

From KDE TechBase
m (Reverted edits by 80.171.57.254 (Talk); changed back to last version by 91.89.54.151)
(Replaced content with "{{Moved To Userbase}}")
 
(13 intermediate revisions by 11 users not shown)
Line 1: Line 1:
== Introduction ==
{{Moved To Userbase}}
There are numerous environment variables that are useful when managing and controlling a KDE environment. Supported environment variables are listed below.
 
== Automatically Set Variables ==
 
=== KDE_FULL_SESSION  ===
Set to true by KDE startup, it is used by e.g. Konqueror to know if it should consider remaining in memory for future re-use when being closed. If not set, konqueror will exit after being closed (e.g. kdesu does that, it's also useful for debugging).
 
If you plan on using this variable to detect a running KDE session, it is safest to check if the value is not empty (i.e. test -n "$KDE_FULL_SESSION") instead of seeing if it equals true.  This allows for changing the value of the variable to include KDE version info or other uses.
 
=== KDE_SESSION_VERSION ===
Introduced in KDE4, this environment variable is set to the major version number of the KDE desktop being run on startup. This allows one to know which <tt>kde?-config</tt> to run: <tt>kde${KDE_SESSION_VERSION}-config</tt>. For KDE3 this will resolve to <tt>kde-config</tt> and for KDE4 this will result in <tt>kde4-config</tt>. One can then use this knowledge to query more details as to the minor version, prefixes, etc.
 
== Display and Window Management ==
 
=== KDEWM ===
If the KDEWM environment variable has been set, then it will be used as KDE's window manager within the startkde script instead of kwin.
=== KDE_DISPLAY ===
An old(?) way to set DISPLAY for multihead.
=== KDE_MULTIHEAD ===
Set this variable to "true" to indicate that KDE is running on a multi-head system.
 
== File System ==
 
=== KDEDIRS ===
Overrides KDEDIR and allows you to specify multiple directories where KDE searches for its data. Useful if you want or have to install some programs to a different prefix than the rest of your KDE.
Please note, that at least the startkde script expects the KDE install directory to be listed as first.
=== KDEHOME ===
If not set, KDE uses ~/.kde as directory where your personal data is stored.
=== KDE_HOME_READONLY ===
Set this variable to indicate that your home directory is mounted as read-only.
 
=== KDEROOTHOME ===
If not set, KDE uses ~root/.kde as directory for root's personal data. Was introduced to prevent KDE from accidently overwriting user data with root permission when user run a KDE program after switching with "su" to root.
 
=== KDESYCOCA ===
Allows to specify the path and the name of the generated KDE system configuration cache file.
=== KDETMP ===
Allows to specify another path than /tmp where KDE stores its temporary files.
=== KDEVARTMP ===
Allows to specify another path than /var/tmp where KDE stores its variable files.
 
== Localization ==
 
=== KDE_LANG ===
Overrides the KDE language configuration, e.g. "KDE_LANG=fr kprogram &" starts a program with french translation if the necessary files are installed.
 
=== KDE_UTF8_FILENAMES ===
If this environment variable is set, KDE assumes all filenames are in UTF-8 encoding regardless of the current C locale.
 
== Networking ==
 
=== KDE_NO_IPV6 ===
Set this variable to disable IPv6 support / IPv6 DNS lookups.
 
=== KDE_USE_IDN ===
The content of this variable defines for which top level domains the usage of IDN is enabled. If not set, "at:ch:cn:de:dk:kr:jp:li:no:se:tw" will be used.
 
== Performance Related ==
 
=== KDE_IS_PRELINKED ===
Set this variable to indicate that you have prelinked your KDE binaries and libraries.
=== KDE_MALLOC ===
If set to "1" the fast malloc routine provided in kdecore is used if KDE was compiled with --enable-fast-malloc, otherwise the libc's routine is used.
 
=== KDE_NOUNLOAD ===
If this variable is set then KLibLoader is told to never unload dynamically opened libraries.
=== KDE_DOUNLOAD ===
If this variable is set then KLibLoader is told to always try to unload dynamically opened libraries. Warning, this will most probably lead to crashes!
 
== Troubleshooting and Debugging ==
 
=== KDE_DEBUG ===
Set this variable to disable the KDE crash handler (same as --nocrashhandler command line option).
=== KDE_FORK_SLAVES ===
Set this variable to spawn KIO-slaves directly from the application process itself, by default KIO-slaves are spawned using klauncher/kdeinit. This option is useful if the KIO-slave should run in the same environment as the application, this can be the case with Clearcase.
== freedesktop.org Compliance ==
 
The following environment variables are defined in the [http://freedesktop.org/wiki/Standards/basedir-spec freedesktop.org base directory specification] and are supported by all XDG compliant environments and applications.
 
=== XDG_DATA_HOME ===
Defines the base directory relative to which user specific data files should be stored. If <tt>$XDG_DATA_HOME</tt> is either not set or empty, a default equal to {{path|$HOME/.local/share is used}}.
=== XDG_CONFIG_HOME ===
Defines the base directory relative to which user specific configuration files should be stored. If <tt>$XDG_CONFIG_HOME</tt> is either not set or empty, a default equal to {{path|$HOME/.config}} is used.
=== XDG_DATA_DIRS ===
Defines the preference-ordered set of base directories to search for data files in addition to the <tt>$XDG_DATA_HOME</tt> base directory. The directories in <tt>$XDG_DATA_DIRS</tt> should be separated with a colon ':'. If $XDG_DATA_DIRS is either not set or empty, a value equal to {{path|/usr/local/share/:/usr/share/}} is used.
=== XDG_CONFIG_DIRS ===
Defines the preference-ordered set of base directories to search for configuration files in addition to the <tt>$XDG_CONFIG_HOME</tt> base directory. The directories in <tt>$XDG_CONFIG_DIRS</tt> should be separated with a colon ':'. If $XDG_CONFIG_DIRS is either not set or empty, a value equal to {{path|/etc/xdg}} is used.

Latest revision as of 13:20, 11 March 2016

This page is now on the Userbase wiki.