&kde; User's Manual

Waldo Bastian

    bastian@kde.org

Mario Weilguni

    mweilguni@sime.com

Lubos Lunak

    l.lunak@kde.org

2008-10-03
0.01.01
`kdeinit4` 8
`kdeinit4` Start all other &kde; programs and kdeinit loadable modules (KLMs).

## Synopsis

`kdeinit4` --help --no-fork --no-kded --suicide +programs programs

## Description

kdeinit4 is a process launcher somewhat similar to the famous `init` used for booting UNIX. It executes &kde; programs and kdeinit loadable modules (KLMs) starting them more efficiently.

Using kdeinit4 to launch &kde; applications makes starting a typical &kde; application a couple times faster and reduces memory consumption by a substantial amount.

kdeinit4 is linked against all libraries a standard &kde; application needs. With this technique, starting an application becomes much faster because now only the application itself needs to be linked whereas otherwise both the application as well as all the libaries it uses need to be linked.

## Disadvantages

The process name of applications started via kdeinit4 is "kdeinit4". This problem can be corrected to a degree by changing the application name as shown by `ps`. However, applications like `killall` will only see kdeinit4 as the process name. To workaround this, use `kdekillall` (from kdesdk/scripts) for applications started via kdeinit4.

## Options

`--help`

  Show help about options

`--no-fork`

  Do not fork, i.e. do not exit until all the executed programs ends

`--no-kded`

  Do not start kded

`--suicide`

  Terminate when no KDE applications are left running

`+programs`

  runs the programs handling requests

`programs`

  runs the programs without handling requests

## Usage

A standard way to run this program is by simply specifying the following command at the prompt ``kdeinit4` program` or ``kdeinit4` +program`

## Files

`/tmp/kde-$USER/kdeinit4_$INSTANCE`

  ...

## Environment Variables

$`HOME`

  Specifies the home directory of the current user

$`KDE_HOME_READONLY`

  Specifies if the home directory of the current user is read only

$`KDE_IS_PRELINKED`

  If set, tells kdeinit4 that the &kde; programs are pre-linked.

  (Prelinking is a process that allows you to speed up the process of dynamic linking.)

$`KDE_DISPLAY`

  If set, tells kdeinit4 that it is running on a &kde; desktop.

## See Also

kded, kdekillall

## Bugs

There are probably tons of bugs. Use bugs.kde.org to report them.