Bug reports from Linux users are the best bug reports

It is a “well known fact” that many (game) developers don’t release Linux versions because the Linux market share is “so low” as to be “not worth the effort”. The logic goes along the lines of “Supporting a third platform will add X% to sales, and Y% to development and support costs. Since X is going to a lot smaller than Y, it doesn’t make financial sense to release a Linux version.”

Turns out that logic is flawed, as Linux users are 6.5x as likely to submit bug reports, those bug reports are far higher in quality, and over 99% of the bugs reported are not specific to the Linux version anyway.

The reality: Linux versions of software attract Linux users who provide developers with quality feedback that, in turn, improves the software for everyone.

15 Likes

Now this is cool.

I had always wondered about this, if Linux generates platform specific bugs and if it makes significantly more effort.

7 Likes

Lol devs gonna dev, basically. Interacting with the Linux community via a software service/product is basically yelling “Hey, y’all want to help with this!?”

Edit:

And if it’s closed source and proprietary, they may decide that help involves immediately fixing that poor decision for you, eg, Nvidia lol :stuck_out_tongue_winking_eye:

3 Likes

This is old news. Devs complain about this, not seeing the fact that “competent” users who care about things getting fixed are linux users.

1 Like

Well, I wouldn’t even just put it to “competence”; we’re also the people with the most experience writing and dealing with bug tickets as part of everyday work and personal stuff, ie, JIRA, GitHub, GitLab, etc…

2 Likes

I’m going to say this post is certainly interesting, but it is also a sample-size of 1.

And with that I mean 1 game. There’s not really an easy way to compare one game to the next.

That is the one thing, the other one that makes a huge difference is what engine you’re using. If you are using an engine that was from the ground up designed to be multi-platform including Linux (like this game using Godot), then yeah, you’re not going to run into major issues that are specific to the platform.
If on the other hand you are using a proprietary engine (whether you agree with that decision or not, and for whatever reason it was made), and it was not designed with Linux in mind from the Go, then yeah, you’re going to run into problems sooner or later.


This is part rant, part somewhat useful information, so read at your own risk.

The third thing that is worth mentioning is that issues with Linux releases don’t normally arise on release. Linux-native ports tend to work perfectly reasonable on release. The issue comes with finished games that are not maintained, and the reality is that those are probably 80% of games out there, especially AAA titles.
The game is released, if you’re not EA or Ubisoft it receives a couple patches, and then it won’t ever get touched again, and that is where the issues start.
With the Linux Ecosystem as it is, they degrade over time. The reports only start piling on after some time has passed.

I’ve talked about this before and I still stand by it, so here’s a quote:

Added note for DXMD: This is a known issue with newer amdgpu drivers and Proton is pretty much the accepted workaround at this point.

As for Undertale, I haven’t tried it in a long time, but as far as I know there has not been any updates to the game, so the situation wouldn’t have changed. The issue here is that apparently the game was compiled with fixed Lib-versions in mind (which makes sense when you only officially support one distro-release), so up-to-date systems just can’t find them anymore.

TR2013 is not necessarily a “Linux” issue, just a limitation of the API.

But, I can add another game to the list: Rise of the Tomb Raider.
Now Rise of the Tomb Raider is a port also made by Feral Interactive. I love their work, I do, but the game is so buggy it becomes near unplayable if you don’t have a serious amount of frustration resistance.
I played this game on stream a couple months ago, and if it works, it works great 90% of the time. But it crashes. SO. MUCH. It is abominable.
And I have not been able to track down what it is, and quite honestly at this point I don’t much care anymore. I would suspect it’s a similar issue DXMD has, but I can’t confirm.
The game runs with a debugger attached for some reason (and yes, it was the release version, not some kind of beta in the steam settings), and when it crashes, it crashes so hard it takes other processes with it because the system literally runs out of memory when it does. How is that possible? I don’t know, but I’m going to assume it has something to do with the debugger.

Now, I don’t want to add only negative reports, so here’s a positive example: Black Mesa. Played it over a year ago, but it ran like a charm. But again: Source Engine, so developed with Linux in Mind.
Another one: Don’t Starve Together. Runs perfectly, even in cross-platform games. But it is also still constantly updated.


The point I’m trying to make is that for games we just need a better and more stable distribution system, be it AppImage or Flatpak or otherwise. And no, the Steam runtime doesn’t cut it as the examples show.

1 Like

I am pretty sure that the kind of person able to stick with Linux, might be above average at problem solving, owing to the nature of the systems.
This would not be surprising that they might have more technical, and better reasoning for detecting What may have caused a bug.

The typical person who chooses the path less traveled, bucking convention, might also be a little less socially normal, and more predisposed to an emotional response as feedback than an actual bug report.

Aka: aspies running Linux reee more, because they see the shortcuts devs take and complain about them…

We really shoot ourselves in the foot

1 Like

I dont mind having Proton as the defacto target for Linux gaming. I just want Linux gaming right here, right now. Particularly with games with anti-cheat.

The whole thing is proprietary software anyway and i dont think the game porters (Like Feral) is likely to release their compatibility magic source anyway.

1 Like

I’m a little bit split on that. On the one hand I don’t mind it as it is now, but in he long run I don’t think it’s good to rely on it indefinitely.
Valve might be pumping a lot of money into DXVK and WINE development, but can this go on forever? Surely not, they are a for-profit company after all and so they do need to see a return on their investment at some point.

Just by the nature of WINE development, relying on Proton will always lag behind native Windows gaming (or even VMs for that matter), so it doesn’t help the situation overall. Sure it’s great we can play most games on Proton now, noone’s arguing that, but brand new releases often still have day-1 issues that are platform specific. And even if they are patched fairly quickly these days, it is still a lag-time a majority of gamers are not willing to accept.

Also the thing about those patches is that they usually arrive in community-provided packages first (i.e. Proton-GE, Proton-TkG and the like), which… yes, that’s just part of the Linux ecosystem, but it is also a barrier of entry for people completely new to Linux that just want things to work. It often times takes weeks if not months for patches to arrive in official Proton versions, and this is all time an average gamer might say “f**k it” and go back to Windows.

If you look at the steamdeck the idea is to have a “console-like” experience. Turn it on, press play, go. Well, that’s the theory. But how many games still require Proton-GE or other because Valve can’t or won’t merge some patches? If someone not versed in the Linux environment runs across such a game/issue, they’re going to think it’s garbage because that wasn’t what was promised.
And I’m also still wondering how easy it will be to import custom Proton builds, but we’ll see about that.

Well TBH it’s been here for years now, except for the Anti-Cheat part which is coming.

I don’t think anyone is really expecting that either, that’s just… unrealistic to say the least.
I’m sure they have a basic toolkit they work with, but ultimately it’s going to be customised for each port individually.
Also they have some stuff released, not a lot though.

1 Like

Holy shit, did not consider this, but makes so much sense.

Welp, that pretty much guarantees I’ll never be switching to a Linux desktop OS.

I was watching Linus Linux switch episode 1 and he bricked the OS cause the steam install had out of date lib conflicts, too.

Flatpaks and the like are the only real solution here, but until that becomes standard, and given the blow back I doubt it, I’m not seeing how Linux will ever reach a state of “it just works” for end users

OSS games will never happen. It’s super unrealistic as a business model.

The fact that Linux works so poorly with proprietary software isn’t really an issue with the software.

To be perfectly clear, this is an outlier and you’re taking it out of context.
Most games and applications are not compiled that way.

I didn’t watch the video but I can’t imagine what he did to brick a system.
If the package manager can’t find a dependency, it will just refuse to install the package. And even if you force the install even missing dependencies, then all that will happen is that the application in question (here Steam) won’t start. There is nothing that can brick the system with that.

It very much depends what the “end user” does with it because for the most part it is already “it just works”.

Not with the software but with the developer and/or the distribution mechanisms. There is a lot of proprietary software on Linux that works perfectly fine, it’s just a matter of the developer understanding the ecosystem.

1 Like

Nah. I’m not taking it out of context; it’s just the final nail in the coffin after I was re-evaluating putting Linux on my main machine.

There are plenty of other reasons, but dealing with stuff like that on even native Linux ports is a straw too many, for me.


Watch the LTT video once it’s off Floatplane and on YT. It was a weird edge case with package tree dept on Pop_OS!

He went to install steam, but the system hadn’t updated fully, steam threw conflicts warning, he forced it, ended up removing the GUI and bunch of other critical system components.

He bricked the thing and had to reinstall.


It was in reference as a general statement for the average non-technical user, ie, exactly what Linus is going through now. And I stand by that statement. Lots of stuff on Linux doesn’t just work and the push back on flatpaks is one of the reasons why.

Narrowing scope to specific use case will of course always get you someone who thinks it’s perfect, but that’s obviously false.


And yes, I was criticizing the distribution mechanism of not using flatpaks and the like.

The more barriers one can remove to releasing and needing to maintain software on Linux the better.

Hm I wonder what’s really at fault here then.

On the one hand, fair. On the on other, an average non-technical user is just copying shit into a terminal and will press enter with no understanding on what’s happening, so I don’t really see it as fully his fault either.

The average non-technical user won’t force an install on accident. And if they do, well sorry but that’s still on them.
There’s a reason package managers warn against this.

And besides that I wouldn’t describe Linus as an “average non-technical user” either. And I certainly hope he did explain it was his fault for forcing it in the first place because shit like that always pull Linux into a bad light even if it is clearly user error, especially for a knowledgeable user like him.

1 Like

He talks about it as a cut in at the end of the video after credits, since he decided to dig a bit deeper into what happened but it was the FP comments that actually figured it out in detail.

Linus is a linux noob, you know? So he’s actually a pretty good example of someone who knows tech, but has no idea how to actually use linux the way he is trying.

And, well have to agree to disagree. The system shouldn’t have allowed itself to get into that kind of state in the first place. Users shouldn’t need to be super familiar with package managers and all the pit falls and reading all the documentation for basic things like installing steam of all things

lol that is exactly what I am saying. It doesn’t do this unless the user specifically forces it after getting a warning and still accepting the risks.

They don’t need to either. They need reading comprehension when a warning pops up without blindly hammering through it.

Dude, warnings like that aren’t the most obvious thing in the world. It’s literally a bunch of quickly scrolling text, mentions some conflicts somewhere in all that density, mentions may remove some things, and then asks for confirmation to proceed.

Normal people don’t spend the time reading all that before just type ‘y’

Have you seen how common it is for users to click yes to whatever pop up’s happen on Windows and MacOS asking for confirmation to install a thing?

You’re being fairly elitist right now

Edit:

Also that kind of attitude is exactly why some people call the linux community toxic as it isn’t helpful in any sense; something I appreciated in the comments on that video were people discussing reaching out to System76 and how the problem could be avoided and should be tested for…actual things that would help prevent future cases

No it is not. Have you actually ever run into a situation where a package manager can’t resolve dependencies?
It doesn’t give you the option to just continue by typing y. You need to specifically type a command in to force override it. And even then it still gives you a warning and you have to accept it.

To show you a copy and paste from OBS discord to see how this looks on Ubuntu (and Pop_OS is Ubuntu based after all):

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 obs-studio : Depends: libavcodec57 (>= 7:3.4.8) but 7:3.4.2-2 is to be installed or
                       libavcodec-extra57 (>= 7:3.4.8) but it is not going to be installed
              Depends: libavdevice57 (>= 7:3.4.8) but 7:3.4.2-2 is to be installed
              Depends: libavformat57 (>= 7:3.4.8) but 7:3.4.2-2 is to be installed
              Depends: libavutil55 (>= 7:3.4.8) but 7:3.4.2-2 is to be installed
              Depends: libcurl4 (>= 7.16.2) but it is not going to be installed
              Depends: libswresample2 (>= 7:3.4.8) but 7:3.4.2-2 is to be installed
              Depends: libswscale4 (>= 7:3.4.8) but 7:3.4.2-2 is to be installed
              Depends: libwayland-egl1 (>= 1.15.0)
E: Unable to correct problems, you have held broken packages.

It does not give you an option to force the install. This is just quite literally not a thing.
Apt in fact doesn’t even have an option to force the install. You have to go through dpkg instead and even then it will still show you a warning that it might brick your system.

If this is still “too easy” to reach then I’m not sure what you expect. There’s a limit to how many warnings and walls you can put in place without making it completely unusable.

it’s not elitist to expect for someone of his caliber to be able to read text.

Look I’m more then happy to help new people over the edge, I’m in various support discords supporting Linux software and I have absolutely no issue with new people making mistakes.

But here’s the difference:
Linus is not a non-technical user. He knows his shit. And even if he is not versed in Linux, I can expect him to read an error message. This will not be the first time and not be the last time he runs across one and I am sure he has had error messages fly in his face in his time on Windows too.

To be perfectly clear:

I am not criticising that he made a mistake, I’m criticising that he’s presenting it as if it were a systemic issue when this is clearly user error. If he were to make a video about “here’s this thing that can happen and how you avoid it” that’s a totally different topic, but from what you were saying it doesn’t sound like that at all.

But either way, I’ll have to see the video to see what he actually did.


edit:
Also, I can totally understand that a message like the one above is overwhelming and that improvements can and should be made, but the point I’m trying to get across is that it is not as easy to brick a system as you seem to think it is.

Not to say I’m fairly sure he bricked a couple Windows installs before, but did we ever see a video about that? Don’t think so.

I have, thought I’ll admit it has been a hot minute since I’ve had to deal with this situation, but my understanding was that its wasn’t unresolved deps, but out of date ones that were conflicting with those already installed.

Unresolved deps are a different kettle of fish.

I wasn’t watching the terminal too closely, but I’d expect even Linus to pause at something with that many barriers, so I don’t think it was that hard.

So, the point of the entire series is to showcase what a someone who doesn’t know Linux may experience trying to switch over on their home desktop; I don’t really see value in calling out whataboutism in reference to windows issues, he already goes out of his way to say he’s had plenty of them just to avoid coming off as shitting on Linux.


As for showcasing user error as a systemic one:

I didn’t get that feeling. He clearly states he may have just done something stupid. The point was merely that by recording and showing exactly what he did he can showcase that what he did “as someone new to Linux” wasn’t out of left field and to share his experiences.

As a contrast, Luke is shown in the same video and clearly has a much more smooth and easy experience; just had to tweak some monitor settings and stuff.

It’s a good video and I encourage to watch it. In fact, I encourage anyone considering Linux and those who are experienced with it to watch it. I like how the series has Luke and Linus showcasing their differing levels of issues and how they resolve them; it’s about as honest a take on new user experience as we’re going to get

Edit:

Also we’ve pretty thourghly detailed this thread lol so let’s leave it at that? We can always open a new one to discuss the video later