|This is a new page, currently under construction!|
KWin is the default window manager (WM) in Plasma and has lot of features, but only support floating windows. Plasma let you use another window manager for example i3, bspwm or any other tilling window manager.
|Other window managers are only available when using X.org. These changes can not be made for Wayland sessions.|
Most window managers require few, if any, changes to their configuration files.
Some considerations to be aware of when using another window manager:
This is the simplest method, but only affects the user for which it is added
#!/bin/sh export KDEWM=/usr/bin/i3
Replace /usr/bin/i3 with the path to the window manager desired.
If superuser (root) access is available, a new session file for X.org can be created.
This has several advantages: the alternate session is available to all users of the system, and changing back to KWin is as simple as logging out and then back in
To add a session for an alternate window manager, as the superuser
cp plasma.desktop plasma-i3.desktop
[Desktop Entry] Type=XSession Exec=env KDEWM=/usr/bin/i3 DesktopNames=KDE Name=Plasma (i3) Comment=Plasma by KDE w/i3 X-KDE-PluginInfo-Version=5.14.4
Before starting the configuration, you should make sure i3 or i3-gaps are installed on your system. If not use your packet manager or Discover to install one of this two packages. You should also install a compositor, because unlike KWin, i3 don't ship with an integrated compositor. I recommend the use of compton.
|If you already have an i3 configuration file (usually at |
Open a console and type
i3-config-wizard. This command open a small windows that will help you create a configuration file.
Some i3 keybinding can be used to provide better integration with Plasma.
# Open logout confirmation screen with $mod+e bindsym $mod+Shift+e exec qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout -1 -1 -1 # Open krunner with $mod+d bindsym $mod+d exec qdbus org.kde.kglobalaccel /component/krunner org.kde.kglobalaccel.Component.invokeShortcut 'run command'
Some i3 window rules help you to have notification and some other plasma windows as floating windows:
for_window [title="Desktop — Plasma"] kill; floating enable; border none for_window [class="plasmashell"] floating enable; for_window [class="Plasma"] floating enable; border none for_window [title="plasma-desktop"] floating enable; border none for_window [title="win7"] floating enable; border none for_window [class="krunner"] floating enable; border none for_window [class="Kmix"] floating enable; border none for_window [class="Klipper"] floating enable; border none for_window [class="Plasmoidviewer"] floating enable; border none for_window [class="(?i)*nextcloud*"] floating disable
For the most part, bspwm requires little additional configuration.
bspc config top_padding sizewhere size is the size in pixels of the panel. Also valid are bottom_padding, left_padding, and right_padding. As many of these directive may be used as necessary for multiple panels.