Overclock.net banner

NVidia KWin EGLStream Patching

1898 Views 9 Replies 2 Participants Last post by  mouacyk
Anyone playing with this yet and got it to work with Plasma Wayland desktop?

https://www.reddit.com/r/kde/comments/apf48e/compiling_nvidias_kwin_eglstream_patches/
1 - 10 of 10 Posts

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #2 ·
Finally got it working. Had to install everything in /usr instead of /usr/local, otherwise the renderer was falling back to software and it was super slow.

I'm impressed by how snappy it is over OpenGL 3.1 compositing. X11 damage isn't perfect, input controls are a little slow to update. KWin window decorations are also missing.
 

· Registered
Joined
·
10 Posts
Finally got it working. Had to install everything in /usr instead of /usr/local, otherwise the renderer was falling back to software and it was super slow.

I'm impressed by how snappy it is over OpenGL 3.1 compositing. X11 damage isn't perfect, input controls are a little slow to update. KWin window decorations are also missing.
Hey man that's me on reddit who started the thread, I'm still stuck with software renderer. How and what did you exactly install to /usr?
 

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #4 ·
I installed the following into /usr prefix:

egl-wayland: run autogen.sh with --prefix=/usr
kwayland: during cmake, use -DCMAKE_INSTALL_PREFIX=/usr
kwin: during cmake, use -DCMAKE_INSTALL_PREFIX=/usr
eglexternalplatform: copy header files to /usr/include/EGL, pc file to /usr/share/pkgconfig

Additional issues observed:
copy-pase from/to terminals must be done explicitly -- middle-click doesn't work
 

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #5 · (Edited)
Needed to set additional cmake variables in order for kwin to compile:

v5.55.0 kwayland: during cmake, use -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_PREFIX_PATH=/usr
v5.15.0 kwin: during cmake, use -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_PREFIX_PATH=/usr

Also had to symlink /usr/bin/kwin_wayland to /usr/local/bin/kwin_wayland

I'm now on kwin-5.15.0 and kwayland-5.55.0 with window decorations working. I can now simply just select Plasma (Wayland) session and log in. Cursor motion occassionaly is a little janky. Unfortunately, any attempt to do a screen capture will crash plasma -- so no screenshot :(

Code:
         -/oyddmdhs+:.                [email protected]
     -odNMMMMMMMMNNmhy+-`             OS: Gentoo testing
   -yNMMMMMMMMMMMNNNmmdhy+-           Kernel: x86_64 Linux 4.20.1-gentoo
 `omMMMMMMMMMMMMNmdmmmmddhhy/`        Uptime: 20h 56m
 omMMMMMMMMMMMNhhyyyohmdddhhhdo`      Packages: 1431
.ydMMMMMMMMMMdhs++so/smdddhhhhdm+`    Shell: bash 5.0.2
 oyhdmNMMMMMMMNdyooydmddddhhhhyhNd.   Resolution: 2560x1440
  :oyhhdNNMMMMMMMNNNmmdddhhhhhyymMh   DE: KDE 5.55.0 / Plasma 5.15.0
    .:+sydNMMMMMNNNmmmdddhhhhhhmMmy   WM: KWin
       /mMMMMMMNNNmmmdddhhhhhmMNhs:   GTK Theme: oxygen-gtk [GTK2], Breeze-Dark [GTK3]
    `oNMMMMMMMNNNmmmddddhhdmMNhs+`    Icon Theme: breeze-dark
  `sNMMMMMMMMNNNmmmdddddmNMmhs/.      Font: Agency FB Regular
 /NMMMMMMMMNNNNmmmdddmNMNdso:`        CPU: Intel Core i9-9900K @ 16x 5GHz [27.8°C]
+MMMMMMMNNNNNmmmmdmNMNdso/-           GPU: GeForce GTX 1080 Ti
yMMNNNNNNNmmmmmNNMmhs+/-`             RAM: 1997MiB / 16090MiB
/hMMNNNNNNNNMNdhs++/-`               
`/ohdmmddhys+++/:.`                  
  `-//////:--.
 

Attachments

· Registered
Joined
·
10 Posts
@mouacy that's awesome you got it working on Gentoo, I got EGLStreams working too after reinstalling kwayland and kwin to /usr just like you! However on Kubuntu 18.10 I'm having issues starting using just startplasmacompositor helper script, basically anything that prompts XWayland or X to start along results in just me having blank screen with cursor (that I can move around, and it is smooth now). I can start standalone Kate, this is good news, EGLStreams confirmed working on GTX 980 here after nuking /usr/bin/kwin_x11 and starting without XWayland:
Code:
$ XDG_SESSION_TYPE=wayland dbus-run-session kwin_wayland --drm --libinput  --exit-with-session=/usr/bin/kate
Expierience is very good, I know it is just Kate running fullscreen, but it is butter smooth.
 

Attachments

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #7 ·
The patches work great against qt overlay now, if you're on Gentoo (should work against main tree as well). Just install eglexternalplatform and egl-wayland manually to /usr. Create two user-patch directories for the appropriate versions of kwin and kwayland under /etc/portage/patches/ and download the patches into their respective folders. As of right now, kwayland-5.56.0 and kwin-5.15.3 will apply the latest patches cleanly and emerge successfully. It saves a few steps to have to patch, configure correctly, and install manually.

Once installed, just pick Plasma (Wayland) from the display manager greeter and the desktop will load using EGL on the binary blob. It'll be interesting to see how this is maintained at all levels -- on Gentoo, kwin might get a new eglstreams use flag.
 

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #8 ·
It looks like there is color banding in the screen locker screen.
 

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #9 ·
^ Color banding was fixed.

Gave Plasma Wayland on NVidia blob another go yesterday with the release of Firefox 75b1. Still need to use MOZ_ENABLE_WAYLAND=1 but it works now... tabs repaint properly, YouTube no longer crashes, browsing in general is functional. Had some invisible browser menus.

Was more surprised that XWayland started working partially. xglgears, xglinfo, nvidia-smi all worked. Bigger opengl benchmarks like Heaven and valley just render a black screen for now, but they run normally otherwise. None of the vulkan demos are working yet.

Occassionaly Plasma crashes when interacting with client windows. I use a heavily customized desktop configuration (KVantum engine with transparent blurs), which likely causes the instability. Gonna try a new default user profile and see if it's any more stable.

Overall fairly exciting progress for the blob, but still nowhere as usable as AMD open source driver though. Hoping for GBM succesor to change this situation for the blob this year. The fact that most AI toolkits are native to Linux is probably revitalizing NVidia's attention back to it now.
 

· Newb to Overclock.net
Joined
·
5,201 Posts
Discussion Starter · #10 ·
1 - 10 of 10 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top