Wayland - Only the Future or Already the Present

Posted on 2023-06-04

It is believed that Wayland is going to be the future of display managers for Linux. So I recently tried it out and am happy to report that it may not only be the future, but is already very usable in many circumstances.

Before discussing my switch to Wayland though, it is worth talking about what I have been using until now. In the last (at least) year I have been daily-driving Xmonad (which obviously uses the X11 display server). It is great, and I love it and I would certainly return to it if I didn't think Wayland was already ready for me. Of course, I had my own Xmonad configuration (which is actually pretty minimal) including xmobar for the status bar. Though recently I had some issues with xmobar crashing (which was solved by switching away from xmobar obviously) and also longer startup times (30+ seconds) for some applications (which was actually the fault of xdg-desktop-portal-gnome and which was not fixed by switching to Wayland, but I found another fix for that in the meantime). So I decided to take a look at the future of Linux display system.

The compositor I chose to switch to is Hyprland, and it is great. To get started, I just installed it and related packages from the repos, logged out and then logged in using Hyprland. And it just worked. Of course, I then altered the default keybindings to ones similar to what I was using in Xmonad, and I was already feeling at home with the new system. Well, almost. I still had to set up and configure my status bar, for which I used waybar, set a wallpaper, set up a screen locker (swaylock via swayidle). But nothing about that was hard in any way.

Well, what does my desktop now look like? I won't show you, but it looks beautiful. While I did not "optimize" the desktop in any way for unixporn, it looks really good with slightly rounded corners (I reduced the rounding a bit from the default configuration), the animations (which I made considerably faster) and also the status bar (which I really did not customize that much, and it already looks great by default).

But of course, the looks does not matter as much as the actual functionality does. And I must say, everything just works out of the box. All the keybindings I used over at Xmonad can easily be ported to Hyprland and work exactly the same (and I actually did some slight improvements in those regards). Furthermore, most of the applications I use daily (read: terminal and browser) were instantly using wayland and those that were not using Wayland (read: Element) were displaying like they should, such that I did not even notice it way using xwayland until I checked.

Are all things perfect? Of course not, but the things that are not yet perfect are just extremely minor things. Firstly, I will need to set up my keyboard again to have no dead keys (I really hate dead keys) - this is probably just a one-liner. Furthermore, the shutdown script I usually use depends on dmenu - I will have to change it to use my new runner of choice, bemenu. Next, my nice script for setting wallpapers from pictures of Reddit broke as it was using feh to set wallpapers, and using swaybg instead also did not immediately work as swaybg would block when setting the wallpaper instead of running as a daemon. Lastly, I had one time when starting Hyprland resulted in a segfault (which is to be honest not a great track record as I am only using it for two days now) - a reboot fixed this for some reason.

You should also note that some things may not work in Wayland like expected, for example playing video games is still using X, and I am not sure how the performance will look like in those cases and I also heard screen sharing is working only with workarounds. But as I use neither on this PC, those are not issues for me.

All in all, I am very happy I made the switch to Wayland. I am sure there will be more hurdles that I will face in the upcoming weeks, but so far everything is working fine.

Return to home