Recreating Material Shell in KDE Plasma

Material shell is a GNOME Shell extension that provides predictable workflow, with a features of a tiling window manager inside of a user friendly and feature complete desktop environment, workspaces/virtual desktops that feel natural to use, and it’s also ready for keyboard-only navigation, but it has some issues, namely:

  • GNOME Shell is one of the least lightweight linux DE’s
  • Material shell is far from robust, because it’s an work in progress extension
  • Material shell lacks customizability, despite being customization itself, and breaks compatibility with a lot of extesions

GIF showing Material Shell interface

There is one solution called Material Awesome (AwesomeWM config that Material Shell is based of), but it usually does not work out of box and tweaking requires knowledge on AwesomeWM config files and other things that most of users just mark as too advanced for them and ignore.

My own solution is recreating features I need in KDE Plasma, which is a main topic of this guide. Remember to backup your old settings beforehand.

Video guide Link to heading

Panels Link to heading

  1. Right-click main panel > Enter edit mode

  1. Move it to the top
  2. Create a new panel > Enter edit mode > Move it to the side > More options > Panel Alignment > Bottom > Correct size to prevent overlap

  1. Move widgets “System Tray” and “Digital Clock” to the new panel (Restart plasmashell if bugs occur)

Alternative layout - top panel only, it will work better with some widgets

Widgets Link to heading

Task Manager Link to heading

  1. Right click on task manager > More > Show alternatives > Task Manager (Not Icon-only one)
  2. Configure Task Manager like shown on screenshoot Screenshot showing Behavior settings - By program name, Shows Textual list, Combine into a single button, Group only when task manager is full, Manually, Keep launchers separate, Minimizes the task, Closes Window or group, Cycles through tasks, Skip minimized tasks, From current desktop, from current activity, Unhide when a window wants attention, To the right

Alternative - custom Fancy Tasks widget have more customization options but has problems shrinking down

Workspace switcher Link to heading

  1. Install custom Compact Pager and put it on side panel (add Spacer before so it will be on top)
  2. Configure Compact Pager > Layout > Full

Alternative - use standart Pager widget with horisontal panel, it has more features, but does not work on vertical panels

Application launchers Link to heading

  1. Install Text Command and add it on top panel > Add Spacer after that so Task Manager shrinks properly > Configure Text Command > Use command kstart5 krunner and text “+”, set size so it would fit better to your panel/screen size

  1. Right Click Application Launcher > Show alternatives > Application Dashboard > Configure Application Launcher > Change icon to Actions>search-symbolic (or other search-like symbol you preffer)

Alternative - change to your preffered application laucnhers

Tiling Link to heading

  1. Install bismuth:
  • Fedora - sudo dnf install bismuth
  • Ubuntu - sudo dnf install kwin-bismuth
  • Arch - sudo dnf install kwin-bismuth
  1. Go to settings > Window Managment > Window Tiling > Enable Tiling > Customize Layouts > Choose Tile, Monocle, Quarter, Spiral, Column and Floating
  2. Tweak other settings to you liking
  3. Go to settings > Shortcuts > Window Tiling (if not present - Kwin) > Set shortcuts to your preffernce / according to Material Shell hotkeys

P.S. Only graphical way to change layouts is to use Text Command or other custom button with one of this commands

Other Link to heading

Themes Link to heading

I recommend installing Materia or Materia Dark theme (with Papirus icon theme) as it has both KDE/QT and GTK versions

  • Install Materia KDE from Discover/Find New Themes menu/materia-kde or materia-kde-theme package in your package manager/from source and enable it in settings

Materia and Materia Light in Find New Themes

Materia Dark in Find New Themes

  • Install materia-gtk as package or from source and enable it in settings > application style > gtk application style > dropdown menu
  • Install KVantum (should be availible in your distro package manager) and Materia KVantum theme from package (materia-kde-kvantum in Fedora and kvantum-theme-materia in Arch, should be installed with main Materia KDE package exept for Arch) or from source (choose path to kvantum theme folder in “install theme”), choose KVantum as Application Style in KDE settings and choose Materia/Materia-Dark in Kvantum Managers Theme installation screenshot Theme choosing

Alternative - Install Tela icon theme unstead of Papirus because it’s reccommended for Material Shell

Tela icon theme in Find New Themes

Session restoration Link to heading

Closest thing to window restoration in Material Shell is KDE session restore (it’s not perfect and not the same thing in general). Enable it in settings > Startup and Shutdown > Desktop session > Restore last session

Screenshot demonstrating that

Misc Link to heading

Backup tool Link to heading

I recommend to backup your layouts and other Plasma using custom Plasma Customization Saver (after installation called Plasma Config Saver) widget.

Screenshot demonstating the said widget

Rebooting Plasma and Kwin Link to heading

Sometimes you need to relaunch Plasma Shell or KWin for changes to apply correctly. To do this without rebooting, use these commands:

  • Restart plasma - killall plasmashell && kstart5 plasmashell
  • Restart kwin - kwin --replace (do not close termial window after that)