Lets install say sway. When we click login it silently fails and returns to the login screen. Running it manually at a tty which a user will never do reveals that the dev wants users to pass an argument --unsupported-gpu to acknowledge that he isn't interested in bug reports from you even unrelated to nvidia. Instead of informing you of this the developer has from the perspective of the user just silently crashed and exited. If you decide to debug this you will run into other issues like an invisible mouse cursor this is solved by setting a variable in the environment.
From a user experience perspective this is complete nonsense. The arguments needed to start a functional environment were known from the start but users are required to each go on an online scavenger hunt to discover them.
Your not entitled to the developers time but the user experience I'm used to as a user is that projects take bug reports, and respond if they have time, fix them as time goes by when they can. My normal experience isn't that the dev will insert idealogically motivated crashes into my workflow and make me pass effectively --fuck-me-no-bug-reports-for-you-jerk. I'm not entitled to him running his project differently but I don't know why I would use anything from such a project.
That’s just your distro of choice fucking up the packaging, or you having installed some special display manager that handles it bad. If anything, xserver is/was a huge pain in the ass to start properly, and sway will just properly startup from console N.
If you want a 100% works suckless experience, then linux is not for you, period.
sway --unsupported-gpu
If you try to run it without that option it silently fails at any login screen. If you run it at the console you will note it TELLS you to run it with that option. This means the developer has detected what needs to be done to start a session and is silently telling you to go fuck yourself. There is no argument that every distro ought to exec a wrapper script that tests if you are running nvidia and if found pass --yes-I-understand-fuck-me-sideways when the net effect would be to replace the body of the if statement that already exists in the devlopers code and more to the point I don't think anyone has. You may note here is the default desktop file as provided by the project.https://github.com/swaywm/sway/blob/master/sway.desktop
This is what everyone is using and it is exactly as broken by default as I claimed.
If your not holding it wrong then something else MUST be at fault. Your distro must have fucked up the packaging, your app doesn't support wayland, your GPU's wayland support isn't up to snuff. Again users don't usually hire a programmer to figure out which piece of software is to "blame" nor care.
If you have a little red switch and you toggle it to the left and everything works and you toggle it to the right and nothing does most people are going to toggle it right. People have more important shit to do than figure out why toggling it left makes their lives suck.
Look at this exact example with you positing a wholly fictional distro packaging or display manager problem to paper over the fact that sway is literally designed to crash at the login screen if you use the GPU with >80% of the discrete market share.
https://linux-hardware.org/?view=os_display_server
Almost 2/3 of people are still using X11 because as experienced by users Wayland is kind of shitty.