user shouting
user: “YOU MUST IMPLEMENT XYZ!!! IT’S ESSENTIAL FOR MY USECASE”
answer: "Thanks for your feed back. We accept pull requests. "
and the user was never heard from again.
Until later on a random blogpost happens about “why FOSS is dying” or “why FOSS developers are rude” and you get namedropped :D
or you can be gnome, and “accept pull requests” by letting them stall for 8 years for no reason, refuse to elaborate, then claim your getting bullied when users get upset. that’s a solid third option
I’m guessing you’re talking about something specific and if so could you link the pull requests or repository?
There’s actually a few of them, but the most recent I can remember off the top of my head is probably the DRM leasing. That was a fun one. Everyone got together discussed how to do DRM leasing, gnome agreed and signed off on the implementation, stayed quiet for a long time, someone made a pull request for the agreed upon implementation, silence for a bit, and then all of a sudden “actually this implementation bad should be portal so nvm not doing it this way everyone else should change to use portals”
ah right another was variable refresh https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1154 basically sat for 3 years with no review, and when users started being like hey we really need this what’s going on developers got all super defensive and ultimately locked it claiming harassment
The comment about 8 years was a reference to the thumbnails in the file browser. If I recall correctly that one took about 8 years
I do recall the thread linked and I think a few individuals whose sole purpose on the Gnome GitLab was insulting the Gnome maintainers were banned. Sometimes Gnome’s obsession with polish can be a double edged sword. I don’t think anyone on the Gnome team let’s merge requests die on purpose its just a lack of communication from them. Wish Gnome would take some risks with the DE with new features in the future.
What do you mean giving back to the community? We already report a use case!!
Honestly, the biggest issue for me is that it’s someone else’s code that is usually not following industry standards of maintaining something. Usually, it goes off in some open-source standard way of doing something. If more projects were better at standardizing toward the known industry standards then it’d be far easier for me to jump into.
Where “Industry standard” is EBCDIC? ASN.1?
Now don’t get me wrong ASN.1 is actually kinda nice but if the industry wants FLOSS to adopt it it better produce some actual, comprehensive, FLOSS libraries that make working with it easy. In other instances they shout “noone supports our standards”, while simultaneously locking those standards behind $10000 fees to even view. Or they invent brand-new ways to do things just for the heck of it and refuse to be compatible with every other manufacturer out there, see e.g. the NVidia kms/gbm saga. “Yeah we know we’re writing a linux driver but let’s just ignore how every other linux graphics driver interacts with its environment”. Hardware companies trying to productise software leads to some atrocious insanity.
But which industry standard?
Ignore the shouting; ignore the project; take a vacation and relax.
Id anybody paying you to be a FOSS developer? If no, you can do whatever you want with it.
It’s a volunteer thing at the end of the day!
Wayland development. Tons of folks yelling “X is good enough!” Where they just ignore that no one is actively developing XOrg which is pretty much the biggest X11 implementation.
Plenty maintaining XOrg but new things aren’t coming to XOrg, there’s just no one there the XOrg devs moved to Wayland.
So all these people shouting, they’re telling you keep a piece of software that’s very fragile, in a space that hardware makers are progressing at rapid pace, has decades of hot fixes, duct tape, and cruft, and nobody is actively developing for.
Like I just don’t understand the people yelling that Wayland is raping peoples wives and setting fire to their dogs. The yelling group is screaming for people to use something that nobody wants to work on and nobody is paying enough for people to work on. The code base is horrible and it easily causes burnout in three weeks or less. No one in their right mind is picking it up for shits and giggles.
So if everyone abandons Wayland, what’s the end goal? Keep riding XOrg till hardware outpaces it completely? Like I don’t understand what the Wayland haters are trying to get at. There’s so little going on in XOrg at this point and everyone seems to universally hate the code base. And a rewrite of the base sounds a whole lot like Wayland but artificially adding in X11 restrictions that make no sense since we all aren’t using PDP-11 to run the clients.
I get that Wayland has configurations that don’t work yet. All software has bugs, including X11 implementations. But Wayland is arguably a technology that is more in line with how modern hardware works than the X11 protocol will ever be. And Wayland is designed to be easy for devs to work with, not a cobble of archaic limitations due to a protocol that was designed for 1970s era computers.
That level of hate for Wayland is just this confusing Luddite cry for software that hardware that properly supports it no longer exists. The reason modern video cards do run on X at this point is because of a lot of hacks. I thought everyone understood this when we did the whole AIGLX vs XGL thing.
its crazy to think that such an old display server is still being used and even defended to this day. X these days feels like a small thing with way too many extensions.
It has many neat little features that will never get implemented into Wayland for security reason (e.g. want to play a video on a button in your spreadsheet app using mpv?). It was fun while it lasted, but the next generation will never be able to experience it.
(e.g. want to play a video on a button in your spreadsheet app using mpv?
You can definitely do that as wayland supports sub-compositors. You probably shouldn’t, though.
How do you that in wayland? I’m very interested with crazy and useless stuff like this. On X11, you can pass a window ID to mpv with
--wid
, it’ll attach the player to that window, even if that window is actually a button in a spreadsheet app.You implement the wayland server interface, launch mpv with the right environment to connect to you, then you take the buffer mpv gives you and compose it onto your window.
You’re listening to loud asshats and assuming they’re the majority. They’re not.
One day Wayland will reach a tipping point where it will replace X. Until then, most users will just stick with whatever their distro installs. Most people don’t care one way or another.
As for me, I’m probably gonna to stick with X until I have no choice because I actually use the network features that Wayland isn’t replacing. That doesn’t mean I hate Wayland - I’ve never used it - it just means it’s not the best software for me at this time. Most people never do anything with X that Wayland can’t do and won’t notice when it becomes the default.
Frankly, the only reason I care is the end-user drawbacks that Wayland seems to have. There are tons of bugs and issues. On top of that, I use Nvidia proprietary drivers which also causes more drawbacks and issues. It feels like at this point a third option needs to be made available. It’s been 15 years since Wayland was released and it still has a large amount of bugs and isn’t ready for most distros to adopt it.
I’ve not touched the Wayland or Xorg code, and I’ve not looked into why Wayland is so broken, but the major issue I see is that it’s taken them 15 years to still have a buggy display server. Display servers need to be the most stable you could possibly make them. They need to be made with desktop and fullscreen exclusive apps in mind. They need to be made modern and extendable while also ensuring those extensions aren’t able to crash the entire display server. They need to be robust and that’s just not what you are going to find with Wayland, or Xorg, or perhaps even Linux in general.
Wayland isn’t broken it’s new. Let’s take, say, global shortcuts: Doing it the X way means that if you can display a window, you can keylog the whole desktop. That’s not acceptable in a modern design, so wayland clients are isolated from each other, and the wayland devs simply left it out, saying “if people need this, they can come up with a protocol extension to do it properly”. Then, years later, desktop environment devs came around and said “hey, global shortcuts, what about that” and spent two years hashing out a protocol to do it, one that will stand the test of time. It in fact didn’t become part of wayland but xdg-desktop-portal, a collection of protocols started off by the flatpack folks to enable interaction across sandbox boundaries: The application doesn’t say “hey x server, give me all keyboard input everywhere” but “hey wayland compositor, if it wouldn’t be too much bother and it’s fine with you I’d like to react globally to this key combination”.
And then random software comes along and refuses to implement things and users complain that everything is broken. Yes, code will have to change application-side for Wayland, unless your app doesn’t do a single call into Xlib but does everything via toolkit there’s going to have to be changes. But what did you expect you’re using a library that’s fucking 40 years old. A library that was written with the devs fedexing source back and forth because the internet was too unstable to reliably send two or three megabytes over night because it was still a research project.
…and along also come random desktop environments and their devs unwilling to implement standards for absolutely no reason. Not just mostly but pretty much exclusively Gnome. This mpv commit captures the opinion of the wider community quite well. (mpv’s main gripe is gnome’s lack of support for server-side window decorations, with the gnome devs going “tell your tk to draw them” – mpv doesn’t use a tk and is not about to start to link to one just to draw decorations which the server can do better because mpv couldn’t care less how they look or what buttons they have).
Wayland wasn’t the first attempt at replacing X. It has made more traction than any other attempt, though. There’s no real hurry - it’s not like X eats your babies and runs over your dog.
As far as robustness goes, that’s mostly the driver. I’ve yet to see a bulletproof display system, commercial or non-commercial. If you cut out driver issues, X is on par with or more stable than other systems. It had better be, given that it’s had decades of bug fixes with few new features to cause new bugs.
Feels like this is entirely just blaming the driver which isn’t the cause of 99% of Wayland issues. I know obs, another open sourced project, has caused a lot of issues with Wayland. It’s not driver related.
As for xorg not being a problem, in the same regard why even bother with a display server at all. The point isn’t that’s it’s bad it’s that there are better ways of doing things.
I wasn’t clear. I meant that the issues with X crashing were usually driver issues. I have no idea about Wayland - I don’t use it since it doesn’t do what I want by design.
X does the job well enough to be invisible to most people. Yes, we need a clean start in order to move forward efficiently (lots of assumptions about computer displays from the 80s no longer apply), but it’s good enough for most people’s needs.
Why bother with a display server? Some people - like myself - actually use that functionality. It’s not part of the design for Wayland. Personally, I think that’s a mistake - especially as things become more cloud-based - but I’m obviously in the minority.
You know you can run XWayland and have clients connect via network?
There’s still some development going on in Xorg and it’s pretty much all XWayland, it’s going to stay alive as a compatibility layer for the forseeable future and beyond. And as a network layer until someone thinks of something better (no, sending video isn’t better, the strength of X as a network protocol is that it doesn’t need much bandwidth). It’s the hardware interface stuff, actually throwing pixels on screen, that’s thoroughly dead.
That’s cool and all, but why would I want to? Display systems are invisible when they work right, and X has worked right for me (save for some pre-EDID config issues) since the 90s. I run a program, it pops up on my screen and I interact with it. That’s all I ask of it.
None of the issues I’ve had with X (drivers, mostly) will be resolved with Wayland. For me, it’s a solution in search of a problem. The only reason I have even a passing interest is that it’s (theoretically) easier to maintain and change as computing changes.
I’ll move to Wayland when I have to, but right now there’s no reason to not use X.
None of the issues I’ve had with X (drivers, mostly) will be resolved with Wayland. For me, it’s a solution in search of a problem.
You’re welcome to continue to develop and maintain X, wrapping even more duct tape around all that duct tape, noone is stopping you. Or, alternatively, you simply never had a look at the X source code – I cannot fathom a developer who would be masochistic enough to actually maintain that codebase. It was unsalvageable when the devs started to abandon it for Wayland, fifteen years ago, it’s not any more salvageable now.
And if you want to “Fix X” – that, precisely, is wayland: X is a buggy mess of fundamentally insecure software, developed before “buffer overflow” was a thing people acknowledged as security issue. It’s software from the age of
strlen
. It cannot be fixed while keeping it compatible and if you have used X “since the 90s” you know very well how much of a shitshow it is, and it does not just “pop things up on your screen and lets you interact with them”. Random thing: In wayland, programs can’t focus fight.I’ll move to Wayland when I have to, but right now there’s no reason to not use X.
Yes, there is: Making the transition faster. All this griping people are doing right now and during the last what five years could’ve been avoided if DEs, window managers, toolkits, etc, had actually paid attention to what the X devs were doing. All those screen sharing and global shortcut protocols could have been ready ten years ago.
Why do I care about the state of the code? It works. Perhaps all these people complaining are really just sick of your proselytization.
To paraphrase Terry Pratchett, “You only get one life. You can pick up five causes on any street corner.”
Like I don’t understand what the Wayland haters are trying to get at
New things bad.
I feel like this is the answer to almost any case where many people hate on something.
[This comment has been deleted by an automated system]
Well, I’m a Windows user who just installed Linux Mint and spent a day setting up the free software media streaming server stack. It was a fun project, and it is impressive how well the many parts work together.
So, I’m just here to say THANK YOU to all of the FOSS developers out there. I am truly amazed at the incredible work you do!
FOSS user:
Wants to improve the software and sees easy fixes, but isn’t allowed to create a Merge Request because company policy disallows you from writing code for other projects on company time
Good luck with them holding that up in court. Just do it on your own hardware and you’re good to go
I don’t really code in my free time, every merge request for a FOSS project I wanted to do so far was for company projects where a feature was missing or buggy. My GitHub and Gitlab accounts are full of outdated forks we needed for a minor change in the FOSS project which I was not allowed to merge upstream
I had that situation for several years. I skipped to a pro-opensource organization, and have never looked back. The coolest part is I have commits accepted to some big name projects now, which I figure is part of why nobody asks me to write fizz-buzz in an interview anymore.
deleted by creator
Not submitting the pull request until off work hours (maybe a hour or two after the shift whistle blows) would also be a good story to show the court.
I’m about to post out a new FOSS project I’ve been working on for a while, so this is making me a bit nervous
Don’t overthink it. Just publish. And as for entitled users, remember that you don’t owe them. If anyone insists on a feature, tell them that you can prioritize them for the right fee.
Or link the contributing page 😂
It better be flawless at the alpha stage or you know what’ll happen…
In reality, those demanding users only start to show up once you have a huge number of users. Post the project and just ignore support requests until you feel like working on it.
[cries in seeing how people treat ROM maintainers]
Doesn’t worth the mental burnout buddy