Console TDM

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Console TDM is an extension for xorg-xinit written in pure bash. It is inspired by CDM, which aimed to be a replacement of display managers such as GDM.

Installation

Install the console-tdmAUR package (console-tdm-gitAUR package for the development version).

Now ensure no other display managers get started by disabling their systemd services.

After installing Console TDM, you should modify your ~/.bash_profile, and add a line:

source /usr/bin/tdm

If you use zsh, add to your ~/.zprofile the following line:

bash /usr/bin/tdm

or

tdm
Tip: Since version 1.3.0, tdm may be forced to start if X is already running by adding the --disable-xrunning-check flag to the first call of tdm.

Regardless of which shell is used you should edit ~/.xinitrc and replace your existing exec line with:

exec tdm --xstart

Configuration

Note: Since version 1.3.0, tdm follows the XDG base directory specification. By default, $XDG_CONFIG_HOME is set to $HOME/.config.
Warning: Since support for ~/.tdm will eventually be dropped, consider moving your configuration to $XDG_CONFIG_HOME/tdm. You can use tdmctl migrate to automatically migrate your configuration.

You should copy the links to your WM/DE starter to $XDG_CONFIG_HOME/tdm/sessions, and links to non-X programs to $XDG_CONFIG_HOME/tdm/extra. For convenience, you can just run tdmctl init.

The use of the program tdmctl is much like systemctl, and it is a powerful tool to configure Console TDM.

You can customize Console TDM by editing $XDG_CONFIG_HOME/tdm/tdminit (sourced before the user is prompted for a session) and $XDG_CONFIG_HOME/tdm/tdmexit (sourced before the session is actually started).

See also