<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hello,</p>
<p>The (basic) kwin split had been completed yesterday. This means
that <a class="moz-txt-link-freetext" href="https://invent.kde.org/plasma/kwin">https://invent.kde.org/plasma/kwin</a> hosts kwin_wayland, and
<a class="moz-txt-link-freetext" href="https://invent.kde.org/plasma/kwin-x11">https://invent.kde.org/plasma/kwin-x11</a> hosts kwin_x11 now. Both
kwin_x11 and kwin_wayland are co-installable, they don't conflict
with each other. When 6.4 is out, a distro can ship either
kwin_wayland or both kwin_x11 and kwin_wayland depending on the
distro details (e.g. is Wayland enabled by default? does the
distro require manual user intervention during the update process?
etc)</p>
<p>Note that kwin_wayland is de-facto just "kwin" and we suggest
that kwin_wayland is still provided by a package called "kwin".
Although, of course, the final decision is left to the distros.
kwin_x11 is expected to be maintained until Plasma 7, no new
features are expected to be backported (to be fair, the feature
freeze has been in place for quite a while already
<a class="moz-txt-link-freetext" href="https://blog.martin-graesslin.com/blog/2018/01/kwinx11-is-feature-frozen/">https://blog.martin-graesslin.com/blog/2018/01/kwinx11-is-feature-frozen/</a>).</p>
<p>New fixes should be landed in kwin_wayland first, then backported
to kwin_x11. There are a few ways how a fix can be backported:</p>
<p>- the first way to backport a bugfix is to use the `git
format-patch` command in kwin repo and then apply that patch in
kwin-x11 repo</p>
<p>- another way is to add kwin-x11 remote in kwin repo and then use
the cherry-pick command to backport fixes, for example</p>
<p> <span style="font-family:monospace">git remote add kwin-x11
<a class="moz-txt-link-abbreviated" href="mailto:git@invent.kde.org:plasma/kwin-x11.git">git@invent.kde.org:plasma/kwin-x11.git</a><br>
git fetch kwin-x11 master<br>
git checkout -b work/username/backport-bugfix kwin-x11/master<br>
git cherry-pick <hash of a fix><br>
... potentially resolve merge conflicts ...<br>
git push -o merge_request.create kwin-x11 HEAD<br>
</span></p>
<p>Despite the name, kwin-x11 still contains traces of Wayland. This
is mainly for autotests, and to keep the difference between
kwin_x11 and kwin_wayland codebases as minimal as possible so it's
easier to backport fixes.<br>
</p>
<p>More details about the split will follow in a separate blog post.</p>
<p>Cheers,<br>
Vlad<br>
</p>
<p></p>
</body>
</html>