I wish it wasn't such a mess
Whilst Wayland basically works (for various definition of works) it's very sad that Wayland is so very obviously oriented towards commercial interests and Linux first, and X for all its many many faults generally worked cross platform and had agreed on some functionality that the vast majority of Xorg implementations feature.
This is written on a fanless FreeBSD system with built in basic Intel GPU running Wayland and the labwc compositor. Firefox works fine, as do OpenOffice, WINE, and various Wayland applications for the most part.
There are still many issues, largely down to the 'open' nature of Unix standards, and the Linux first (let's be honest : anything else very grudgingly considered) attitude to Wayland development.
labwc has an annoying 'snap to edge' feature if windows are placed in a particular position. There's probably a way around this, but even if I find it, it may be different on *every other compositor*.
labwc does feature various Wayland protocol enhancements. Other compositors do not, because even if they're based on a common compositor library, protocol updates in that library do not automatically flow through to updates in the compositor.
Leading from the above, you can't rely on something such a config file to position monitors on startup (as you can in Xorg) as it may not be supported by the compositor, and the syntax differs for each compositor that supports it. Once Wayland itself is fully running, a post startup script can call the protocol enhancement to move monitors, and that *is* compositor agnostic assuming the protocol is supported.
The reference Wayland compositor, Weston, IS LINUX ONLY. There's an old NetBSD port last time I looked, but the only up to date implementation is on Linux. The fact the reference compositor is not tested on a non Linux platform beggars belief.
It's still not clear to me how to position windows that use the overlay plane (such as clocks). I can start the programs, but then can't easily interact with them, because my compositor appears to have no built in support or documentation on this, it's not obvious via a search, and at that point I start to lose the will to live and just look at an actual physical clock instead.
17 years on, things like colour management are still not nailed down.
Driver support for older cards is lacking, particularly on Nvidia.
What it needs, and also what will never happen :
*ONE* compositor base that everything bolts on to. This must be a suitable base for all compositor addons from the largest commercial desktops to the smallest individual offering.
Cross platform first, or at the very least a way of gracefully handling a lack of functionality. If it doesn't built on Linux and BSD, it doesn't get released.
Development driven by design, not commercial interests. So Redhat/Canonical, or Nvidia/AMD/Intel can't move things towards 'oh, your graphics card is old, no support for you' [1]
As it is, things will coalesce around a small number of large desktop based compositors (i.e. GNOME), and any company with sense will insist on their open source supporting software running on : Linux (possibly x64 only), and GNOME Wayland. And nothing else. mmmmm open platforms, and choice. [2]
[1] To be fair this already happened multiple times in Xorg, it's just that most people didn't notice because drivers were re-written to support the new X interface (there are at least three I know of). However, Wayland seems potentially to offer a larger excuse and 'not all the drivers are open, and doing this costs money, so even though your card is easily capable of working with Wayland, it never will'.
[2] Also to be fair, this occurs with poorly written Xorg software also : 'what do you mean my function call to place an icon on the desktop or query desktop stuff is failing, because you're running a window manager with no desktop or icons'