Niri-wm Configuration and Troubleshooting
I recently switched my desktop environment from GNOME to niri-wm. This blog documents my configuration process and troubleshooting steps for niri-wm.
Why niri-wm
Two strengths drive me to have a taste for niri-wm:
- Niri-wm presents a scroll-based workspace view for each display. Compared to GNOME, where only the main display can have multiple workspaces, niri-wm is more flexible.
- Niri-wm requires fewer mouse operations -- different windows can be navigated effortlessly using the keyboard, ensuring a smooth and consistent workflow.
Installation
I hate the endless configuration required for certain software. A good post guides me in setting up a fancy shell and basic functions for niri-wm.
Troubleshootings
Screensharing for Wemeet
In niri-wm, Tencent Meeting's screen sharing has been problematic. After some attempts, I successfully resolved this issue.
Solution Approach: Instead of using the current Wayland client built into Wemeet, revert to the (older) Wemeet-x11 + wemeet-wayland-screenshare setup.
I've actually always preferred this method because it displays the cursor correctly under GNOME -- though I haven't used GNOME in a long time.
Steps:
Use niri with the fixed shm sharing patch.
The screen‑sharing feature using shared memory doesn’t seem to be merged into the main branch yet (there’s already a PR; it provides a patch). You can apply the patch yourself. If you’re on Arch Linux, you can try the PKGBUILD I wrote.Use wemeet-wayland-screenshare. It appears wemeet-wayland-screenshare hasn’t been updated for a while. Currently, after the first screen share in Wemeet, if you stop sharing, the second attempt won’t work properly. I fixed it with some AI assistance; the code is in my fork. For Arch Linux users, I’ve also provided a PKGBUILD.
Once everything is set up, you can simply launch Wemeet via the
WemeetApp(Wayland Screenshare).desktop file -- screen
sharing should now work normally!