Both are basically a fork of startkde split into
* everything needed before kwin_wayland starts
* everything which needs to happen after kwin_wayland
A few things are X11 specific and need to go after kwin_wayland
gets started.
REVIEW: 124293
Currently we are modifying the plugin path to include
$kdehome/lib/kde5/plugins, the original change says this is to allow
users to load styles and such.
In Plasma 5 $kdehome is .config, which shouldn't contain any plugins, so
this line currently isn't achieving anything.
Apparently instead it was causing problems and various distros are
already patching it out without issue.
BUG: 349371
FIXED-IN: 5.4.0
frameworkintegration is able to read fonts by itself, so this hardcode
makes it impossible for distributions to personalize fonts in globally
installed kdeglobal
this returns us to behaviour of kde4 times (e.g. this is what kwin expects).
each x11 screen in xcb terminology is a virtual desktop,
potentially a collection of separate juxtaposed monitors.
while QScreen is representing only one output (e.g. DVI-I-1, VGA-1, etc.)
which may be combined with others into one virtual desktop.
see QXcbConnection::updateScreens()
REVIEW: 122320
this reduces number of libraries to link with from over 100 to 50
and improves base binary run time on my lenovo e330 from 8 seconds to less than 6
(and hence improves system startup time, yay!)
Martin: i will do a switch from QGuiApplication::screens() to xcb screens
separately because it changes behaviour comparing to kde4
REVIEW: 122270
CCMAIL: mgraesslin@kde.org
registerService() isn't sufficient, this has probably been broken
since the port from DCOP. The exported object is used by ksmserver
to talk to kcminit during startup
kstartupconfigfiles contains a list of files to compare mtimes on to see
if we need to rebuild kstartupconfig. This wasn't being created
correctly so we failed to rebuild if any configs updated.
This was broken in Qt5 porting:
- const QStringList dirs =
KGlobal::dirs()->kfsstnd_prefixes().split( KPATH_SEPARATOR, QString::SkipEmptyParts);
+ const QStringList dirs =
QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation);
REVIEW: 119669
kstartupconfigfiles contains a list of files to compare mtimes on to see
if we need to rebuild kstartupconfig. This wasn't being created
correctly so we failed to rebuild if any configs updated.
This was broken in Qt5 porting:
- const QStringList dirs =
KGlobal::dirs()->kfsstnd_prefixes().split( KPATH_SEPARATOR, QString::SkipEmptyParts);
+ const QStringList dirs =
QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation);
REVIEW: 119669
If ~/.config does not exist readlink will not output anything,
causing startkde to write configs to /kstartupconfigkeys, which
is not a writable path for a regular user.
Since the original commit mentions that relative paths weren't working,
I've taken a alternative approach of using ${HOME} instead.
REVIEW: 119522
kstartupconfig was looking in .config/share/startupconfigkeys
startkde and kdostartupconfig write to .config/startupconfigkeys
End result settings such as those in ksplash were ignored
REVIEW: 119425
kstartupconfig was looking in .config/share/startupconfigkeys
startkde and kdostartupconfig write to .config/startupconfigkeys
End result settings such as those in ksplash were ignored
REVIEW: 119425
Currently env and shutdown scripts in startkde are not run due to the way kf5-config is used. There is no more $KDEHOME, so proper paths aren't being found.
This patch moves things to qtpaths, putting things under ConfigLocation + "plasma-workspace" + "env" (or "shutdown").
As a plus, kf5-config is no longer used in startkde.
CCBUG: 333793
REVIEW: 119145
KLOCALE_LANGUAGES was used by the kde4 ksplash in order to to know which
language to show. This environment variable is no longer used by the qml
based ksplash. It makes no sense to have it.
Additionally, this means we can stop linking against kdelibs4support.
This is important cause kdostartupconfig blocks the rest of the boot
sequence. On my system it causes a good 0.3 - 0.4 seconds delay. By no
longer linking to kdelibs4support it takes less than 0.1 seconds and no
longer shows up in the bootchat logs.
REVIEW: 119103