Skip to main content

Change to KDE Plasma Desktop Environment

Installing KDE Plasma

Official Documentation: https://www.kali.org/docs/general-use/switching-desktop-environments/

Some deviations from the procedure for me:

  1. Run sudo apt install -y kali-desktop-kde, choose sddm
  2. Run sudo apt remove --purge --auto-remove -y *xfce* lightdm
  3. Reboot. With the removal of Xfce and LightDM, this should cause SDDM and KDE Plasma to become the default

If required, be sure to change from Plasma (Wayland) to Plasma (X11) 

image.png

XRDP on KDE Plasma

XRDP Server on KDE Plasma | 0xBEN | Notes (benheater.com)

PolKit Network Manager Prompt

At login, policy manager keeps prompting for a password allow my non-root user to control the network manager service. We need to add a PolKit local authority config to give the non-root user account permissions to do specific things on the system.

image.png

Press Details to expand and view the desired Action of the PolKit prompt. This will inform the configuration shown below. Now, let's take a look at the default PolKit policy for org.freedesktop.NetworkManager.network-control

less /usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy
  <action id="org.freedesktop.NetworkManager.network-control">
    <description>Allow control of network connections</description>
    <description xml:lang="zh_TW">允許控制網路連線</description>
    <description xml:lang="zh_CN">允许控制网络连接</description>
	...
    ...
    ...
    <message xml:lang="as">চিস্টেম নীতিয়ে নেটৱৰ্ক সংযোগসমূহৰ নিয়ন্ত্ৰণ প্ৰতিৰোধ কৰে</message>
    <defaults>
      <allow_any>auth_admin</allow_any>
      <allow_inactive>yes</allow_inactive>
      <allow_active>yes</allow_active>
    </defaults>
  </action>

Now, we'll create the PolKit local authority config, using the original action defaults as a guideline.

sudo apt install -y polkitd-pkla
sudo nano /etc/polkit-1/localauthority/50-local.d/50-allow-network-manager.pkla

Here, we'll set ResultAny=no, since the original indicates it requires an admin user. Next, we'll set ResultInactive and ResultActive to yes as per the original action.

[Network Manager All Users]
Identity=unix-user:ben;
Action=org.freedesktop.NetworkManager.network-control
ResultAny=no
ResultInactive=yes
ResultActive=yes

Setting up Meta+Shift+S Screen Capture

Configure KDE Spectacle

Open Spectacle

image.png

Click Configure

image.png

General

image.png

Shortcuts

image.png