Oct 11 17:00:33 wave5 kwin_wayland[3874]: kwin_tabbox: Component failed to load: QList(file:///usr/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/windowswitcher/WindowSwitcher.qml:12:1: module "org.kde.kwin" version 2.0 is not installed
import org.kde.kwin 2.0 as KWin
^)
I’m guessing I didn’t build a component, but maybe it’s something else. I’m brand new to KDE Plasma development, so I don’t have a good intuition of what I did wrong.
Hi, did you try changing the window switcher to something else?
The default one in 5 was removed or replaced with a different one in 6, Thumbnail Grid, and it doesn’t fallback to a different one if you compiled Plasma yourself, last I checked.
KWin also moved from 2.0 to 3.0 during the transition to 6, which is what’s hinting me that you’re using the old window switcher. That, and the fact it’s looking for stuff in /usr/share instead of ~/kde.
# This file controls options to apply when configuring/building modules, and
# controls which modules are built in the first place.
# List of all options: https://docs.kde.org/trunk5/en/kdesrc-build/kdesrc-build/conf-options-table.html
global
branch-group kf6-qt6
# Finds and includes *KDE*-based dependencies into the build. This makes
# it easier to ensure that you have all the modules needed, but the
# dependencies are not very fine-grained so this can result in quite a few
# modules being installed that you didn't need.
include-dependencies true
# Install directory for KDE software
kdedir ~/kde/usr
# Directory for downloaded source code
source-dir ~/kde/src
# Directory to build KDE into before installing
# relative to source-dir by default
build-dir ~/kde/build
cmake-options -DCMAKE_BUILD_TYPE=RelWithDebInfo -DQT_MAJOR_VERSION=6 -DBUILD_WITH_QT6=ON -DBUILD_QT5=OFF
# kdesrc-build sets 2 options which is used in options like make-options or set-env
# to help manage the number of compile jobs that happen during a build:
#
# 1. num-cores, which is just the number of detected CPU cores, and can be passed
# to tools like make (needed for parallel build) or ninja (completely optional).
#
# 2. num-cores-low-mem, which is set to largest value that appears safe for
# particularly heavyweight modules based on total memory, intended for
# modules like qtwebengine
num-cores auto
num-cores-low-mem 4
# kdesrc-build can install a sample .xsession file for "Custom"
# (or "XSession") logins,
install-session-driver false
# or add a environment variable-setting script to
# ~/.config/kde-env-master.sh
install-environment-driver true
# Stop the build process on the first failure
stop-on-failure true
# Use a flat folder layout under ~/kde/src and ~/kde/build
# rather than nested directories
directory-layout flat
# Use Ninja as cmake generator instead of gmake
cmake-generator Kate - Ninja
# Build with LSP support for everything that supports it
compile-commands-linking true
compile-commands-export true
end global
# With base options set, the remainder of the file is used to define modules to build, in the
# desired order, and set any module-specific options.
#
# Modules may be grouped into sets, and this is the normal practice.
#
# You can include other files inline using the "include" command. We do this here
# to include files which are updated with kdesrc-build.
# Common options that should be set for some KDE modules no matter how
# kdesrc-build finds them. Do not comment these out unless you know
# what you are doing.
include /home/jfroy/kde/src/kdesrc-build/kf6-common-options-build-include
# Qt and some Qt-using middleware libraries. Uncomment if your distribution's Qt
# tools are too old but be warned that Qt take a long time to build!
#include /home/jfroy/kde/src/kdesrc-build/qt5-build-include
#include /home/jfroy/kde/src/kdesrc-build/custom-qt5-libs-build-include
# KF6 and Plasma :)
include /home/jfroy/kde/src/kdesrc-build/kf6-qt6-build-include
# To change options for modules that have already been defined, use an
# 'options' block. See kf6-common-options-build-include for an example
And yes, I built everything intro ~/kde and used the script to install the session file. I do have Plasma 5 installed from Arch on the same system.
And yeah, the reference to /usr instead of ~/kde is indicative of files from plasma5 being used. I didn’t edit any system settings, so it may be using the plasma 5 switcher. I am not sure how to change that.