Jump to content

Linux sucks for gaming and this will probably never change

Go to solution Solved by apostlkpl,

GNU/Linux distros will never be a serious candidate for a gaming platform. I don't get how Valve feels positive with the steamdeck, especially since SteamOS 2.0 is a failed and abandoned project.

 

Anyway, the reason that desktop Linux sucks as a gaming platform is that gaming requires most of the code used in Games, (game-related) Tools and Drivers to be closed source. This is done because of competitive issues (for example Nvidia drivers) or to prevent cheating. That being said, Linux is the greatest OS when it comes to Server use, because most tools when it comes to networking are open source anyway.

 

It's not like that was an accident or something. Microsoft did not accidentally become number one on PCs for no reason. MS provides a stable API/ABI for Windows, thorough documentation, official Frameworks, SDKs, etc. On top of that, they offer the most incredible backwards compatibility even seen on computing (they have to though, because of Windows being the most used OS in most industries).

 

GNU/Linux on the other hand, ties software compilation to specific kernel and libc versions, a single tiny change in those versions break everything, and needs every app re-compiled. This is not a problem for open source apps (most distros re-compile packages automatically), but is a hell for maintaining closed-source software. That's why many companies that started to release Linux binaries for their (closed source) apps gave up eventually. To be fair, Flatpak/Snap tries to fix this problem.

 

Even when it comes to the kernel, Linux was never made with the intention of using closed source drivers. It works best when it gets to work with all required drivers within the kernel. Even closed source drivers are kind of a temporary fix, as loading modules is not recommended! Even Linus Torvalds himself said that closed source binaries are NOT welcome, and whoever chooses to uses them are on their own [trying to find the source for that].******

 

Now, as a gaming developer or a software company, would you choose a hostile environment like Linux, or a welcoming one like Windows for your Game releases?

 

 

Disclaimer: Emphasis on "GNU/Linux" throughout the post. The kernel as it is, can be useful for "Linux-based" projects like Android, that fixes most of said problems (with the exception of drivers, that's why you don't get Android upgrades indefinitely on your phone, hardware manufacturers like Mediatek or Qualcomm don't bother to make new drivers every time the kernel changes).

 

 

****EDIT:

"In the Linux kernel development community, Linus Torvalds has made strong statements on the issue of binary-only modules, asserting: "I refuse to even consider tying my hands over some binary-only module", and continuing: "I want people to know that when they use binary-only modules, it's THEIR problem."

https://en.m.wikipedia.org/wiki/Proprietary_device_driver

On 1/1/2022 at 6:48 AM, Magmarock said:

But in all seriousness I don't think repositories are good for closed source software which is why Linux has the kind of problems it does. I understand the appeal of using repos but I've never been a fan of them myself. What you get from a repo is a port of a program put there by the distro maintainers, and if they're not good at coding you're going to run into problems. Call me old fashion but I much prefer downloading programs from the website.

Actually, there are multiple options available on Linux, there are things I would go to the product website for, especially when I was using Ubuntu/debian based distros. However, there are other things I simply find far more convenient to just use the repos or app stores. Like why would I waste my time opening up a browser going to a website and downloading a file when I can just open up the app store or package manager front end that connects directly to the repos the applications are already stored in and are fairly up to date. I mean each to their own and not judging anyone, but for me personally, I prefer the app stores. There is actually no software to this day that I use that is neither in an app store nor up to date. Being up to date is also why I go for or recommend distros with the larger install and support bases on desktop (i.e. Ubuntu and now Arch through Garuda). In fact that i would only recommend ubuntu based distros or Garuda to people is why I don't agree with the "Linux is too fragmented" argument. I suspect ubuntu based distros are the lion's share of all Linux installs. In any case, with the repos, being integrated into the OS, I can also keep everything updated in one single

sudo apt-get dist-upgrade

or 

sudo pacman -Syu

or just click upgrade in the app store rather than having to go and download the latest update and installing.


The only times I have to go to a website are for specific drivers and software DaVinci Resolve, 4KVideodownloder, the AMDGPUpro drivers I use for mining on my Ubuntu server or for ROCm compute on my workstation, my DeckLink 4K capture card drivers, and the Epson Perfection V600 scanner drivers. For gaming, I keep it simple and go with AMD and mesa from the repos. I have not personally had any issues, but like Linus, I play single player games mainly or local multiplayer only ever going online for Star Citizen. Mesa and the proprietary nvidia drivers are things all distros should maintain in their repos as a default and I'm not even sure why the AMDGPUpro drivers are not.

 

Anyway, outside of the repos, you also now have distro independent packages such as AppImage, Snap, and Flatpack and there are websites (like flathub, snapcraft, and appimagehub) dedicated for each of these that the product developer can load their applications to and often do. And a few distros have integrated these into their app stores. While I don't care for the whole debate about which is better since I have used all three, I do prefer Appimage because they are self contained so very few if any dependency issues and they remind me almost of the dmg files on MacOS. In fact I feel that AppImages may be the ideal way for game devs to deliver their games to Linux or even as self contained WINE/Proton packages if they don't want to recompile for Linux. Saying that, I don't know enough about what is involved in developing games so won't say I know that will work.

Link to comment
Share on other sites

Link to post
Share on other sites

On 1/7/2022 at 6:52 AM, wasab said:

I have been developing professionally on and for linux for some years but you do you mr. private sector genius. 

 

On 1/8/2022 at 2:08 PM, thedarthtux said:

Actually, there are multiple options available on Linux, there are things I would go to the product website for, especially when I was using Ubuntu/debian based distros. However, there are other things I simply find far more convenient to just use the repos or app stores. Like why would I waste my time opening up a browser going to a website and downloading a file when I can just open up the app store or package manager front end that connects directly to the repos the applications are already stored in and are fairly up to date. I mean each to their own and not judging anyone, but for me personally, I prefer the app stores. There is actually no software to this day that I use that is neither in an app store nor up to date. Being up to date is also why I go for or recommend distros with the larger install and support bases on desktop (i.e. Ubuntu and now Arch through Garuda). In fact that i would only recommend ubuntu based distros or Garuda to people is why I don't agree with the "Linux is too fragmented" argument. I suspect ubuntu based distros are the lion's share of all Linux installs. In any case, with the repos, being integrated into the OS, I can also keep everything updated in one single

sudo apt-get dist-upgrade

or 

sudo pacman -Syu

or just click upgrade in the app store rather than having to go and download the latest update and installing.


The only times I have to go to a website are for specific drivers and software DaVinci Resolve, 4KVideodownloder, the AMDGPUpro drivers I use for mining on my Ubuntu server or for ROCm compute on my workstation, my DeckLink 4K capture card drivers, and the Epson Perfection V600 scanner drivers. For gaming, I keep it simple and go with AMD and mesa from the repos. I have not personally had any issues, but like Linus, I play single player games mainly or local multiplayer only ever going online for Star Citizen. Mesa and the proprietary nvidia drivers are things all distros should maintain in their repos as a default and I'm not even sure why the AMDGPUpro drivers are not.

 

Anyway, outside of the repos, you also now have distro independent packages such as AppImage, Snap, and Flatpack and there are websites (like flathub, snapcraft, and appimagehub) dedicated for each of these that the product developer can load their applications to and often do. And a few distros have integrated these into their app stores. While I don't care for the whole debate about which is better since I have used all three, I do prefer Appimage because they are self contained so very few if any dependency issues and they remind me almost of the dmg files on MacOS. In fact I feel that AppImages may be the ideal way for game devs to deliver their games to Linux or even as self contained WINE/Proton packages if they don't want to recompile for Linux. Saying that, I don't know enough about what is involved in developing games so won't say I know that will work.

We are talking about gaming on Linux. That is the act of playing video games on the Linux platform.

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, Magmarock said:

We are talking about gaming on Linux. That is the act of playing video games on the Linux platform.

You said Linux is subpar gaming platform because it is hard to develop and you mentioned it is because of bad drivers support or whatever xyz reason while you barely understand what most game devs work with.

 

You seem to think they mess around with low level graphics API like opengl or vulkan or outright tweak around the driver(which shouldn't even be possible if they are propietary) 90% of the time then ran into major xyz issues that only exist on Linux which is not the case. 

 

They use a game engine or high level game framework such as the java LibGDX which abstracted away all the low level vulkan/opengl/directx calls so game devs do not need to worry about them at all. Full blown game engine has feature rich physics engine and graphics engine all built in so devs can only do the minimal require for physics calculation and graphics rendering as well. They can simply focus on writting their games instead of writing all the physics equations for gravity and collisions or renderers for each frame and whatnots. Only hard core devs who write and use their own game engine from scratch will be doing those Linux specific low level works and development. 

 

Game engines like Unity and Unreal that now has Linux support will make writing games for both Linux and windows platform trivial. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

35 minutes ago, wasab said:

You said Linux is subpar gaming platform because it is hard to develop and you mentioned it is because of bad drivers support or whatever xyz reason while you barely understand what most game devs work with

No, I was saying that Linux is a subpar gaming platform because of the community and it's attitude towards closed source software. I even pinned a post that goes into great detail about all the problems. But if Linux a free and free to use OS is so good for gaming it would be a lot more popular. Don't give the MS got in first crap because if that's how it worked that Sega would still be making consoles. Gamers go where the games are dude.

Link to comment
Share on other sites

Link to post
Share on other sites

12 hours ago, Magmarock said:

No, I was saying that Linux is a subpar gaming platform because of the community and it's attitude towards closed source software. I even pinned a post that goes into great detail about all the problems. But if Linux a free and free to use OS is so good for gaming it would be a lot more popular. Don't give the MS got in first crap because if that's how it worked that Sega would still be making consoles. Gamers go where the games are dude.

then it has nothing to do with the operating system. low user count is not excatly the fault of linux kernel per se, because thats what we are really talking about here, linux at its core is just a kernel. desktop enviorment, compiler, display server, and all the other tools that run on top of it and which combined makes a complete consumer operating system are all provided by someone else, it can be GNU which is pretty much FOSS softwares or propeirtary companies like google, or even the goverments. All of these softwares should be disassociated from linux rather than smashing them all together as if it is one single entity and package, they definitely are not. It is the same as unix operating system. they can be completely different operating system(hence family of operating systems rather than just operating system) using different kernels running on different cpus and machine architecture and what tie them together is simply a philopshy and its POSIX programming interface which made software portable if they stick with the POSIX specification. same thing can be said for GNU operating system and their tools chains as well.(https://www.gnu.org/prep/standards/standards.html)

 

Edit

Quote

I even pinned a post that goes into great detail about all the problems.

Now i actually read the pinned post, it still doesnt justify linux is a particular terrible gaming platform. 

For example

Quote

 This is done because of competitive issues (for example Nvidia drivers) or to prevent cheating. That being said, Linux is the greatest OS when it comes to Server use, because most tools when it comes to networking are open source anyway.

what does this have to do with anything? Close source and open source are licensing agreemnets, no more different than you purchasing a copy of a book or music. they list your rights to a particular intelletual propety and in this case, the source code. The only benefits of open source vs close source is that any developers can look at, modify, redistribute the open source code so therotically if it runs like craps or does not run at all on an xyz platform and the original developers do not wish or are unable to port it, others developers may take up the mantle and reponsibility instead of going through the pain of reverse engineering for a particular platfrom/operating system.

 

Quote

It's not like that was an accident or something. Microsoft did not accidentally become number one on PCs for no reason. MS provides a stable API/ABI for Windows, thorough documentation, official Frameworks, SDKs, etc. On top of that, they offer the most incredible backwards compatibility even seen on computing (they have to though, because of Windows being the most used OS in most industries).

so does its chief competitor in this space, oracle. their java SDKs are robust and trusted by big enterprise. It runs on windows, it runs on linux, it runs everywhere. Dotnet is nowhere the most popular framework for desktop application development, web development, or any development in general. why would that be a thing that discourage developers for a given operating system? dotnet 5 and soon to be donet 6 supports linux now so you can pretty much create a dotnet application, including gui application on linux so this point is already moot in 2022. Not like linux devs will adopt anything that is microsoft anyways. people generally use GTK and QT for gui apps while web dev is generally a competition between nodejs, java, and some python related backend frameworks.

 

 

Quote

GNU/Linux on the other hand, ties software compilation to specific kernel and libc versions, a single tiny change in those versions break everything, and needs every app re-compiled. 

when we talked about libc, we mostly mean glibc, which, as you can guess, is provided by GNU, alongside its gcc and g++ complier. again, it is an issue of what linux really is fundementally. You can say GNU sucks, their implementations of the POSIX C standard library sucks and xyz, not really sure why this extrapolates to linux is a bad platfrom overall. Futhermore, these are low level stuffs. there two layers of software development. application and system. application is what the end user actually uses and interacts with, they are the end product. system softwares on the other hand does not do anything on their own. they are there to provide services for the application developers to create actual user applications. dotnet frameworks, compilers, drivers ect are all system level softwares and fall under the domain of system level development. applications like games are all applications level softwares. If things do break at system level, responsibility and fixes generally pass along to the system devs. Things wont work true but it isnt exactly the problem and headaces of like say game developers.

 

Also, these arent excatly everyday occurrence. how often do you see system level tools and drivers provided by big company and organizations break and then force you to recompile or rewrite your code? Linux may not be big for consumer markets but for multibillon dollars companies that run cloud infrastructures, they are BIG. It would silly to run anything on a system whose low level layers breaks time to time. 

 

Quote

Even when it comes to the kernel, Linux was never made with the intention of using closed source drivers. It works best when it gets to work with all required drivers within the kernel. Even closed source drivers are kind of a temporary fix, as loading modules is not recommended! Even Linus Torvalds himself said that closed source binaries are NOT welcome, and whoever chooses to uses them are on their own [trying to find the source for that].******

again, i still have no idea why open source and close source is even a debate. 

 

Quote

Now, as a gaming developer or a software company, would you choose a hostile environment like Linux, or a welcoming one like Windows for your Game releases?

there are many crossplatfrom game engines which ensure crossplatfrom games are easy to create. moot point in 2022. 

 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, Magmarock said:

That is the act of playing video games on the Linux platform.

Android is Linux (it runs on the Linux kernel).  There is a considerable number of people who own an android device and play video games on it (in fact, it's one of the two main contenders in the mobile market; the other one being BSD-based).  Ipso facto, Linux is perfectly fine for gaming. 

 

On the desktop (and for AAA titles), I'd argue that the lack of a standardized environment makes it challenging (though not impossible) to support.  The reason Windows gets so much better support is because, while Windows is kind of crap, they've standardized the crap so everyone has the same mud on their boots.  Linux distributions unfortunately suffer from the fact that users can choose what they want to put on top of the kernel, and that freedom means uncommon combinations are likely.  We are human, so we can never expect a consensus on the best combination of software packages.  If you give people the freedom to do what they want, you'll get that.  You know, if everyone exclusively used Edge for their web browser, everything on the internet would 'just work'.  But is that a world we want to live in?  Instead, we have choices.

 

Of course, if Microsoft were to release their proprietary libraries to the public such that software like WINE could achieve 100% compatibility with Windows programs, would that really cause a mass migration to Linux?  I think not, personally.  I use Linux pretty much exclusively, and when I have to use Windows to test code it's a pain.  It doesn't even come with a decent text editor.  But I feel like the reason I don't like Windows is because I never use it. When you've been using an operating system environment for 15 years, suddenly changing to something completely different is just a pain that you don't want to have to deal with. 

If I have to explain every detail, I won't talk to you.  If you answer a question with what can be found through 10 seconds of googling, you've contributed nothing, as I assure you I've already considered it.

 

What a world we would be living in if I had to post several paragraphs every time I ask a question.

Link to comment
Share on other sites

Link to post
Share on other sites

So, this is only my point of view, and I could be wrong. Disclaimer out of the way, I think one of the biggest issues when it comes to games is software distribution. I am not knocking any specific OS, but multiple repositories is a very big disincentive for game developers. I think if the Linux community, or at least the distro's that want to game all agreed and used a singular repository (i.e. flatpak), this would be more incentive.

 

There is also the increase in game repositories on windows. Off the top of my head there's steam, the ms store, gog, origin, and Uplay. I'm pretty sure I'm missing some. There is some crossover between steam and these, but not all games are present.

 

I also think that if a singular repository was used that Microsoft would start pushing it's services on Linux. I'm not sure if this is good or bad, but I think it's a (while minute) a future possibility. If the Linux community actually rallies behind a single repository, and made access to those apps universal, I think it would be a good thing. If this was do e using GUI, I think it would help Linux grow.

 

Now I know that full repository and GUI is upsetting some people. The thing is, if you want Linux to grow, it needs to be easier to get people in there. RHEL and Windows have their market share from support and it's ease of use.. for the most part. You can't expect average Joe who's not taken a Linux or OS class to dive into the terminal willingly. I have a nephew who loves computers that know didn't squat about Linux and I'm trying to inform him. I think now that there is the Linux subsystem on windows, if some content went on how to use that to try Linux, it would be a great tool to get interested individuals to try it out.

 

The last thing I want to bring up is windows critical mass. At some point in the future, it is not going to be profitable enough for Microsoft to maintain and develop windows. I don't know the market share percentage, buy it's going to hit that point. With everything that Microsoft has been doing lately, I think they are aware of this as well. Making the Linux ecosystem more hospitable I think can shape a positive direction. Because I'm not too sure if Microsoft will eventually push their own cbl version for workstations. 

 

Thanks,

HAGO.

Link to comment
Share on other sites

Link to post
Share on other sites

On 1/13/2022 at 8:00 AM, wasab said:

then it has nothing to do with the operating system. low user count is not excatly the fault of linux kernel per se, because thats what we are really talking about here

I never said it implied that it had anything to do with the kernel. With all do respect it doesn't sound like you've read my post. Or perhaps you don't quite understand it. All I can do is leave this here.

 

On 1/13/2022 at 1:02 PM, Yuri Fury said:

ndroid is Linux (it runs on the Linux kernel).  There is a considerable number of people who own an android device and play video games on it

apostlkpl has already addressed this with this with the following post.

 

On 1/14/2022 at 12:12 AM, Savagebean said:

multiple repositories is a very big disincentive for game developers. I think if the Linux community, or at least the distro's that want to game all agreed and used a singular repository (i.e. flatpak), this would be more incentive.

You're on the right track but having less repos won't exactly fix the problem. Games weather emulated or running natively are going to need some kind of middleware to sand box them and keep them working. That's what Windows does and what Linux tries to do but fails at. Whenever a distro gets updated they just modify the source code of all the the apps in the repo to work on the new kernel. You don't do this with closed source software. You can't make closed source software work for you, you have to make your OS work for it; if that makes any sense.

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, Magmarock said:

I never said it implied that it had anything to do with the kernel. With all do respect it doesn't sound like you've read my post. Or perhaps you don't quite understand it. All I can do is leave this here.

I have already address some points of the post you linked. These seem to be just none issue. Citing licensing(close vs open source), dotnet, and even libc backwards incompatibility is silly.  There are many other aspects of this posts i could debunked but i wont go into it. I doubt you will read or understand it anyways. 

 

Quote

apostlkpl has already addressed this with this with the following post.

That was a response to one of my post and i also replied in response. He seems to be just confused. That adobe app he mentioned was a 32bit application. most linux no longer includes 32 bit library by default nowadays. i actually downloaded that adobe package and installed the missing 32 bit dependency and it runs fine. nothing to do with backward compatiblity. As a shared library, which is what libc is(mostly anyways), you rarely need to recompiled(library is dynamically linked), unless you have other libraries that link to libc that also need to recompiled. However those are majority the jobs of library developers. As an end user, you just upgrade the dependencies and take care of the linker if neccesary, all of these should all be handled by the package manager like apt or dnf though. GNU so far has done a pretty good job maintaining backward compatibility otherwise they would be chew out by every other developers who rely on their products and they would be purge from every major operating in favor of better libc implementations. 

 

Regarding what he said about android, not all android applications are java app that runs in a jvm. If you install a terminal emuator and cd into an android /bin directory, you will see typical unix command line tools like ls, cd, grep, and whatnots. if you do an uname, it will actually show you the linux kernel version. I can show an image of it on my phone.

Spoiler

Screenshot_20220116-022158.thumb.jpg.64046f2281afbdcbfd7112efaec28aee.jpg

 

These are compiled native binary in ARM CPU machine code and have nothing to do with what you see in an android youtube programming tutorial that features java or kotlin in an android studio project for example. I dont called these to be "android app" however because no typical user will ever be using these. These are mostly there for an adb shell but these are besides the points, he mentioned android is not linux and linux is not android. Well, latter is certainly true, the former is really up to how rigorous your definition is. I know for one that Linus Torvald certainly consider chromeos and android to be linux.  

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

@wasab

Ok, apparently I missed a few episodes, but I'm back. I may have mentioned it already but I do NOT know programming (at least not in depth, other than some college classes a few years ago). I have a pretty good understanding of how it works though.

 

- My Adobe binary example was indeed my mistake because: 1) didn't notice it's a "486” package, and 2) forgot that most distros dropped support for 32bit packages lately. This is btw another advantage of Windows, which can run most 32bit applications still.

 

- The licensing thing IS important. You can't carry a closed source binary in your repos and expect it to just work with every update/upgrade. There's literally ZERO packages for which this is true, with the only exception of Nvidia drivers and some Broadcom ones, and even then, it's a very specific version of the drivers. It's never just the latest Nvidia driver.

On the other hand, you can simply get the latest Intel/AMD gpu driver in your distro and expect it to work. So it is indeed a licensing problem. Licensing affects so much more than just the person who can view your code. It can affect compatibility with the rest of your system.

 

For that matter though, I'd say that compatibility problems lay mostly with the GNU part. Linux kernel definitely is not designed to be backwards-friendly, as the NT-kernel is, but it can be made into such with some effort (as shown with Android and ChromeOS).

 

- What is and what is not Linux is a bit complicated. On one hand, it would be absurd to claim that Android/ChromeOS does not use the Linux kernel. On the other hand, claiming that all systems that use the Linux kernel are "Linux distros" leads to quite a few paradoxes.

One, is complete incompatibility between those systems. Both Google's OSs are incapable of running most Linux applications (ChromeOS comes in machines powerful enough to use virtualization to achieve that), and Linux distros are incapable of running Android apps (without emulation. And even then, with bad results). But at the end of the day, you can run ANY linux applications inside a GNU/Linux distro if you compile it from source.

Another, is an ideological incompatibility. When someone considers switching to Linux, the two MAJOR selling points are privacy and control over your system. Both of which are absolutely false in Google's implementation of "Linux".

A third reason, and the most important for me, is that when it comes to Android/ChromeOS, Linux is merely the kernel used, and doesn't affect much. Google could change the kernel on their phones/laptops one day (and replace it with their own Zircon or another brand new project) and users won't even realize. Even worse actually, developers will be slightly affected if at all. They can continue doing the usual with Android Studio.

This one's NOT true for Linux distros (obviously), or even projects like the SteamOS. Change the kernel, and now no games work.

That's why I usually refer to Android/ChromeOS as "Linux-based" operating systems. Of course they use Linux, but they are RADICALLY different than a Linux distro.

 

I'm gonna have to agree with @Magmarock here:

"You can't make closed source software work for you, you have to make your OS work for it"

 

That's not a personal preference of mine. I prefer open source software, mostly for ethical reasons. But that's how the world works. And that's why Windows is so much more popular than Linux. That's why Android has 70% of the global mobile market, while it's brother (desktop Linux) struggles between 1-3%, even though "it's the same" (it's not!).

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, apostlkpl said:

My Adobe binary example was indeed my mistake because: 1) didn't notice it's a "486” package, and 2) forgot that most distros dropped support for 32bit packages lately. This is btw another advantage of Windows, which can run most 32bit applications still.

Most Linux Distro's can still run 32bit Applications. 32bit libraries just don't tend to be shipped out of the box, mostly due to "bloat" reasons, but most still have 32bit repos.

 

2 hours ago, apostlkpl said:

The licensing thing IS important.

Except it isn't. The licensing only conflicts with how something can be shipped. There is nothing forcing any app to be shipped in a specific repository.

 

2 hours ago, apostlkpl said:

You can't carry a closed source binary in your repos and expect it to just work with every update/upgrade.

Why? You are free to ship your own runtime, steam does it. There is also nothing prevent you from using a containerized solution like FlatPak.

 

2 hours ago, apostlkpl said:

There's literally ZERO packages for which this is true, with the only exception of Nvidia drivers and some Broadcom ones, and even then, it's a very specific version of the drivers. It's never just the latest Nvidia driver.

The same is true about Windows, you can't just grab a Windows XP driver and expect it to work on Windows 11. The only difference here is that the Linux kernel is updated more frequently than Windows. This is a problem for third party modules, such as the NVIDIA Driver, but that is also why LTS Kernels exist and why even alot of non-LTS Distro's don't ship the latest and greatest. As to why a Distro only ships a specific version, that's entirely on the Distro, but if your say on Ubuntu, you chose to be on outdated packages and not upstream ones. I don't use NVIDIA, but the latest available version is available in the Arch Repository. With that said, NVIDIA offers a Installer usually for the latest Stable Kernel, now whether that installer is elegant or not is another story and one that is entirely dependent on NVIDIA.

 

2 hours ago, apostlkpl said:

or that matter though, I'd say that compatibility problems lay mostly with the GNU part. Linux kernel definitely is not designed to be backwards-friendly, as the NT-kernel is, but it can be made into such with some effort (as shown with Android and ChromeOS).

Except Android Kernel changes breaks module compatibility quite often, so that statement isn't correct. The Linux Kernel's one requirement is to not break userspace.

 

2 hours ago, apostlkpl said:

A third reason, and the most important for me, is that when it comes to Android/ChromeOS, Linux is merely the kernel used, and doesn't affect much. Google could change the kernel on their phones/laptops one day (and replace it with their own Zircon or another brand new project) and users won't even realize. Even worse actually, developers will be slightly affected if at all. They can continue doing the usual with Android Studio.

That's only true of the replacement Kernel can offer the same compatibility, regardless of the OS or any containerization that is taking place.

 

2 hours ago, apostlkpl said:

I may have mentioned it already but I do NOT know programming (at least not in depth, other than some college classes a few years ago). I have a pretty good understanding of how it works though.

I do and have written Software for both Windows and Linux. I have written software that is tied to specific Distros and Depends on various versioning to take place, and I have written cross platform software that ships with the same Runtime files on Both Windows and Linux making there packages identical. In the second case, your distro is entirely irrelevant, just download it and run it the same as you would on Windows.

 

Edit:

The real problem here isn't the repo, fragmentation, or licensing, but rather how Software is expected to be available to a user. there is actually nothing preventing Linux from adopting a "Program Files" kind of area that people could use Installers similar to Windows, where software could be shipped and just work regardless of Distro and Versioning. The real problem comes down to how the current community expects software to be available and this non-sense obsession with bloat.

 

With that said, Things like FlatPak are set to eventually take over the package space with Distro's like the Fedora Silverblue Project which I think will address some of these problems in the future.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×