Think Twice Before Abandoning Xorg – Wayland Breaks Everything

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • wf-recorder

  • A workaround for sharing the whole screen is to use wf-recorder [1], which supports capturing the whole screen, and feeding its output to a virtual V4L2 device using v4l2loopback [2]. Software that is able to capture from a V4L2-compatible webcam (i.e. most) can them capture from the virtual device without knowing anything about Wayland. It's not exactly the most CPU-efficient way of doing things, but if you can afford the cycles it works very well!

    [1] https://github.com/ammen99/wf-recorder

    [2] https://github.com/umlaeute/v4l2loopback

  • wlroots

    Discontinued A modular Wayland compositor library

  • That's true, but wlroots (sway's compositor) has tried to fill some of that gap: https://github.com/swaywm/wlroots/wiki/Projects-which-use-wl...

    It has its own libraries for things like screensharing (xdg-desktop-portal-wlr) that should work across these window-manager-esque desktops.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • sway

    i3-compatible Wayland compositor

  • That's exactly how I'm assembling my Sway session. My Sway config ends with `exec systemctl --user start sway-session.target`, and that target links to all the services I want running in my session (redshift, notification daemon, etc.). If you don't like systemd, you can `exec my-session-startup-script.sh` in the exactly same way.

    The Sway devs maintain a list of common helper applications that work with Sway: https://github.com/swaywm/sway/wiki/i3-Migration-Guide

  • clipman

    Discontinued A simple clipboard manager for Wayland

  • I personally found it annoying enough to install clipman[0] for my sway setup. Especially with short lived applications like calculators etc.

    [0] https://github.com/yory8/clipman

  • Jitsi Meet

    Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.

  • >https://github.com/jitsi/jitsi-meet/issues/6389 x broken since 24 Jan 2016 ("Closing since there is nothing we can do from the Jitsi Meet side.") See? Wayland breaks stuff and leaves application developers helpless and unable to fix the breakage, even if they wanted.

    It's not Jitsi's freaking problem! JavaScript webshit doesn't speak Wayalnd or X. This should be implemented in the web browser, and, surprise - it already has been done for Wayland and shipped in Firefox and Chromium.

    I'm not going to break down all of these, but it's just a bunch if vile horseshit. And you know what? I'm tired of debunking this crap. "Wayland devs break things and make everyone else deal with it." Xorg is broken and all of the user applications expect us to just volunteer to maintain a broken piece of shit forever. No matter how you slice it, someone's gonna have to do it, and there's plenty of shit that's permanently broken on X11 which works fine on Wayland, too. Fuck me, I'm so sick of this shit.

  • treestyletab

    Tree Style Tab, Show tabs like a tree.

  • Yep. Only Mozilla makes it harder year by year. Here's from January last year, another hoop to jump through: https://github.com/piroor/treestyletab/issues/2450

    For all the talk about UX, why cannot someone be bothered to sit down and talk to the actual people who use the product and ask what the ux problems are?

    At this point is there anyone left using Firefox except stubborn power users like me?

  • green-recorder

    Discontinued A simple screen recorder for Linux desktop. Supports Wayland & Xorg

  • As the developer of Green Recorder [1], the second example referred to in this page, I have to say that it sounds my abandonment statement is taken out of context.

    In order to support recording on different Wayland compositors (without having to develop tons of other middle layers by yourself), one would need to simply activate their built-in screencasting tool according the specified user settings. This took me a bit of time to figure out for GNOME, and I had to fill a bug-report to speak to one of the compositor developers to understand how to do that, as no documentation was available at all. Even so, some hidden bugs appeared (Quality wasn't too good, audio had to be recorded separately over ffmpeg, and then both audio and video had to be merged together in one file, V9 had a bug that consumes 100% of CPU on some hardware, so we had to use V8 by default... etc).

    In order to go further, I had to do the same thing for KWin on Wayland, Sway and other compositors out there in the market and then integrate them into my program. I had to find some workarounds for any bugs that may occur.

    Later on, some changes for ffmpeg API broke the Xorg recording (Green Recorder used ffmpeg to record on all desktop environments on Xorg), so I had to do more testing now for multiple versions of ffmpeg and on which distro do they work and don't work.

    So I just gave up, as I simply didn't find any particular reason to continue doing that since the only amount of support I received on my then-opened Patreon was $20 per month at its max.

    But it shouldn't be said that Wayland can not support screencasting or that it breaks screencasting. It is possible, and the previously mentioned issues are actually on the compositors' developers side, not the protocol.

    1: https://github.com/mhsabbagh/green-recorder

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts