Used to be a staff member working on an x86 OS called CTOS. I realized if I implemented a couple of traps, we could run command-line DOS programs. So I did. And it worked. Dev tools, text processing, piped commands all worked.
It helped that the DOS executable format was the same as the CTOS format - because we had traded Bill Gates our linker (which produces executables) for his BASIC compiler.
Thanks for sharing, never heard about it before. What was kernel programming back then? Briefly checked the wikipedia and looks like CTOS was kinda big in the government space back in the 80s.
It was popular with govt because it came with an HDLC network build-in, server/client depended on the OS you booted. This saved you a network administrator.
The kernel was in Intel ASM86 but the rest of the OS was written in PLM86. When I joined it was 2MB of code on a 128K 8086 cpu. By the time I left it was 9MB of code running on an 80386.
If you wanted to get into development mode in CTOS, the keyword was 'developement' - an e between the p and the m. Worked on this system back in early 1990 as a developer.
if you know a particular process or system callmakes errors,then you run code that checks for that error,or exception,or preempively hooks a problematic system call,to redirect to "your"code that handles the state of exception,and returns.
hello! hello! I was mainly admin and COBOL dev with them (I wish I kept the collection of the manuals and PRGs, alas when no space..), bitsavers have a quite collection (incl a virtualbox HDD) if you are interested!
Feels like there is some real momentum on linux gaming now. I mostly play older games but I've gotten most of them working acceptably in proton on my old system 76 laptop (oryp5, with a nvidia 2060; ~7 years old). The laptop actually has plenty of power for the games I play, but I underclock to keep the heat/fan speeds down (been doing the same on the win10 install on the same system), still getting acceptable framerate in proton for most of the things I do in game, non intense stuff.
Decades ago I ported some games to linux but I do think proton is the correct approach now. One underappreciated advantage is you get most of the mod environment too. In ESO for instance, there is an addon (tamriel trade center) which lets you download item prices, but it requires a windows client exe to do that. That client works on proton.
I also do some modding myself and can cross compile my rust code to windows with cargo xwin, and run it right away in proton, which is fairly amusing to behold.
I actually don't mind windows generally (been a MS user since DOS 5), but Win11 is a game changer, pun intended, and not in a good way.
Yeah, I've been playing BG3 on Linux[0] for about 2 years at this point (using a Lutris "recipe" or whatever they call it). Ironically, the biggest issues have been with some of the modding tools needing specific versions of DotNet and whatnot. The game itself runs flawlessly.
[0] Arch Linux, btw, because that must be mentioned.
Actually, I have been having a specific issue with pickpocketing in BG3. On native Windows and native Linux, the client crashes if I pickpocket too quick. One time, on Linux, it even made my whole OS crash (and then some weird error BIOS error). But specifically with Wine on Linux, it does not occur. The only reason I even tried with Wine on Linux is because I wanted to try some mods unavailable otherwise. It does seem the native port has better latency, but latency in a game like this is pretty irrelevant.
I have been using Linux for nearly 30 years now, including running CS (HL1) via Wine with better performance and stability than Windows 9x on a LAN party. Good times.
Sometimes native ports don't get updates, while Windows port does. If you can then run it via Wine, you may have a more stable/less buggy experience.
Note I use both Wine and Proton. BG3 I run with Proton. But Proton is 'just' a fork with (neat) improvements which also partly got backported.
Oh, and I have to mention, I don't use Arch Linux.
I have stopped playing native ports and just prefer Proton when I have the choice. Many devs using Unity & co. just tick the "export to Linux" option and never try the build, which is often much slower or bug ridden.
I was playing Project: Gorgon recently, I was about to refund because it ran terribly on my machine (despite the low end graphics), when I noticed it was using the native build, switched to Proton and got a 200% FPS boost.
As long as I can play on Linux, I don't care what translation layer it goes through.
I'd argue that "native" is much more of a state of mind than a clear delineation anyways.
Among many game developer studios, the Steamdeck is increasingly becoming the defacto low-spec hardware target. Running their game on a Steamdeck becomes a core part of the QA process, because there's a few million Steamdecks out there actively playing games, and if your game runs on a Steamdeck you basically know it'll also run on a very wide range of hardware configs.
So while the game might be targeting a different API than the standard ones exposed on Linux machines, a lot of games now are directly designing their software to make sure they run well on a Linux handheld. Meanwhile, Linux is adopting more and more features to better support this non-standard API set.
At a certain point I think we can just call Proton/WINE a 'native' API for gaming on Linux, and say that games developed with Proton/WINE in mind are native games.
Perhaps we're not at that point yet, but we might be there soon.
And exactly why Apple's push for Mac gaming (which still puts native ports as the ultimate goal and treats things like GPTK, despite having made it, only as "ways for developers to preview how the port would end up" and not intended for general consumer use) is never going to work, no matter how much cash they throw at it.
I'm looking to finally get off Windows for good. My experience with the SteamDeck started me, later I upgraded to a ROG Ally X for beefier performance but found Windows insufferable on a handheld, and installed SteamOS. I was blown away by the performance gains. A few months later I installed Kubuntu for the first time since 2013 or so, Steam shortly after, and while the desktop linux route is definitely more taxing (manually installing things like Mod Organizer 2 instead of Vortex, for instance, and all of that needing to run differently as opposed to Windows where it's all just .exe's) I've been absolutely blown away by the performance gains again. Mind you this machine is no slacker, it's a GE76 Raider from MSI, 3060 under the hood, but games just run smoother in Linux. And the alt-tab experience is untouchable, Fallout: New Vegas hates it and crashes, but everything more modern utterly doesn't care. I can alt-tab in and out, check messages, desktop composing works great no matter what game I'm playing, no more issues in modded games where the game completely locks the machine as Linux just doesn't seem to allow it, it's fantastic.
I have a couple more things to figure, I need XBox authentication to work for Halo Infinite and Sea of Theives, among others, and I need to figure out some solutions for some ancient software I have to run, which will probably end up being a Windows 11 VM. But as for my daily driver OS, I am so excited to get off Windows once and for all.
Re: modding with MO2/vortex I had a similar problem in that installing them on linux isn't super straightforward, and then once I did get them installed when I launched the game through them like I used to do on windows the performance was abysmal. I decided to tackle the problem myself and so I wrote this: https://github.com/mfinelli/modctl. It's a mod manager that I wrote specifically for linux. It's not really ready for primetime yet, but if you're willing to experiment depending on your needs it might work for you. The repo might look like work has slowed down, which I guess is true but that's mostly because I implemented all of the main stuff that I wanted to and now I've just been using it instead of building it for the past few weeks though there are still a few rough edges and a couple of bugs that I need to sort out (but nothing game breaking that I've found yet).
Modding will continue to be a challenge, but doable, thing, until more mod devs get onboarded to Linux themselves. If the mod devs enjoy using Linux, they'll probably start building mods with UIs native to Linux.
I would say custom modding and online multiplayer anti-cheat systems are the last real hold outs, and even then it doesn't affect every game.
There were specific games keeping me on windows, mostly online PVP. At some point I switched anyway and I don't regret it at all. Now when my friends suggest a game and I'm not able to play it, I just do something else or we choose a different game. There are so many great games out there now, and more release every week. Plus, as I've gotten older, it has become more apparent the fun is in socializing, not the game itself.
My point is, you may find the one or two games holding you back won't be missed much.
Regarding mod managers, there is Limo[1] for Linux. I used it for Viva New Vegas[2], but some mods do not seem to work. I don't know if it's due to Limo or if I did something wrong though.
RE: Sea of Thieves on linux w/ xb/microsoft auth. I was able to work around it by just removing 2fa from my microsoft acc. Obviously not a great solution. but yeah. You may be able to reenable it afterwards, I never tried, its the only thing my microsoft account is useful for at this point anyways.
Yes , Win32 / DirectX in common HAL for games now , just compile your game for windows/steam , you can run everywhere , minimize the headache of doing native game development , like breaking with X11 / wayland kde / wayland gnome / wayland mutter .
For the OSes runtime side you can depend on SteamOS / Apple's Game Porting Toolkit / Crossover / Proton / DWProton / Wine / and Android's Winlator/Gamehub/Gamenative .
For DirectX compatibility you can depends on Apple's D3DMetal , DXMT , VKD3D , DXVK and WineD3D .
Thank you for sharing that last paragraph. It's nice to know I'm not the only one out there who feels let down by the trajectory Microsoft has taken.
I've likewise got a lifetime of experience on the Windows / MS stack, decades of custom tooling I've adapted or coded from scratch, etc. It's frustrating to see so many great advancements to core fundamentals like the kernel, tracing tools, I/O performance, etc. get completely overshadowed by such chronically user-hostile and frankly stupid business decisions.
I wish I could have the good bits without all the nasty cruft. I wish they stopped assigning junior devs who haven't even heard of Win32 to work on UI touched by millions of end users. I wish they hired back QA staff and rediscovered proper quality control methodologies like, say, regression testing. I remember a story from back in the day when they bought up one of every software title from the local tech store and had staff each pick one to dogfood on their prerelease OS. That passion to ensuring a good user experience.
I don't look forward to the time it will take to recreate all my infrastructure in Linux (including no doubt several detours tinkering into source codes to fix little issues and upstream little enhancements). But I fear Microsoft as a whole will never get their heads screwed on straight in time for me to avoid having to do so.
I would pay good money for something like ReactOS, Wine, or whatever, to offer the equivalent for business applications as Proton is for games. I applaud all the hard work done by people on those projects. I expect one day when kids have never heard of the word Microsoft, the code those heros wrote will still be in use by some grateful beneficiaries.
Anyway, that's the end of my rant. And in the meantime, just in case you haven't tried it yet... Windows 11 IoT Enterprise LTSC is the least offensive flavor I've found, and works as a daily driver.
I think Linux needs a few things before it will be ready for mass consumer adoption.
1. An equivalent of kernel level anti-cheats. Cheating really sucks. It ruins online games. Kernel level anti-cheats aren't perfect, but they're much better than user-space or server-side anti-cheats. Maybe in the future AI solves this, but inherence-based anti-cheats are likely going to be a cat-and-mouse game. Valve have stated they are working on this problem and I think if anyone is going to solve it, it's them.
2. Immutability. Right now distributing games on Linux isn't distributing games "on Linux." It's distributing games to 12 different distros with a hundreds different configurations and a thousand customisations. This is impossible to support. When SteamOS gains traction, developers will be able to target exactly one distro with fixed configurations and limited customisations. Valve will set the standard for other distros.
3. An enforced equivalent of .exe. One of the most wonderful parts of Windows is the near universal acceptance and use of the executable installation method. You just double click the file and install it. Linux is an absolute clusterfuck of installation manuals and scripts and competing app stores with their own repos and permissions and packaging methods. If Valve were to mandate the use of, for example, flatpaks in SteamOS, that will become the universal standard. I think this is one of the most frustrating parts of using Linux for regular people.
4. Better hardware support. My Fanatec peripherals don't work well in Linux. Fanatec doesn't offer drivers and open source options are limited in functionality (and stability). There are many products for which drivers support sucks in Linux. I think AI will solve many of these issues over the next few years. Unless the manufacturer has gone out of their way to encrypt of obfuscate the communication layer with the product, you can basically point Codex at the peripheral and tell it to build an interface driver. Within a few years, I imagine operating systems will have this kind of functionality built in. If the OS encounters a peripheral it doesn't recognise, it will just build its own driver on the fly.
I am more optimistic about all of these than ever before. Linus Torvalds famously said it will take Valve to fix this fragmentation problem for us, and that looks like where we are heading. No doubt there will be Linux fans who lament the loss of diversity and competition, but I think we end up with a true competition to Windows for gaming. That's when I will make the jump.
> 2. Immutability. Right now distributing games on Linux isn't distributing games "on Linux." It's distributing games to 12 different distros with a hundreds different configurations and a thousand customisations. This is impossible to support. When SteamOS gains traction, developers will be able to target exactly one distro with fixed configurations and limited customisations. Valve will set the standard for other distros.
Steam has already solved that problem. You target steam (not steamOS) and all other distros will do the work for you.
Ultimately, you can’t trust the user computer unless you go for the secure boot things backed by a hardware key. I’m sure there are multiple ways to bypass anti-cheats on Windows.
> 2. Immutability[…] It's distributing games to 12 different distros with a hundreds different configurations and a thousand customisations
Does it really matter? You can always ship a statically compiled games. There’s only one kernel that is greatly back compatible.
> 3. An enforced equivalent of .exe.
I think ELF is the official standard for executable binary. The competition is illusory. There’s nothing preventing anyone from distributing a self extracting archive that installs on /opt. Packaging on Linux is about your system consistency, not software availability.
> 4. Better hardware support
That’s not a linux issue. If the manufacturer is not keen on getting it in the kernel or making it open source, they can always create a binary blob and distribute some shim that loads it.
the minute linux solves kernel level anti-cheat is the minute it wins the OS war, tons of friends have only windows on their PCs because of valorant or other multiplayer online game that uses anticheat.
Given the current momentum, it feels like (to me) the adage of “Windows is for Games” is going by the wayside.
If you look at Steam, and OSs like Bazzite it’s clear the consumer-side is finally shoring up. But that aside, from an economic incentive, game providers (for example Amazon Luna), don’t want to be paying the licenses for running Windows machines for Video Game Streaming on Demand. In fact, at my time there one of the major thing I worked on was figuring out how to stream the games using Linux + Proton + Vulkan so we could use the AMD machines.
Honestly the biggest hurdle was (and probably still is) Anti-Cheat and BattlEye.
At any rate, I’m personally happy to see this trend as I haven’t had a Windows OS since Windows 7.
>Given the current momentum, it feels like (to me) the adage of “Windows is for Games” is going by the wayside.
I think that games have been a strategic priority for Windows for a very long time. Going all the way back to DOS/4GW on Windows 95. But the impression I get from Microsoft is that they kind of don't want the hassle of maintaining a desktop OS anymore, and they would be happier if everyone went elsewhere.
I'm not sure. They put a ton of effort into things like DirectX, were outright anticompetitive against OpenGL, and there was an atypically high degree of competence and vision throughout. It probably wasn't about the games but about tying people to Windows. People didn't make games for Linux because there were no gamers on Linux. There were no gamers on Linux because people didn't make games for Linux.
On top of this, gaming used to be (and probably still is) the main reason to cycle through PCs. If you're just going to browse the web, use relatively low resource software, etc then a PC or even laptop from a decade+ ago is 100% fine. The reason consumers upgrade is going to be heavily weighted by games. And each of those upgrades often comes with new OEM software that was licensed and other economic benefits to Microsoft.
---
As for modern Microsoft, I agree with you from an outsider's perspective, but I'd bet internally it's a different game. Microsoft seems to be having major issues with labor competency, on both the implementation and management side, and it's making their entire ecosystem collapse. Anything that has major outward visibility (like desktop OS) is going to make the circus most immediately visible. I have little doubt they have the same stuff going on internally with their other offerings.
I think that's the key explanation. Gamers are no longer a mass market user group for microsoft - they target all the casual computer users. Gamers actually want full control of their computer, pay attention to details and care about performance: that's a niche user base, and it's clear why their interests overlap with the linux community: user needs trump everything.
The last few years it has felt like that, Microsoft is more than happy to sell to everyone while also having Windows.
I mean Windows is still a huge cash cow for them and is THE desktop OS but the actions they are taking with it sort of makes it feel like a second class citizen.
The progress is vast, but at the same time, it feels overstated.
Linux still is not a great daily driver for video games in many circumstances, unless you're on a specialized device like the steam deck that gets extra attention to smooth out the rough bits.
On my gaming PC I haven't found a single game that runs noticeably faster in Linux. Most run considerably worse often while suffering various glitches (sometimes game-breaking).
Sometimes, with work (different versions of proton, startup options, configs, or even new kernels or compositors, etc) you can get around those problems, but... it takes work. Work that you just don't have to do on Windows.
> Most run considerably worse often while suffering various glitches (sometimes game-breaking).
That's an interesting experience, I'd be interested to hear more. There certainly are games that do not work well, no question, but as far as I'm aware it's a pretty small minority. To my knowledge, the two biggest issues are anti-cheat and video codecs, both of which are business/legal problems, not technical issues. Are those the main problems you're seeing? If not, are you possibly running fairly niche games, or on a niche distro or specialized hardware setup?
Linux is still too bloody awful for power users, never mind the median gamer.
Most Linux usage is SteamOS which only barely counts.
It’s a great hedge that keeps Windows almost honest. But we’re a long long long long long <breathe> long long long ways from the median gaming PC being Linux.
Linux is for power users. Windows 10 with Powertoys and WSL for stuff like yt-dlp is a fine stopgap, but you can get the same workflow on Linux with a leaner system.
I never installed Windows 11 on any of my PCs, there's no place for it in my work or gaming regimen. If Linux is supposed to keep Windows honest, then some dev at Microsoft must have a Pinocchio nose.
What do you consider a power user? Because I'd consider an OS that refuses to let you do what you want, and constantly reverts your customisation, the opposite of power user friendly.
We're a long way not because Linux cannot do it. We're a long way because publishers refuse to take it serious.
Online multiplayer games keep trying to allow linux users in and keep having to lock them out because there's an instant influx of cheaters.
The Nintendo Switch (which runs Linux) was a favorite of cheaters after jailbreaks came out.
When anyone can compile and run their own kernel with god knows what for modifications, that makes it substantially easier for cheaters and substantially harder for anti-cheat. I don't see that ever changing.
You can't rely on server-side detection either, because some of the cheats are so advanced they go to great lengths to "behave" like a highly skilled human player would with their aiming
The status quo's days are numbered. Online chess shows how.
An AI will play these games like a human but better. The AI can be totally separate from the windows box wearing anti-cheat ankle bracelets just as your brain a separate thing to the windows box when when you play. It can interact with the box via keyboard, mouse or controller.
No windows kernel module is useful in detecting and deterring chess cheating no matter how fanciful or factual the vibrating "device" stories are.
Anti-cheat by kernel module, it's day will be entirely done very soon if it isn't already.
"Any time you beat a computer at a game it let you win." Are we there yet? If not, how long?
>The Nintendo Switch (which runs Linux) was a favorite of cheaters after jailbreaks came out.
If you're saying the Nintendo Switch system software is Linux-based, I don't think that's correct. It's a proprietary system based on a microkernel architecture.
Nintendo Switch does not run Linux, it runs a proprietary OS called Horizon based on the Nintendo 3DS firmware. Not sure but it might or might not have some BSD code in the network stack or something.
> You can't rely on server-side detection either, because some of the cheats are so advanced they go to great lengths to "behave" like a highly skilled human player would with their aiming
Shouldn't that be the goal of anti cheat? That cheating is indistinguishable from expert gameplay? Seems to me like these companies are just trying to avoid implementing proper infallible server-authoritative gameplay by offloading the cheat detection to the untrustworthy client, and then trying to lock down the client to make it trustworthy.
I feel that the solution is just to have a decent ranking/level system so that users play with other people, cheaters, bots or regular users of the same level. When I was playing mario kart with my 5y old daughter, I didn't mind she had access to helps to not run out of the road as it allowed us to play together. I don't see how different it is between say, a super skilled player, and a lower skilled player with cheat/assists. If cheating/assists system becomes so efficient, cheaters will just end up playing together and non cheater will have got rid of them and play between non cheater of similar level. Prolem solved. No?
And yet there's plenty of competitive multiplayer shooters that work fine on Linux. Rivals, The Finals, deadlock, CS2, Overwatch, Hunt Showdown, etc.
EA did a big announcement about switching to kernel level Anti-Cheat for Battlefield 6 to combat cheating, yet there's still plenty of cheaters around. It's looking more and more like an excuse in order to give the appearance of combating cheating.
You should not consider Tim Sweeney's comments on the matter as a reliable source. He was veiling his true motivations behind that statement. The Switch does not run Linux either, it's a custom OS descending from the Wii's iOS.
The cheating issue isn't really a matter of being able to run custom kernel code. You can do the same thing on Windows, which is why remote attestation is a thing for some games. As someone who has developed games for Linux (and Windows / Mac), it's an endless cat and mouse game. So long as the system can execute code that is not yours, you never really are getting perfect anticheat. Ease of loading custom kernel code isn't really a hurdle to that.
I find that client and server based in combination is the robust approach. I once implemented anti-cheat in which the server lied about game state, which a regular client without cheats would act predictably on. Deviation from that behavior is a useful heuristic to build a suspicion score.
Finding a way to get the multiplayer studios to get Linux support for their competitive games like Valve does could crack a wedge in the market for mainstream users to get in, particularly in those who don't want to pay the Windows tax (not everyone is willing to experiment or go unlicensed).
I can't prove it, but the Steam Deck has probably torn down a lot of barriers for mainstream use among the crowd that care about the game more than the OS. Getting some of the other games (League, Vanguard, Warzone, BF6, etc.) or whatever is popular in those segments onboard might be the critical mass that justifies fixing all the rough edges that get fixed when a big pile of users are represented.
Anecdotally, it took less time for me to install Devuan (not even one of the “easier” distros) and steam and start downloading games on a new machine than it took me to figure out how to decrapify vanilla win 11 after first boot.
If you want statistics, Linux’s gaming market share is 2x that of MacOS.
The barriers to gaming on Linux have never been lower. They’re certainly much lower than the barriers to running windows games on windows were back in the Win 95 - XP SP2 days (when I jumped ship).
Yeah, anti-cheat support is probably the biggest barrier right now. The Steam Deck already showed that many gamers do not really care about the OS as long as their favorite games work smoothly.
I can’t see it happening until valve adds some kind of trusted compute environment. I’m imagining online games could have a flag which enforces secure boot, boot chain attestation, and disables multi tasking features. So while you are playing the game it becomes a single task device, but after you quit it’s fully unlocked again to do whatever you want.
Valve doesn’t do kernel level anti cheat on Windows either. Those are the actual roadblocks.
Userland anti cheats can work (and do) on Linux if the developers want to. Most of the third party ones the developer buys/licenses already do.
But reality is that only the kernel level ones seem to work to some extent. Difference in the amount cheating between counter strike and valorant is just massive (both free to play games)
It is the absolute best for backwards compatibility: it runs 16 bit apps.
Now it is getting faster for gaming.
And the reverse relation is also true: In Linux, the best backwards compatible stable API is WinAPI.
I can play 30 year old Windows games in Linux. They just work and run better than ever.
For the same project (https://www.descent2.de), I can not even install the dependencies to compile it in a modern distro, as every library is deprecated and removed from the repositories. The precompiled native Linux binaries also can't work.
People say this a lot about Linux and it somewhat rubs me the wrong way - sure, the Windows binary works if you install its library dependencies (wine). Likewise (OK, ever since libc5/glibc2 changeover in 2001) the Linux binary should work if you have its library dependencies (SDLv1 it looks like?). So what's really the problem? Your distribution stopped distributing the dependencies, making them harder to find? "DLL Hell" was a thing too.
I didn't see any binary downloads for Linux on that website, only source code.
I gave it a try anyway, the dependencies were actually not a problem for me, Debian has libsdl-{net,image}1.2-dev, libglew-dev, and so on, and if your distro does not have SDLv1 there is libsdl1.2-compat. But after the dependencies, there was a problem with the source code doing something involving bitfield packing that does not compile on x86_64.
I do see the source code has lived on, i can `apt install d2x-rebirth` on Debian 13 which has a comment about https://www.dxx-rebirth.com/ ...is that helpful?
> the Windows binary works if you install its library dependencies (wine).
Yes but all it takes is an `apt-get install wine` or `zypper install wine` or `pacman -S wine` or your distro equivalent and if you are using a Linux distro with any sort of desktop functionality, 99% of the time wine will be there.
> Your distribution stopped distributing the dependencies, making them harder to find?
Yes, this is a big problem because these dependencies not only are harder to find but even if you track all of them (there is a chance they too have their own dependencies) you still need to figure out how to build and install them. And if they are old enough for distros to drop them, then chances are building them isn't going to be a straightforward `./configure && make && make install` ("straightforward" is very relative here :-P). And woe is you if there are conflicts with newer (yet API/ABI incompatible) versions of these libraries and/or their dependencies.
Of course since you have the source, technically you can make things work, but that doesn't make the process any less of a major PITA.
After a few fixes, it builds on a debian-13. You just need to install a few dependencies (glew, SDL, curl).
The real problem here is the tooling. New versions of automake and C++ compilers are stricter than they used to be.
Indeed, for long term conservation, you need to vendor your dependencies AND your tools to make sure that the project is sustainable without intervention. But with the magic of LLMs now, this is not a problem anymore. Claude was able to fix it in less than 10 minutes.
And having the source code beats playing the original game. You can recompile in high def and make all the modifications you want to make it feel like a modern game (or not!) and sill get you your dose of nostalgia.
I have been arguing for years that Win32 is the most stable Linux ABI. Commercial games are all proprietary software, so they're more prone to breakage as the libraries and APIs they depend on change or even disappear over time.
Show me the numbers. Show me an identical gaming PC running Windows 11 and then Linux, and show not just FPS - but things like frametime pacing, latency, etc.
This NTSync stuff is very impressive, but I haven't seen a lot of end-to-end numbers versus Windows. The last comparisons I saw showed pretty much every distribution on the order of 5-30% behind Windows, varying on the game. And Nvidia GPU support was still not great.
I WANT to swap. Please give me cause to do so. I'm sitting here with my finger on the button waiting for it to finally get good enough to make sense.
Your initial baseline was arbitrary. If the game had been 10% slower on Windows, would you have never enjoyed it? If not, how could switching with a 10% penalty be a deal-breaking downside?
Just do it. Swap and let go of objectivity. Let your subjective experience guide you.
For me, the subjective joy of not having to fuck around with Microsoft's bullshit was worth multiples of having to mess around with technical crap to get a game working (spoiler: I nearly never have to do that because I play single player games, Dota and CS). I couldn't give less of a damn if my FPS in some random title is 10% slower than it would be in Windows. So long as it's playable, I benefit in spades from the trade-off.
> spoiler: I nearly never have to do that because I play single player games, Dota and CS
I think most of the people who really care about game performance aren't people playing games like you do. They are either playing AAA games where the graphics quality is paramount, or competitive games where performance is useful for being competitive.
If you want to swap, then just do it right now? As far as gaming is concerned Linux just works, and reaches speeds that are more than good enough to do so, even if they're not exactly the same as windows - the steam deck is pretty much proof of this.
If Linux was measurably 5% slower on all benchmarks, would that mean you wouldn't do it even if you wanted to? Is every single nanosecond of performance really that important to you? I switched 10 years ago when things were a lot rougher than this, and in the end everything still worked well enough that I never cared to swap back.
5% would already be well within the margin of difference for separate identical clean installations of windows on the same hardware.
But the issue is that it is many multiples of that, especially on the most common PC gaming hardware (Nvidia GPUs), often more than a 25% difference in framerates. Not so important at 144fps, but very important at a 60fps baseline and for genres like fighting games.
A lot of people don't mind, say, an extra 5 frames of input delay. They don't notice it. But a lot of people do notice even an extra 2 or 3.
I do think that frame pacing issues kinda do have a critical thin threshold where it's either bearable or an unacceptable difference. And the native windows version can often already be riding right on that line. So while it's not fair to the Linux version to demand better, it is unfortunately the case that it might tip over that line.
I gave it a try. Got a steam deck, tries steam os on my desktop.
I kept running into issues that took me time to solve. I understand that the only reason it took me time to solve these issues is because I'm new to it and that people who have been gaming on Linux for years already know how to solve them all. But what would happen was is I would sit down to play a game spend maybe an hour or two fixing issues and then after that I ran out of time to play the game. I kept this up for a couple months but honestly at some point I just gave up. Now I'm playing games on Windows again.
To be clear, I'm a huge proponent of Linux gaming. I just unfortunately am too busy these days to spend the time to get it to work.
I have both a Windows gaming machine and a Steam Deck, so I am already using Linux for gaming... when I can.
Some of my favorite games that I play don't work on it, though, so I need to keep my PC. My issues are not performance, but inability to play at all.
For me personally, the biggest game that keeps me from only using Linux for gaming is EA FC (used to be called FIFA, it is the soccer game). It requires Windows to play online. The same for PUBG, which is another game I play with friends.
As long as I can't play those games, I have to keep my windows gaming PC.
I personally don't mind that much, honestly. It would be nice to play on Linux for everything, but I can dual boot when I am not gaming if I want to.
Absolutely not. It works, it doesn't "just work". Tuning is absolutely required for a lot of games to get them working. Random crashes, "oh multiplayer doesn't work? singleplayer does?", random glitches, random performance issues, etc.
I still prefer dealing with some issues over dealing with Windows, but it doesn't "just work".
I think the actual answer you are looking for is this paragraph:
> These old workarounds got subtle edge cases wrong in ways that produced occasional hitches, deadlocks, or weird behavior in specific games, which are bugs that don't show up on benchmark charts but can absolutely ruin individual experiences. NTSYNC fixes those at the source by matching Windows behavior exactly, and that means as soon as your favorite distro moves to the new kernel version, whether it be Bazzite, CachyOS, Fedora, or a flavor of Ubuntu, they all get this much-needed fix.
That's the crux of the article. NTSYNC isn't faster, it's more "correct". Most games are around the same level of performance, with certain outliers both ways. Right now there isn't anything performance wise that Linux has to do that would impact all games. Just tweaks and additions to the different layers [1][2][3] in the same way driver vendors do. Much of the poor performance is for API violations and other shenanigans.
It depends on what you're using now, though. If you're just using a vanilla wine/proton install, then NTSYNC should indeed be a lot faster as well. If you're using fsync or... I forget the name of the other one... then you many not see much in the way of perf improvements.
If memory serves, Linux typically outperforms Windows with AMD and Intel graphics. Some of the gotchas are things like running games through Proton or anti-cheat/DRM stuff not getting the same attention that Windows does, but the raw performance is there. I wouldn't recommend using Nvidia on Linux though.
I run NVIDIA on my Bazzite box and I get excellent performance. I had to fiddle with a few things though that probably work out of the box on AMD (example: screen tearing in Steam Big Picture mode. Fix: enabling developer mode in Steam and setting "Force Composite" to true).
It typically will only outperform Windows *if* you are running lower-end hardware. The main thing here is that when running on Linux, your game is typically in less contention with the OS for getting access to CPU cores and RAM.
If you have a beefy CPU and plentiful RAM, then typically one should expect Linux to be slightly behind Windows performance (though there are exceptions), because then Windows' bloat becomes a non-issue, and the impact of the translation layers start to become more significant.
> I wouldn't recommend using Nvidia on Linux though.
This was true 4 years ago, but is outdated knowledge now. Nvidia used to disallow distributing drivers with distro images, but they have since made agreements with some popular distros. If the distro image you download includes drivers or you know how to install them, the proprietary drivers work really well.
Windows and Linux trade punches in terms of overall experience. What I've seen around is that if Linux has worse FPS, it tends to have more consistent pacing (it generally has better pacing - but not always, I had to abandon Once Human).
Gamer's Nexus has a pretty extensive benchmark video: https://youtu.be/ovOx4_8ajZ8?si=Cx5Q1a-lMMm14H4i . They refuse to compare to Windows, and it kinda makes sense: if it's satisfactory on Linux for your demands then who cares what Windows can do?
Here's a less professional, but direct comparison https://youtu.be/Giois6VtLPM?si=XFaVUMbea3u0AmP. An extremely important thing to note: AMD GPU. I personally have no idea what NVIDIA is like, but it sounds like their drivers are still all over the place.
And kernel-level anti-cheat doesn't work, though some (e.g. EAC) run in user mode if the developer allows it. Make sure to check ProtonDB for the games you care about. I have personally never had a good experience with Linux builds of games, so I just always use Proton now - but maybe I'm cursed because others have passionately disagreed with my experience. Either way, if a Linux game is broken/bad, try forcing it into Proton.
I don't want to say, "switch now" because it still has rough edges in terms of gaming. Better for you to have a great experience and stick around, than hate it and leave for good. Only you can figure out if it needs more time to cook based on some very light (ProtonDB) research.
I last used a Windows machine about a year ago, and I can say with confidence that the average desktop experience is significantly superior to the barrage of bullshit that Windows puts you through.
Depending on storage constraints, you could always dualboot. That would give you the exact same hardware to compare, and it's not a full commitment.
Anecdotally, I find that getting Linux on somewhat older or underpowered hardware is always a massive positive. Better performance as well as battery life. I'm not as familiar with modern hardware's relationship to either OS ("OS vs. some flavor of OS based on a similar or same kernel" - I know) with modern hardware. Worth a shot though!
Every supercomputer seems to do quite well with Linux kernels. Probably good enough for Crysis :)
Unless you're playing CS competitively and really need 720fps for your 360Hz monitor, is 5-30% fewer frames (all else equal) really a deal breaker? Is this hardware thats barly good enough or something else?
I ask because I feel like I can frequently play games at, say, 150fps, and losing 30% would mean almost nothing to me to switch to Linux. I worry more about general capatibility and anticheat.
Then swap! Partition and dual-boot into Bazzite. Or get an extra SSD and flash Bazzite there.
It's an easy weekend side project, and any numbers people give you will be ballparks anyway - the performance of Linux drivers for YOUR specific GPU running YOUR specific Steam games are all that actually matter.
Just take the two hours to do it. You won't regret it.
I've running the game Black Myth: Wukong on my dual boot PC systems. The OS are openSUSE Tumbleweed and Windows 10, hardware is AMD RX7800XT and intel i7. Turned out Linux is 10% faster than Windows, and more stable fps.
A lot of the revolution is just getting within 5-30% of Windows!
If you need every last bit of FPS maybe it is lagging, but 5-30% slower is roughly on par at a large sense, it's less than the difference of e.g. one NVidia GPU generation to the next, so it makes it playable.
One problem is that having better FPS stops mattering if the frame pacing and timing is bad, making the game feel like a juddery mess. Or if there is significant input delay differences.
That's why all the data matters for all of these dimensions; game performance is much more than FPS per watt over time.
When people see "linux gaming is great now, look at the fps" it comes across as potentially disengenuous because of all the other factors that matter and should be tested. Or rather, if a reviewer is talking entirely about framerate, then I just can't trust their opinion and expertise when it comes to the state of Linux gaming.
Its never going to happen. Because console players by far dominate the gaming scene. Microsoft is going to push Xbox first, which will drive all development of the games, which is going to be windows focused. As such, all major release studios are going to target that.
Until we get something like CoD titles being Steam Console first, linux is allways going to lag behind.
That being said, I think we are on a precipice of AI being able to simply just rewrite games from concepts. Start with generic source code for an FPS or 3PS, then people can contribute changes in english language to tailor the game. So it won't be even copying source code, it would be copying concepts and then making a new game with it. There have been a lot of games that have very rudimentary graphics that people played in large numbers because the complexity and gameplay was quite good.
Most major platforms already have enough asset flips cluttering their storefronts[1][2] -- generic games made from preexisting engine templates with some assets bought from the store. Using AI will just make producing the slop easier, it wouldn't make something that's worth playing.
Anyone actually looking to make something genuinely fun will probably go the old fashioned way of spending countless hours honing their craft, which in turn gives them a good eye to make sure what they're making doesn't have the shovelware stink.
they installed Linux on a PS5 and somehow the Windows games running through proton get same or sometimes a little bit more fps then the native ps5 game, its crazy
I have not seen the numbers, but even a game running 10% faster does not replace the fact that many games wont even start in Linux (League of Legends for example).
Just produce your own numbers. Install whatever flavour of Linux you like (all distrohopping leads to Debian) on a separate partition and benchmark it yourself. It isn't complicated.
In the case of my machine, I haven't observed any difference. And by observe I mean with my eyes, I haven't bothered with actual benchmarks because it seems to work about the same, which is good enough for me. I haven't booted my Windows partition in months, and I'm probably just going to blow it away next time I need storage space.
Getting reliable, consistent, meaningful performance numbers is in fact, extremely complicated:
* You need a consistent way to reproduce the exact same outputs - accounting for things like the game's RNG. You can't just walk around and snap the FPS counter in the corner of the screen and call that good.
* For Windows (and occasionally Linux) you need to ensure nothing is running that will taint the results (updates, AV scans, etc)
* Sometimes individual driver versions work very poorly with a specific game. Just because it ran badly doesn't mean you got good data, it may just be a bug in that specific driver version
* You can't just run the benchmark once. You need to run it many times, establishing run-to-run variance
* There are often a good dozen-to-hundred individual OS settings which can impact performance, and in some cases run-to-run variance. You need to know which to tweak, and which to leave alone.
* Sometimes the result of individual in-game settings differs between driver versions. Just because setting X had a big impact once, doesn't mean it always did
* FPS is not a great metric - it's an average. You need to check and see if there are huge frametime spikes. If there are, the game will have a 'good' FPS but feel horrible to play due to stuttering.
* You need to decide if you're benchmarking more GPU-heavy or CPU-heavy - those types of benchmarks require drastically different settings. If you run a CPU-like benchmark you may see a wildly different gap in framerate compared to a GPU-heavy one for the same game.
Benchmarking properly means accounting for thousands of tiny variables. Only a handful actually do it right.
I don't even know that FPS helps in that game, to be honest.
In my experience, CS2 plays better at 150ms ping than 19ms ping. It's not even K/D ratio bias as the far away server has better players than the matches.
19ms and everyone else is just janky-warping around. 150ms and maybe there is a rollback where yeah that whole thing 5s ago didn't happen but otherwise it is very smooth.
> Show me the numbers. Show me an identical gaming PC running Windows 11 and then Linux, and show not just FPS - but things like frametime pacing, latency, etc.
No.
> I WANT to swap. Please give me cause to do so.
If you won't put the work in, why should we help you? Just stay on Windows, and we'll enjoy our Linux gaming rigs.
I support linux gaming btw but I can't help but feel every narrative glosses over that certain games are going to require uncomfortably intrusive anti-cheating systems.
I'm just realizing that I can't play Battlefield 6 and I do wonder what the path is. I don't think it's ever going to be supported on Linux or Mac.
Unfortunately, the alternative to uncomfortably intrusive anti-cheat is more cheaters, because cheaters don't care about how intrusive their cheats have to be in order to evade anti-cheat. They will happily run hypervisor-level cheats.
There's certainly room for improvement on the netcode sometimes (Client-side hit registration is an absolute bone-headed design), but those won't prevent aim bots.
Server-side anti-cheat relies on heuristics and can easily be evaded. At the high level, a highly-skilled player may be indistinguishable from a cheater, so you could easily get false positives.
I get that people want to play games with randos and 13-30 yr old basement dwellers on the internet, but the idea never appealed to me.
If the vendors said: Disable anticheat and we’ll block you from tournaments / matchmaking, I’d consider that a feature, not a bug.
If some IRL friend of mine wants to be an asshole and use auto aimers / see through walls to screw with me, then I have ways to deal with it outside the game.
On the other hand, if we both want to run some bullet hell mode + cheats with physics mods and a debugger attached, then what’s the problem?
It’s none of the game developer’s business.
I’m not sure if I am in the minority or majority, but I’m not the only one with this attitude. I suspect the set of people in this boat dwarfs the 5% market share Linux currently has.
They might even get some of us to buy their games if they added support for such a mode. How hard could it be?
I don't think that's necessarily true, I think companies are lazy and highly invasive anticheat is an easy win they can license from a 3rd party. Algorithmic security, server-side heuristics, and human review can get you far. I have very, very rarely seen a blatant cheater in Overwatch (maybe 3 times in 10 years?), for example, and yet it's been playable via WINE for almost its entire lifetime.
Hypervisor anti-cheat is old hat. The current 'state of the art' is either a DMA card that pretends to be a sound or network card but really is constantly reading and writing directly to RAM in the game's memory space.
The other 'state of the art' which is much cheaper, easier, and essentially impossible to detect on a hardware/equipment level, are the AI-based systems that examine the video and generate inputs via USB, emulating controllers or keyboards and mice. It's a huge problem on console right now and can only be detected via server-side analysis.
What is even more insane is I was playing Battlefield 1 on Linux for years, until in 2023(?) they backported "EA Anticheat" to BF1, half a decade after the game stopped getting support.
This broke what was otherwise a perfectly normal Battlefield experience. Battlefield 4 requires Punkbuster, although it can run on Linux with no issues. You have to downgrade to an older version though, since EA hasn't updated BF4 to the latest PB AC, which causes you to get kicked.
Battlefield 4 plays great on Linux, with active servers and functional crossplay/anticheat. It's usually less than $5 on sale and satiates my transient BF urges.
I developed for windows before moving to linux. I was surprised to find that was no system call similar to windows WaitForMultipleObjects. Sure you can implement something similar using poll() or using condition variables. but WaitForMultipleObjects seems so much simpler and more versatile
The article mentions this: "A few years back, Linux added a way for software to wait on several events at once, which is something Windows had built in for decades, but Linux didn't."
A lot of that flexibility is what makes it hard to efficiently emulate (especially without kernel level support), but some of it seems too flexible to make sense as the default choice. How often does a video game really need a lock that can be shared between processes, and why should that lock type be the one that a game engine uses for almost all of its locks?
> How often does a video game really need a lock that can be shared between processes,
What do you mean? SRWLock (or the older CRITICAL_SECTION) cannot be shared between processes. A (Win32) Mutex does work across processes, but that's its entire purpose. So Windows does have different tools for different jobs.
In fact, it's really the other way round: on Linux, a futex also works across processes, but there is no equivalent in Windows. (Sadly, WaitOnAddress can only be used in a single process.)
How often does a video game really need a lock that can be shared between processes,
That seems hugely useful for interprocess communication and I can immediately think of reasons to use IPC in a game. Having a separate voice process for one.
The last time I asked the same question here, user dwattttt finally pointed out[1][2] to me that there is a significant difference: wfmo can actually acquire semaphores in addition to waiting for them, which poll can't do in a non-racy way and efficient way. It can also do rendezvous synchronization (i.e. signal-and-wait).
There's been real progress. Wine's memory allocator had an architecture with three nested locks. "Realloc" held a futex lock on the memory allocator while recopying the buffer. Multiple threads doing allocation could go into futex congestion, with many threads looping on the futex. This made Vec::push in Rust insanely inefficient. Some of my programs dropped from 60FPS to about 0.5 FPS.
Fixed in Wine 11.0. Thanks to the Wine team.
Not sure if this was related to NTSYNC, but Wine's locking infrastructure definitely got an overhaul.
I use Bazzite for all my gaming (Returnal at the minute) and it works unbelievably well. I don’t tinker with any of the proton version. I just press play.
I recently completed Stellar Blade with zero issues.
I don’t even shutdown the machine, I just hit the power to sleep it. Instantly resumes where I left off.
im using bazzite with an amd cpu and amd gpu and sleep doesn't work properly? what motherboard/cpu/gpu do you have? did you have to do something special to make it work?
I predict that ntsync will eventually evolve into full blown ntoskrnl.ko and there would be virtually no overhead on calling Windows API. You can almost call it a Linux Subsystem for Windows.
I wonder what spanners Windows can throw into the works to slow them down at this point, or if they're so checked out of the Desktop market as they suckle down hard on that Azure teat, that they're more than happy to let Linux eat their lunch
You are not gonna get promoted slowing down Linux gaming at MS today, the thing they want is Netflix of gaming where the platform doesn’t matter but everyone’s paying them $20 a month
That ship sailed when they let Xbox rot over the last 6 years. The platform feels pretty dead since about 2020 or 2019 and they didn't take advantage of making a cheap android based or Windows 10X based streaming stick with a controller to lock people into the cloud and leverage phones. Controller and keyboard support is still a hot mess on Cloud Pass.
I think this, as a business model, really relies on them also selling the licenses to the OS that you're using as well. Otherwise, gamepass would be on MacOS already, no?
Microsoft/Xbox is in the process of losing the living room permanently in the next gen if you ask me.
I don't know what they could do spanner tossing wise to really screw w/ Linux gaming at this point that wouldn't just drive more frustrated customers off their platform.
Their strategy WAS GamePass - get a bunch of users accumulating huge collections of inexpensive-but-high-value games, paid for via a subscription (rented), that are only playable on Windows (enforced via Microsoft's own software and an account login). Use loss aversion to prevent the users from letting their subscriptions lapse.
They made a tactical mistake by trying to directly monetize the GamePass subscription instead of having it remain a purposefully-underpriced vendor lock-in mechanism. Whoops.
That might make room for Apple to finally try. The AppleTV is already in a similar tier to modern consoles, as far as specs and benchmarks go. Most of what's missing is a first-party controller and a marketing push. Disk space is tight, too, I guess. Still, they're most of the way to having a horse in the race, if they want to.
I reckon a successful launch of the Steam box (or whatever they're calling it) with its enormous library could develop into something that really challenges what's left of Microsoft's piece of the console market (and threaten Sony a little, for that matter) though it's looking like the memory shortage is gonna kneecap that by forcing the price too high. Bad timing.
Lock future game developers in to a corner forcing them only to produce compatible for WSL, Windows for Linux releases. Restricting the license of use on GNU/Linux.
Given how popular Steam Deck and fiends have gotten I wonder if companies would avoid it because it could noticeably hurt sales until it’s added to proton.
Really their best card is new and additional APIs, building incentives to develop against it.
WinRT (not to be confused with Windows RT, the early ARM version of windows), UWP, GDK, xgameruntime. All of these are relatively new and require virtualization and other security features.
Put pressure on devs by gateing xbox and gamepass behind this runtime and now you have a lever to make the situation more difficult for linux.
Kinda has the opposite effect on me however, as the only reason I'm not subscribed to gamepass right now is the games wont work on my steamdeck. But if MS can get enough killer apps as exclusive to that platform then that will certainly add some pressure.
This is a fluffy, non-technical article so I googled NTSYNC. It seems like they implement Win32 events, semaphores, mutex and WaitForMultipleObjects.
It's curious that they didn't do this as file descriptors that can be epolled. For example I think you could do semaphores and events with eventfd(2), which always struck me as inspired by those Win32 objects somehow. But maybe this is a simpler purpose built interface.
It really depends on the type of game you play. As everyone points out, kernel level anti-cheat is a problem on Linux, but also games that require odd controllers have trouble as well. One game I play, Farming Simulator 22, doesn't work well on Linux because they use the raw windows input from joysticks and wheels. You can still play with mouse and keyboard, but the fun isn't there.
I was pleasantly surprised at just how many of my games worked well on my new Ubuntu install. Even more so at how many games are playable on my Xubuntu Chromebook install.
I have occasional issues mainly with graphics drivers or anti-cheat. Otherwise thought it's remarkably stable. I've also gotten a lot of non-Steam games to work fine.
Same. I admittedly don't play a lot of new games, and I don't do online games, but like 95% things Just Work when I load a Steam game on my box. The remaining five percent are fixed if I change the Proton version to GE Proton.
I played through Miles Morales at full specs a few weeks ago, and it ran just about perfectly as far as I could tell.
My linux gaming experience has left me with a wierd irony...
I have been stealing windows for the last 25 years and never ever felt like i owed M$ a cent. Now after totally switching to free stuff i suddenly feel (not in a bad way at all) a kind of debt to open source developers for just making cool stuff and putting it out there for me to use and play with and i'm not doing a crime anymore!
It might be the year of Linux gaming systems. The desktop went from terrible to bad and is still at least a decade behind unless some organisation invests dozens of millions and gets themselves an actual professional dev team.
It can't be neglected that Microsoft is alienating its own power users on such a level that they are now considering switching over and bringing all their know-how with them. Linux gaming is also faster because there's more developers interested in making gaming work outside of the Microsoft dominion.
They still prioritize developers, look at .NET Core, Typescript, NPM, Github (lol), but the problem is that they're not Windows exclusive enclaves anymore. In fact, I'd bet most people now deploy (and probably develop) .NET Core on non-Windows machines.
I remember when XDA was the home of Android homebrew hackers working on things like CyanogenMod. It's so strange to see it repurposed as the brand for the same quasi-correct tech article slop that gets parroted between all the big blogs.
Tom's Hardware is a bit before my time, but I remember it being well regarded. I've seen a lot of similar articles under that name lately. I wonder if they've undergone similar fates.
Same with all the bigger tech blogs from a decade ago. How-To Geek is completely overrun with the same sort of slop. Finally had to remove it from my RSS reader.
Oh look at that, XDA and HTG are both owned by Valnet:
I get a lot of XDA articles appearing in my Google News feeds and a good chunk of the ones I read definitely have the slop half baked vibe to them. Where they barely provide much substance in the article and sometimes barely even address what the article headline said. They also pump out so many articles about the same topics. I swear I've seen like 100 articles from them just on Obsidian Notes alone and so many of them are barebones and lackluster.
There is the odd decent nugget in there, but it is a shame seeing them fall like this. Unfortunately the same sentiment is true about most news sites now.
AMD. The final holdout, HDMI 2.1 support being blocked by the HDMI group, has been overcome w/ the HDMI group relenting and support is now landing in the kernel (expected in 7.2).
I sort of figured that HDMI stupidity was strategically a good thing as it sort of brought the dynamic of the HDMI consortium and VESA. specifically how they treat the end users, more to the public eye.
That is, more people being subtly pushed to using display port is not a bad thing.
AMD does a lot of work to ensure their support for Linux is first-class.
With the kernel now natively supporting their systems, you can expect good support.
It's earned them some good will over Nvidia
which has gotten better recently with the rise of AI, but still requires users to jump through a couple of hoops due to their attempts to protect their IP.
It is more than that, I really like openbsd as a desktop system. This is niche enough that I have zero expectation for any sort of support from the hardware vendors. However, because the amd drivers are opensource. Heroic people in the obsd dev community are able to make it work there. I don't strictly need a gaming gpu for my desktop work, but it is nice to have a setup I can boot linux on to play games with.
Heroic because the amdgpu driver is strangely huge, more code than the rest of the obsd kernel combined, It has something to do with gpu's having no isa stability and the generated code for each card present in the driver.
I built a Linux gaming PC a few years ago, running Bazzite.
AMD is much better. Nvidia has been improving but stuff "just works" with AMD because the kernel (amdgpu) and userspace (RADV) drivers are open source. Valve is a major RADV contributor too.
I don't feel like I'm missing out on anything with my 9070 XT. Performance is great.
Nvidia makes a fine GPU. The problem with Nvidia on linux is the drivers. You're beholden to Team Green for driver updates, and when they decide not to support a GPU anymore, that's it. Now, linux does have the nouveau driver, but that doesn't support all the hardware or much 3d at all, and never will.
I particularly got fed up with Nvidia on linux playing War Thunder - I had a regular crash that Gaijin and Nvidia each blamed on each other, and I never did get it fixed.
Nvidia driver updates can also leave you stuck with no desktop environment on occasion and while fixable, it's a pain in the rear. However, when the drivers are right, Nvidia performance is second to none.
AMD has drivers built right into the kernel, and as long as you have whichever nonfree firmware repos your distro supports (I use Devuan, a Debian derivative), AMD cards 'just work'. If using xorg, install xserver-xorg-video-amdgpu for modern cards, and xserver-xorg-video-radeon for older cards. I'm currently playing on a Radeon 9070 (non-XT) on a 1440p monitor with plenty of performance. I know that it also works on wayland, but I have no experience there.
AMD began the process of open-sourcing their Linux graphics drivers more than 20 years ago. At that time, they had no working open-source drivers yet; they'd only just released some hardware documentation. I told myself then that if they came through and delivered open-source drivers, I was an AMD customer for life. I've more or less held to it. I don't remember the last time I considered NVIDIA an option.
NVIDIA has apparently open-sourced the kernel drivers for their most recent couple generations of graphics cards. That's great! But they have a hell of a lot of catching up to do. Their kernel drivers aren't in the mainline Linux kernel. Their userspace drivers are proprietary, whereas AMD's are open-source. AMD's kernel drivers are built into Linux and their userspace drivers are built into Mesa.
That history of greater compatibility matters in its own right: all of the developers of Linux desktop environments, window managers, and compositors have been running AMD or Intel GPUs almost exclusively for many years.
If "voting with your wallet" means anything to you, or you want things to "just work", AMD is the clear choice and it's not even close.
If you already have NVIDIA hardware, by all means, go ahead. It's doable. But AMD is a way more rational choice on Linux for most users.
I run Steam on Ubuntu with a "GeForce RTX 2070 SUPER" (according to lspci), and while it generally works it has some weird issues with gaming in Linux. Some games end up with what feels like ~200ms latency for no apparent reason, and frame rates on some things like Just Cause 3, which I ought to be horribly overspec'd for (a 2015 game) run comfortably, but just barely, which really isn't right. And Persona 5 gets about 2 frames per second in Linux. My Steam Deck pushes it at 60 at 720p with no problem, and I think was pushing out 1080 at one point quite playably, and I think I benchmarked my PC at ~6 times more powerful than my Steam Deck.
Whereas the AMD-based Steam Deck always does what it should do.
People say you will have less problems with AMD but I am using a Nvidia GPU for years now (on Cachyos and Pop OS) without issues. I'm using Steam and Proton pretty much exclusively though.
Which card and which drivers? I switched from Windows 10 to Xubuntu last year and have had endless issues with my Nvidia card (GTX 970). At the moment, I can't even use the desktop without annoying flickering & hard to diagnose / fix bugs.
Its an old card so I have no idea why I'm still struggling to get it to work. Is it perhaps because I'm using Xfce? I heard that Nvidia cards play better with Wayland although I haven't tested this myself.
I bought AMD as my last GPU purely because it meant I didn't have to stress out about how I was actually going to acquire one. I just walked into Microcenter, picked one off the shelf, and checked out. It was the crypto craze then, and I get the impression that this hasn't changed much today with AI sucking all the oxygen out of consumer electronics. Didn't care very much about DLSS or any other Nvidia specific features. That AMD works well on Linux only sweetened the deal.
AMD for sure. Years ago for Linux NVIDIA was the sure winner. At the moment, AMD beats it out soundly on both cost and performance. ie, the same game running on either an NVIDIA or AMD GPU in Linux will generally run much better on the AMD GPU.
I technically have both in one laptop with an AMD iGPU and an RTX GPU. Most of my problems with archlinux is running a 240Hz HDR monitor on dGPU, where the NVIDIA firmware glitches into buffer out of memory errors not reading the CDID properly, and this was solved only less than a month ago with latest beta driver. Lingering problem is waking from memory with crashed plasmashell but this one is KDE Plasma specific, while the monitor one is Linux wide.
Just anecdata, but I just got a Lenovo T16 with AMD. Graphics is just painless, everything works with no issues. My old system with an Nvidia card running the same O/S keeps running into weird issues. It mostly works, just needs attention and little tweaks and extra stuff sometimes.
For gaming and desktop use AMD is great, though for raytracing you'll need newer cards. If you want to run local AI models too then AMD is quite shaky, rocm only supports a few cards with each version and their software stack just isn't as polished as nvidia's.
AMDs are much better supported. There is life with NVIDIA GPUs too, I am on 4070Ti currently doing fine, but for new builds AMD is clearly a better choice with better drivers
End of 2024 I did exactly that. Ryzen and RADEON all the way. Rocking Fedora right now but was using Ubuntu for a bit. I have no reason to use Windows at all.
Sure, if you're made of money. For the rest of us, AMD gives you more bang for your buck. Though in this market, it's hard to argue that any of them give you good value.
yes absolutely -- although I did use Nvidia GTX 1070 for a bunch of years without much of an issue, and I still believe Nvidia gets you more "bang for your buck", I would only buy AMD cards now due to the more integral support with Linux gaming.
In good faith, you can't really say "[x] is shit" if you don't have an usual setup; X11 is no longer the default on most distros. Even when I was also using it, it never crashed.
I don't know whether your GPU is older than mine or not but I have the RX 7700XTX. Maybe it had a software defect...
I have been a gamer for all my life, I have many PCs, until early 2024 one of them had to run Windows for gaming. I quit Windows, and didn't have to quit gaming, thanks to Steam's Proton + WINE + everything else. Now, because I have Steam compat activated by default, when I download and launch a new game, most of the time I do not know if I'm running a native version or if I'm running it through Proton.
I also can run Windows games from the 2000s or 90s that didn't not work in Windows 7's basic compatibility options because of old video drivers and whatnot. They run just fine on Ubuntu through Steam, just add the exe or installer as non-Steam game, add Proton and voilà, also sometimes there's some headache around making it work when the exe requires the CD inserted to play, even though I have mounted the CD files in a drive in the wine/proton prefix. I wish there were scripts to do that easily, even adding the exe as non-steam game, changing the name, etc. is not very convenient, I wish there were scripts (Lutris does some of that but not the CD part).
I should also mention that I do not play competitive multiplayer games that have kernel-level anticheat anymore. Check out https://areweanticheatyet.com/
I was gaming on Linux when steam first came out for that platform, but there were too many broken games. Tried again with Proton debute, and more problems. I switched back to Win10 for about 5 years on my gaming machine, but the push to Win11 made me want to try linux again for gaming. I installed Guix and Steam, and I am still just floored at how much progress Linux gaming has made in 5 years. Basically every works, and it feels only imperceptibly slower than gaming on Win10. I'm on AMD card, so ymmv!
This is good to hear, but I get 120FPS on Windows in Cyberpunk 2077 and ~70 on Ubuntu. Horizon Zero Dawn is much worse, and quite often drops to seconds-per-frame instead of frames-per-second, if I turn on dynamic scaling. I just have an ssd with windows on it for gaming and boot to that from the bios. Also means my headphones UI works too. But, to be fair, the fact that I _can_ run Cyberpunk and HZD if I want to is pretty impressive.
I switched to Linux for everything but AAA FPS PVP games last year and have had a great experience so far.
Steam+Proton makes everything I play just work: Helldivers 2, Slay the Spire 2, No Rest For The Wicked, FF7 Remake, Stardew, modded Lethal Company (using r2modman) are the main things I've been playing recently, and all worked out of the box with Proton.
My PS5 controller may have needed me to install one package or something but has been working flawlessly after that.
I keep a Windows drive around for stuff like Apex Legends, Battlefield 6, but I pretty much never boot into Windows anymore except for those.
(I probably sound like a shill at this point, having commented something like this on multiple Linux threads now, but I continue to be impressed at how well Linux performs for gaming these days!)
I remember two decades back when Games for Windows was introduced with Vista, I wrote an article that this was killing gaming. As a PC (master race) gamer back then, I didn't always find it appealing to think that PC games had to have gamepad support etc. To be called and have the Games for Windows logo.
Now seeing Linux just absorbing Windows APIs into the kernel to make gaming work better? That is the opposite direction. This is what PC gaming needs.
I got into PC gaming when I got my Ambra Hurdla SX25 in 1992. Back then it was the fantastic era of first for everything. We got Comanche, Alone in the Dark, Dune, Dig, etc. First of all game types, not just clones of the same concepts.
It’s wild to think that the "Year of the Linux Desktop" didn't happen because of a massive marketing push, but because the kernel just slowly absorbed the competition's DNA.
The fundamental difference between Linux and OSes like Windows, macOS, Android, iOS, is that the people making Linux are simply trying to make it good, give it as many features as possible, let the user do as much as possible, make it as easy to use as possible.. Whereas the design of the others is guided by a bunch of weird business-goals and internal politics that constantly change.
That's why Linux keeps getting better while the others keep getting worse.
Personally I don't know if this is some weird compatibility stuff for Windows apps, or the reason why Windows apps on Linux, whether running via Wine or being ports, rely on these apis because no good alternatives exist.. And if these apis are going to be used/useful for stuff beyond Windows compatibility, for native Linux apps.
Which is a weird thing to think about, and not sure very lovely.
What excites me is that the kernel gets better not only for windows games but can also get benefits that can be more general purpose, such as what the article writes about: program able to wait for multiple events at once.
It will be interesting to see how native Linux games differ in what fancy under the hood kernel or syscall features they use.
There will never be native games that use unique Linux kernel features because no studio will waste their time spending those development resources on an OS with even 10% market share, which Linux is nowhere near. The exception would be if, say, Playstation switches to Linux from BSD, which they will never do, as GNU licensing in essentially fatally incompatible with copy protection and anti-cheat functions.
I doubt it, if Linux can consistently prove to be more performant and easy to use compared to windows and have decent marketshare, it will see adoption by serious game studios.
NTSYNC seems quite cumbersome to use for your own linux software though
> The ntsync driver creates a single char device /dev/ntsync. Each file description opened on the device represents a unique instance intended to back an individual NT virtual machine. Objects created by one ntsync instance may only be used with other objects created by the same instance.
So you need a server process that can open the char device and hold onto the fd that you can then request through a Unix domain socket.
I was under the impression that most windows games copy and anti cheat protection won't work in Linux. It often has a kernel mode driver to prevent you emulating things, using debuggers etc.
What changed? Do game manufacturers make special versions with toned down anti-cheat specifically to run on the steam box/Linux?
Nothing. Majority of those games do not work, but they are small percentage of all games on steam. Most is just small time developers trying to hit some big niche for big money, like Stardew Valley or Terraria or Meat Boy.
I stopped using Windows all together two years ago, and since then Linux gaming has made huge strides. Almost everything is playable now with the exception of Kernel AC games - which I don’t play anyways. The success of the Steam Deck has been an integral part, and Vulkan performance is similar if not equal to DX.
Seeing XDA brought up some good memories. That's the website that really got me into software engineering. I remember trying thousands of different ROMs every month and changing phone every 6 months. My username is still there and seeing the forum still alive and well is awesome!
I'm very happy with my Linux install. After almost 2 decades of trying Linux Desktop and falling back to Windows (and MacOS) I've finally switched to Linux (and MacOS).
The only thing missing is my Adobe stuff. I now run Lightroom in a VM and it's incredibly slow to unusable.
I only hope this eventually reaches enough coverage to support media production. It’s the last commercial area I care about. I’m entirely willing to pay for good work here (and have) but both major commercial desktop OSs are exhibiting significant warning signs of contempt for the users.
Meanwhile I'm over here, trying to get Age of Wonders 1 to run and completely failing on everything spare a laptop with an old Windows 7 installation. Linux API aping (sorry) is so good that they even exhibit the exact same CTD as Windows 10 with this game.
I am, I have an Nvidia 5070 Ti, Aurora for my OS (from the same people as bazzite, but I'm a light gamer so I'm fine using flatpak steam/heroic/etc). the only problems I've faced are
- occasionally an online game breaks and it's usually fixed within a day or two. for example at some point a Battle.net update broke the launcher under Wine some time last year, then for a while Overwatch would intermittently crash once every few sessions. I haven't gamed on Windows in years so I can't even compare anecdotally, but I suspect Windows is probably slightly more stable with live service games. I've never had any issues with a single player game, period. (YMMV)
- Some anticheats block Linux - the only times I've switched over to windows in the last year have been when some friends wanted me to play Marathon with them
- Running 'sidecars' alongside your games or modding works but is generally more of a hassle with wine
things I didn't expect to work but do:
- Game streaming with Sunlight works fine to Samsung TV via the TizenOS Moonlight app
- Nvidia had suspend issues for a year but those have all been sorted out the last few months
Yeah, I completely ditched windows about 3 years ago now and I haven't looked back. My taste in games definitely helps, I mostly play indies and older games.
I've only run into a few big issues. One is that gamepass doesn't work at all (of course) so I cancelled it when I switched, but between price increases and BDS I would have cancelled anyway. The other is anticheat like everyone says, but the only game I've actually run into this with is Fall Guys (I only play this every few months and it usually works with some fiddling but sometimes it doesn't). Other multiplayer games like Rocket League and all of the Valve ones have been fine.
The only issue I can remember running into on a steam game was a crash in Civ V multiplayer that had an easy to find workaround.
Outside of steam I've had a few small issues with older games from gog like Arcanum and KOTOR2, but my understanding is that these are fairly buggy on windows too.
I moved about 4 months ago to Bazzite on my nvidia RTX 3080 desktop.
What worked fine:
- All steam games I tried (mostly indie but I did play Cyberpunk 2077 beginning to end and Satisfactory) all with 0 issues
- Overwatch over battle.net
- Accessing SMB partitions is easier than windows (although it is a bit weird how KDE handles it)
What caused problems:
- Linux doesn't support HDMI stream compression so you can't do 1440p @ 165hz with HRD on over HDMI 1.4, so I turned down to 120hz (my monitor doesn't have HDMI 2)
- battlenet is a bit annoying to set up (needed to mess with proton version) and sometimes craps out when I launch it. One time after an update it completely broke and I had to reinstall. Never had I to do any CLI stuff to fix this
- I ran into a problem that caused toast notifications on both steam and battlenet to memory leak and take several gb of ram and high CPU. Disabling toast notifications fixed the issue, I believe this has been fixed upstream in Bazzite/KDE.
- I couldn't get HDR working on Overwatch, apparently you need some proton CLI args to enable it and I just didn't want to bother.
- Once after a big update Overwatch completely crapped out and I had to reinstall the game. I could actually launch the game but it felt like textures were missing or shaders weren't compiled, it was very weird.
Overall I am very happy with no plans on going back to windows. Apparently the main report of problems are people using laptops with mobile nVidia GPUs, and older nVidia GPUs (1000 series I think).
Overall experience is very good with AMD graphics. Most games run on Steam out of the box. There are also emulators for all the systems I've wanted to use. I use Faugus Launcher for other stores like BattleNet and Epic Games (Magic Arena).
For the most part the games just work, it's more system issues that I've run into where Linux suspend mode and the audio stack can be a little flaky and required Claude to diagnose and sort out.
Nvidia has gotten a lot better over the last 2 years as well. There are still driver bugs that are somewhat annoying. It's also annoying that the driver is out of kernel. But otherwise, the open source nvidia by nvivia works just fine.
Do Epic titles even work on Linux? I thought I read somewhere that Tim Sweeney hated Linux and does whatever possible to make sure Epic's games like Fortnite don't run on it.
I've been gaming on Linux (Fedora) exclusively for ~10 years, and in that time able to play any new release that interests me so long as it doesn't have egregious client side anti-cheat.
I'm working and gaming on Garuda for over 3 years and not planing to switch any time soon.
It runs super smooth, with the build in 'wayback machine' and 'curated' Arch distro (7.0 zen kernel just dropped a week ago) pretty much bullet proof for beginners or as a daily distro if you want to get stuff done w/o caring much about it - just loving it. On the other hand side you have cutting edge gaming tech like wine/proton staging versions per default, so I'm playing Blizzard games with NTSYNC (the tech from the article) for several months now :)
Forgot about most of the flashy default UI though :D
Having migrated from Windows11 to Popos/Nvidia, Minecraft is ~20% slower depending on shaders installed and distant horizons mod. TF2 is also slower but both still fine.
One canary I have for Linux vs Windows is whether Bloomberg ever support Linux natively on the terminal. You can actually use the API from inside WSL quite easily already.
I love that I am a part of this with my Steamdeck. Hands down great machine and absolutly incredible what you can do with what I thought to be be quiet limited hardware
Headline says "Windows APIs are becoming Linux kernel features", but only provides two actual examples? It lists NTSYNC, and waiting on multiple events at once.
DCS World and MSFS2020 play on Linux just fine. MSFS2020 is flawless; DCS World has a few visual glitches with smoke tessellation and MFD textures that need to be converted before working, but besides that it's great. I fly modded and first-party modules on multiple maps, hours at a time, zero complaints.
That’s interesting… have you tried MSFS2024? That’s my main driver for now; god it would be amazing if I could run it on Linux.
I’ll definitely need to try DCS on Arch!
By the way - what module would you recommend (apart from F-18)?
If by "thousands of virus" you mean software shipped by default in Windows, then I agree with you. Everything feels so sluggish on Windows 11 compared to any Linux distribution even if you run it on an HDD... it's ridiculous.
The way you worded this has me imagining the counterfactual world where lots of people traded Bill Gates a linker for a compiler.
Compilers cost real money back then. Word got out that this was how you got a free compiler. You just wrote a linker, and you got in touch with Bill and offered it to him. (You did have to write your linker in a single huge file of assembly, because you didn't have a compiler or a linker yet. It was fine, more programmers knew assembly back then.)
Microsoft has thousands of linkers. They're the linker company now.
Most of their other products started as test cases for their linkers, that they also happen to sell separately as a side business because why not.
Excel is a notable exception, because due to a series of overengineering decisions, it actually is a linker that gradually gained spreadsheet features.
As someone without strong feelings on Linux vs Windows (I've used and developed on both about equally): this kind of news, along the way Windows has been changing has me wondering if I should change my primary desktop environment at home to Linux.
In my eyes, Windows used to be the desktop environment that "just works and can run almost everything". Lately it's becoming enshittified, with weird bugs showing up more and more frequently (a memorable one is not being able to launch Notepad from the start menu!!). I think Microsoft is losing its best attributes when it comes to consumer software. Linux may not be perfect but it's looking more and more attractive in comparison, even with its imperfections.
Apple has never really cared about games unless it's on the iPhone or iPad. It's worked out well for them though. Mobile gaming is a $100 billion dollar market, PC gaming and console gaming are each about half that.
overwatch plays flawlessly on macOS right now, Game Porting Toolkit 2 is DirectX on Metal done by a $1T company.
all that said, they view this as enabling the consumer by supporting their hardware better, they have an antagonist, mafia-like relationship with game developers.
Not really. It’s not “Windows APIs turning into Linux kernel features,” it’s Windows games being translated on Linux way more efficiently than they used to be. Proton stack, Vulkan, Mesa, driver work — that’s where most of the improvement came from.
>NTSYNC isn't the first time Linux has gained a new feature specifically because Windows games needed it. A few years back, Linux added a way for software to wait on several events at once, which is something Windows had built in for decades, but Linux didn't.
Lol.
Post doesn't sound explicitly vibewritten, so probably just a non-technical person.
Nothing like copying someone else’s shit when you want to avoid thinking of new things for an operating system.
You could be more like Plan9, Linux. You could actually innovate and create new paradigms that make people look at MacOS and Windows and think that they are no longer in the same league.
But you don’t want to do that. You want to play games faster.
Fucking children run the world today. There are no adults keeping track of things making sure that as we go forward that things make sense. There’s no adult supervision in the computing industry anymore. None. It’s all just profit margins calling all the shots. Asinine.
How did it turn out for windows, being “The OS for Games”? Not great, I’d say. Windows is quickly losing that title and will soon become more and more irrelevant for gaming. If you focus on games until you’re “The OS for Games” then decide to innovate on real things that matter outside the home, then you’ll lose that title just like Microsoft is losing it now, and it will happen a lot faster for you than it did Microsoft, because the Linux community is about as organized as an Oklahoma town recently destroyed by a tornado.
Games are fast enough for anyone and there are certainly enough games today that if 5 people lived for 500 years each, there’s not enough time for them collectively to play all games that are available today.
I don’t know what you gamers think the “end game” is for games. Graphics? When are you meant to be happy? When will you stop and say, “ok, we made it”?
Graphics. Pfft. Games do not get better with more realistic graphics, and you know it. Great games are great because they are well thought out and well tested. Great games are not great because the shadows are sharper or because the reflections are more accurate. Some of the shittiest games ever look amazing, and some of the shittiest looking games are S-tier. And you all know it.
OS Development has halted in 1970 at this point. I know everybody loves Unix, but it has the same problem as Windows- namely that anything you run under your user context has access to your whole user context. And it will continue to be a scourge until/if we ever figure out how to make capabilities ergonomic. I've been racking my brain for 30 years to try and do it, but they just make certain things very painful.
Look at Plan 9, if you haven't. I can open a window, add/remove things from its environment (via mounting and unmounting files into that window's namespace) seal that environment to prevent changes, then launch a program.
The program can only see what is available to it via the file system. If it has no /net folder then it can't talk to the network. At all. If it has a truncated /env then it can only see a subset of the environment variables available to me, the user.
EVERYTHING being a file is ... weird. Unix has that, but Plan 9 takes about as far as it can go, which is pretty far. But that makes permissions to things quite easy, because file permissions are easy.
The other thing that Plan 9 does is that everything is a file, including your environment, mounting and unmounting things from/to your environment is how you gain/deny access to yourself and to programs.
If this permissions model was common, ransomware would have never been possible. No virus could infect your system, only its own environment (with caveats).
If you already know all of this, I apologize. If you don't, then you owe it to yourself to have a look at Plan 9. It's very weird, but once you wrap your head around it, you start seeing why some people really rave about it.
There's a channel on YouTube called "adventuresin9"[0] which has TONS of content about Plan9.
I made 50 TUI games recently to just test my agent orchestration skills. If pixel graphics are retro, then ASCII is OG. Part of the reason is to make them playable on any device (including Linux), and partially so that agents themselves can play them (to help me practice my RL skills).
“He who fights with Windows should see to it that he himself does not become Windows. And when you gaze long into ntoskrnl, ntoskrnl also gazes into you.”
Seriously, is it really a victory if you have to adopt the architecture of your sworn enemy?
To quote Linus Torvalds from 1997: "I don't try to be a threat to Microsoft, mainly because I don't really see MS as competition. Especially not Windows - the goals of Linux and Windows are simply so different."
He got less humble later on when momentum started building behind Linux. To quote Linus Torvalds from 2003: “Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect.”
Personally I used to be a Linux zealot back in the early 2000s, then I actually learned to program C++ and dove a bit into OS architecture... I realized why Linux on the desktop always sucked.. Not because of some dastardly conspiracy by Microsoft, but because of the very basic fact that server people and vendors held the developer purse strings and they drove the engineering decisions.
Let's take a simple example.. to send a network packet to a different machine, you just call into the Linux kernel, which dispatches your stuff directly to the network card, and you're done. Pretty simple. However if you want to send a message to your neighboring X11 window, you have to go into the kernel to do IPC, which then somehow dispatches your message to the server process, unblocks and schedules the message pump in X11, which finds your window, then once again you go back into the kernel... then your target process is scheduled, so on and so forth.
Wildly inefficient, yet Linux never got proper good IPC merged (until binder), low latency audio sucked, and none of this coordination logic or audio processing got in the kernel.
Why? Because servers don't need that stuff and some server engineer isn't going to know or care about your use case, you're just small fry, and none of the stuff you do is worth taking on technical risk or slowing down server workloads.
The goal was to be able to patch and fix the systems I was using, and swap out bits and pieces as I wanted. And that seems to be less and less possible on Linux these days, as you have these tightly vertically-integrated stacks where everything depends on the latest version of everything else.
We are so far removed from 1997 that this statement means nothing.
> the goals of Linux and Windows are simply so different.
So different that Windows muscle memory works on most main stream Linux UI's, Many (most?) Steam games run on Linux, and now we have Windows in the Linux kernel.
What is the purpose of achieving victory? Is it to produce the software that works better or is it to stick your fingers in your ears and lalala the loudest?
Not really, in the drunken happiness to have games, Linux users keep forgetting those are games developed on game studios that the only place there are GNU/Linux installations running are their MMO servers.
It is no different from arguing how Linux is getting better GameCube games with Dolphin.
Also Valve is only as good as its current management is still around, eventually like any other company time will pass, and new warm bodies will take other decisions.
Used to be a staff member working on an x86 OS called CTOS. I realized if I implemented a couple of traps, we could run command-line DOS programs. So I did. And it worked. Dev tools, text processing, piped commands all worked.
It helped that the DOS executable format was the same as the CTOS format - because we had traded Bill Gates our linker (which produces executables) for his BASIC compiler.
Looks like this one? https://en.wikipedia.org/wiki/Convergent_Technologies_Operat...
Thanks for sharing, never heard about it before. What was kernel programming back then? Briefly checked the wikipedia and looks like CTOS was kinda big in the government space back in the 80s.
It was popular with govt because it came with an HDLC network build-in, server/client depended on the OS you booted. This saved you a network administrator.
The kernel was in Intel ASM86 but the rest of the OS was written in PLM86. When I joined it was 2MB of code on a 128K 8086 cpu. By the time I left it was 9MB of code running on an 80386.
1 reply →
If you wanted to get into development mode in CTOS, the keyword was 'developement' - an e between the p and the m. Worked on this system back in early 1990 as a developer.
developéer
if I implemented a couple of traps
What does this mean? System calls?
Similar but traps are triggered automatically on attempts to execute a protected instruction.
https://www.geeksforgeeks.org/operating-systems/traps-and-sy...
14 replies →
if you know a particular process or system callmakes errors,then you run code that checks for that error,or exception,or preempively hooks a problematic system call,to redirect to "your"code that handles the state of exception,and returns.
https://en.wikipedia.org/wiki/Interrupt#Terminology
Before SYSCALL there was INT
1 reply →
Need to pee? Take the a-trap to Shell.
It's a trap
1 reply →
[dead]
hello! hello! I was mainly admin and COBOL dev with them (I wish I kept the collection of the manuals and PRGs, alas when no space..), bitsavers have a quite collection (incl a virtualbox HDD) if you are interested!
That's a great twist! Very few people traded Bill Gates a linker for a compiler!
Yes, I agree. Amazing twist of fate.
This is such a neat historical parallel
Feels like there is some real momentum on linux gaming now. I mostly play older games but I've gotten most of them working acceptably in proton on my old system 76 laptop (oryp5, with a nvidia 2060; ~7 years old). The laptop actually has plenty of power for the games I play, but I underclock to keep the heat/fan speeds down (been doing the same on the win10 install on the same system), still getting acceptable framerate in proton for most of the things I do in game, non intense stuff.
Decades ago I ported some games to linux but I do think proton is the correct approach now. One underappreciated advantage is you get most of the mod environment too. In ESO for instance, there is an addon (tamriel trade center) which lets you download item prices, but it requires a windows client exe to do that. That client works on proton.
I also do some modding myself and can cross compile my rust code to windows with cargo xwin, and run it right away in proton, which is fairly amusing to behold.
I actually don't mind windows generally (been a MS user since DOS 5), but Win11 is a game changer, pun intended, and not in a good way.
Yeah, I've been playing BG3 on Linux[0] for about 2 years at this point (using a Lutris "recipe" or whatever they call it). Ironically, the biggest issues have been with some of the modding tools needing specific versions of DotNet and whatnot. The game itself runs flawlessly.
[0] Arch Linux, btw, because that must be mentioned.
Actually, I have been having a specific issue with pickpocketing in BG3. On native Windows and native Linux, the client crashes if I pickpocket too quick. One time, on Linux, it even made my whole OS crash (and then some weird error BIOS error). But specifically with Wine on Linux, it does not occur. The only reason I even tried with Wine on Linux is because I wanted to try some mods unavailable otherwise. It does seem the native port has better latency, but latency in a game like this is pretty irrelevant.
I have been using Linux for nearly 30 years now, including running CS (HL1) via Wine with better performance and stability than Windows 9x on a LAN party. Good times.
Sometimes native ports don't get updates, while Windows port does. If you can then run it via Wine, you may have a more stable/less buggy experience.
Note I use both Wine and Proton. BG3 I run with Proton. But Proton is 'just' a fork with (neat) improvements which also partly got backported.
Oh, and I have to mention, I don't use Arch Linux.
3 replies →
This is exactly why Proton feels like the pragmatic path. Native ports are nice in theory, but PC games are rarely just one clean executable anymore
I have stopped playing native ports and just prefer Proton when I have the choice. Many devs using Unity & co. just tick the "export to Linux" option and never try the build, which is often much slower or bug ridden.
I was playing Project: Gorgon recently, I was about to refund because it ran terribly on my machine (despite the low end graphics), when I noticed it was using the native build, switched to Proton and got a 200% FPS boost.
As long as I can play on Linux, I don't care what translation layer it goes through.
I'd argue that "native" is much more of a state of mind than a clear delineation anyways.
Among many game developer studios, the Steamdeck is increasingly becoming the defacto low-spec hardware target. Running their game on a Steamdeck becomes a core part of the QA process, because there's a few million Steamdecks out there actively playing games, and if your game runs on a Steamdeck you basically know it'll also run on a very wide range of hardware configs.
So while the game might be targeting a different API than the standard ones exposed on Linux machines, a lot of games now are directly designing their software to make sure they run well on a Linux handheld. Meanwhile, Linux is adopting more and more features to better support this non-standard API set.
At a certain point I think we can just call Proton/WINE a 'native' API for gaming on Linux, and say that games developed with Proton/WINE in mind are native games.
Perhaps we're not at that point yet, but we might be there soon.
7 replies →
And exactly why Apple's push for Mac gaming (which still puts native ports as the ultimate goal and treats things like GPTK, despite having made it, only as "ways for developers to preview how the port would end up" and not intended for general consumer use) is never going to work, no matter how much cash they throw at it.
EA's horrible launcher comes to mind.
Yeah, PC games are like console cartridges. You plug them into a compatible slot and they work.
1 reply →
Not the ideal path though - that's still source ports.
[dead]
I'm looking to finally get off Windows for good. My experience with the SteamDeck started me, later I upgraded to a ROG Ally X for beefier performance but found Windows insufferable on a handheld, and installed SteamOS. I was blown away by the performance gains. A few months later I installed Kubuntu for the first time since 2013 or so, Steam shortly after, and while the desktop linux route is definitely more taxing (manually installing things like Mod Organizer 2 instead of Vortex, for instance, and all of that needing to run differently as opposed to Windows where it's all just .exe's) I've been absolutely blown away by the performance gains again. Mind you this machine is no slacker, it's a GE76 Raider from MSI, 3060 under the hood, but games just run smoother in Linux. And the alt-tab experience is untouchable, Fallout: New Vegas hates it and crashes, but everything more modern utterly doesn't care. I can alt-tab in and out, check messages, desktop composing works great no matter what game I'm playing, no more issues in modded games where the game completely locks the machine as Linux just doesn't seem to allow it, it's fantastic.
I have a couple more things to figure, I need XBox authentication to work for Halo Infinite and Sea of Theives, among others, and I need to figure out some solutions for some ancient software I have to run, which will probably end up being a Windows 11 VM. But as for my daily driver OS, I am so excited to get off Windows once and for all.
Re: modding with MO2/vortex I had a similar problem in that installing them on linux isn't super straightforward, and then once I did get them installed when I launched the game through them like I used to do on windows the performance was abysmal. I decided to tackle the problem myself and so I wrote this: https://github.com/mfinelli/modctl. It's a mod manager that I wrote specifically for linux. It's not really ready for primetime yet, but if you're willing to experiment depending on your needs it might work for you. The repo might look like work has slowed down, which I guess is true but that's mostly because I implemented all of the main stuff that I wanted to and now I've just been using it instead of building it for the past few weeks though there are still a few rough edges and a couple of bugs that I need to sort out (but nothing game breaking that I've found yet).
13 replies →
Modding will continue to be a challenge, but doable, thing, until more mod devs get onboarded to Linux themselves. If the mod devs enjoy using Linux, they'll probably start building mods with UIs native to Linux.
I would say custom modding and online multiplayer anti-cheat systems are the last real hold outs, and even then it doesn't affect every game.
1 reply →
There were specific games keeping me on windows, mostly online PVP. At some point I switched anyway and I don't regret it at all. Now when my friends suggest a game and I'm not able to play it, I just do something else or we choose a different game. There are so many great games out there now, and more release every week. Plus, as I've gotten older, it has become more apparent the fun is in socializing, not the game itself.
My point is, you may find the one or two games holding you back won't be missed much.
Regarding mod managers, there is Limo[1] for Linux. I used it for Viva New Vegas[2], but some mods do not seem to work. I don't know if it's due to Limo or if I did something wrong though.
[1] https://github.com/limo-app/limo
[2] https://vivanewvegas.moddinglinked.com/
1 reply →
RE: Sea of Thieves on linux w/ xb/microsoft auth. I was able to work around it by just removing 2fa from my microsoft acc. Obviously not a great solution. but yeah. You may be able to reenable it afterwards, I never tried, its the only thing my microsoft account is useful for at this point anyways.
3 replies →
What do you plan to do about firmware updates?
3 replies →
Yes , Win32 / DirectX in common HAL for games now , just compile your game for windows/steam , you can run everywhere , minimize the headache of doing native game development , like breaking with X11 / wayland kde / wayland gnome / wayland mutter .
For the OSes runtime side you can depend on SteamOS / Apple's Game Porting Toolkit / Crossover / Proton / DWProton / Wine / and Android's Winlator/Gamehub/Gamenative .
For DirectX compatibility you can depends on Apple's D3DMetal , DXMT , VKD3D , DXVK and WineD3D .
Thank you for sharing that last paragraph. It's nice to know I'm not the only one out there who feels let down by the trajectory Microsoft has taken.
I've likewise got a lifetime of experience on the Windows / MS stack, decades of custom tooling I've adapted or coded from scratch, etc. It's frustrating to see so many great advancements to core fundamentals like the kernel, tracing tools, I/O performance, etc. get completely overshadowed by such chronically user-hostile and frankly stupid business decisions.
I wish I could have the good bits without all the nasty cruft. I wish they stopped assigning junior devs who haven't even heard of Win32 to work on UI touched by millions of end users. I wish they hired back QA staff and rediscovered proper quality control methodologies like, say, regression testing. I remember a story from back in the day when they bought up one of every software title from the local tech store and had staff each pick one to dogfood on their prerelease OS. That passion to ensuring a good user experience.
I don't look forward to the time it will take to recreate all my infrastructure in Linux (including no doubt several detours tinkering into source codes to fix little issues and upstream little enhancements). But I fear Microsoft as a whole will never get their heads screwed on straight in time for me to avoid having to do so.
I would pay good money for something like ReactOS, Wine, or whatever, to offer the equivalent for business applications as Proton is for games. I applaud all the hard work done by people on those projects. I expect one day when kids have never heard of the word Microsoft, the code those heros wrote will still be in use by some grateful beneficiaries.
Anyway, that's the end of my rant. And in the meantime, just in case you haven't tried it yet... Windows 11 IoT Enterprise LTSC is the least offensive flavor I've found, and works as a daily driver.
How is ESO these days? Wondering if it's worth getting into from a solo (or finding some random party) gameplay/questing perspective.
[dead]
I think Linux needs a few things before it will be ready for mass consumer adoption.
1. An equivalent of kernel level anti-cheats. Cheating really sucks. It ruins online games. Kernel level anti-cheats aren't perfect, but they're much better than user-space or server-side anti-cheats. Maybe in the future AI solves this, but inherence-based anti-cheats are likely going to be a cat-and-mouse game. Valve have stated they are working on this problem and I think if anyone is going to solve it, it's them.
2. Immutability. Right now distributing games on Linux isn't distributing games "on Linux." It's distributing games to 12 different distros with a hundreds different configurations and a thousand customisations. This is impossible to support. When SteamOS gains traction, developers will be able to target exactly one distro with fixed configurations and limited customisations. Valve will set the standard for other distros.
3. An enforced equivalent of .exe. One of the most wonderful parts of Windows is the near universal acceptance and use of the executable installation method. You just double click the file and install it. Linux is an absolute clusterfuck of installation manuals and scripts and competing app stores with their own repos and permissions and packaging methods. If Valve were to mandate the use of, for example, flatpaks in SteamOS, that will become the universal standard. I think this is one of the most frustrating parts of using Linux for regular people.
4. Better hardware support. My Fanatec peripherals don't work well in Linux. Fanatec doesn't offer drivers and open source options are limited in functionality (and stability). There are many products for which drivers support sucks in Linux. I think AI will solve many of these issues over the next few years. Unless the manufacturer has gone out of their way to encrypt of obfuscate the communication layer with the product, you can basically point Codex at the peripheral and tell it to build an interface driver. Within a few years, I imagine operating systems will have this kind of functionality built in. If the OS encounters a peripheral it doesn't recognise, it will just build its own driver on the fly.
I am more optimistic about all of these than ever before. Linus Torvalds famously said it will take Valve to fix this fragmentation problem for us, and that looks like where we are heading. No doubt there will be Linux fans who lament the loss of diversity and competition, but I think we end up with a true competition to Windows for gaming. That's when I will make the jump.
> 2. Immutability. Right now distributing games on Linux isn't distributing games "on Linux." It's distributing games to 12 different distros with a hundreds different configurations and a thousand customisations. This is impossible to support. When SteamOS gains traction, developers will be able to target exactly one distro with fixed configurations and limited customisations. Valve will set the standard for other distros.
Steam has already solved that problem. You target steam (not steamOS) and all other distros will do the work for you.
4 replies →
> 1. An equivalent of kernel level anti-cheats.
Ultimately, you can’t trust the user computer unless you go for the secure boot things backed by a hardware key. I’m sure there are multiple ways to bypass anti-cheats on Windows.
> 2. Immutability[…] It's distributing games to 12 different distros with a hundreds different configurations and a thousand customisations
Does it really matter? You can always ship a statically compiled games. There’s only one kernel that is greatly back compatible.
> 3. An enforced equivalent of .exe.
I think ELF is the official standard for executable binary. The competition is illusory. There’s nothing preventing anyone from distributing a self extracting archive that installs on /opt. Packaging on Linux is about your system consistency, not software availability.
> 4. Better hardware support
That’s not a linux issue. If the manufacturer is not keen on getting it in the kernel or making it open source, they can always create a binary blob and distribute some shim that loads it.
9 replies →
the minute linux solves kernel level anti-cheat is the minute it wins the OS war, tons of friends have only windows on their PCs because of valorant or other multiplayer online game that uses anticheat.
12 replies →
Well if you want an operating system you don't control and that actively works against you then you already have Windows...
Given the current momentum, it feels like (to me) the adage of “Windows is for Games” is going by the wayside.
If you look at Steam, and OSs like Bazzite it’s clear the consumer-side is finally shoring up. But that aside, from an economic incentive, game providers (for example Amazon Luna), don’t want to be paying the licenses for running Windows machines for Video Game Streaming on Demand. In fact, at my time there one of the major thing I worked on was figuring out how to stream the games using Linux + Proton + Vulkan so we could use the AMD machines.
Honestly the biggest hurdle was (and probably still is) Anti-Cheat and BattlEye.
At any rate, I’m personally happy to see this trend as I haven’t had a Windows OS since Windows 7.
>Given the current momentum, it feels like (to me) the adage of “Windows is for Games” is going by the wayside.
I think that games have been a strategic priority for Windows for a very long time. Going all the way back to DOS/4GW on Windows 95. But the impression I get from Microsoft is that they kind of don't want the hassle of maintaining a desktop OS anymore, and they would be happier if everyone went elsewhere.
I'm not sure. They put a ton of effort into things like DirectX, were outright anticompetitive against OpenGL, and there was an atypically high degree of competence and vision throughout. It probably wasn't about the games but about tying people to Windows. People didn't make games for Linux because there were no gamers on Linux. There were no gamers on Linux because people didn't make games for Linux.
On top of this, gaming used to be (and probably still is) the main reason to cycle through PCs. If you're just going to browse the web, use relatively low resource software, etc then a PC or even laptop from a decade+ ago is 100% fine. The reason consumers upgrade is going to be heavily weighted by games. And each of those upgrades often comes with new OEM software that was licensed and other economic benefits to Microsoft.
---
As for modern Microsoft, I agree with you from an outsider's perspective, but I'd bet internally it's a different game. Microsoft seems to be having major issues with labor competency, on both the implementation and management side, and it's making their entire ecosystem collapse. Anything that has major outward visibility (like desktop OS) is going to make the circus most immediately visible. I have little doubt they have the same stuff going on internally with their other offerings.
I think that's the key explanation. Gamers are no longer a mass market user group for microsoft - they target all the casual computer users. Gamers actually want full control of their computer, pay attention to details and care about performance: that's a niche user base, and it's clear why their interests overlap with the linux community: user needs trump everything.
2 replies →
The last few years it has felt like that, Microsoft is more than happy to sell to everyone while also having Windows.
I mean Windows is still a huge cash cow for them and is THE desktop OS but the actions they are taking with it sort of makes it feel like a second class citizen.
4 replies →
> the adage of “Windows is for Games” is going by the wayside.
This is the last major reason for anyone to use Windows nowadays, with the exception of legacy applications.
Windows' days are numbered.
You’re going to be counting for many many years
The progress is vast, but at the same time, it feels overstated.
Linux still is not a great daily driver for video games in many circumstances, unless you're on a specialized device like the steam deck that gets extra attention to smooth out the rough bits.
On my gaming PC I haven't found a single game that runs noticeably faster in Linux. Most run considerably worse often while suffering various glitches (sometimes game-breaking).
Sometimes, with work (different versions of proton, startup options, configs, or even new kernels or compositors, etc) you can get around those problems, but... it takes work. Work that you just don't have to do on Windows.
> Most run considerably worse often while suffering various glitches (sometimes game-breaking).
That's an interesting experience, I'd be interested to hear more. There certainly are games that do not work well, no question, but as far as I'm aware it's a pretty small minority. To my knowledge, the two biggest issues are anti-cheat and video codecs, both of which are business/legal problems, not technical issues. Are those the main problems you're seeing? If not, are you possibly running fairly niche games, or on a niche distro or specialized hardware setup?
3 replies →
[dead]
Nah.
Linux is still too bloody awful for power users, never mind the median gamer.
Most Linux usage is SteamOS which only barely counts.
It’s a great hedge that keeps Windows almost honest. But we’re a long long long long long <breathe> long long long ways from the median gaming PC being Linux.
If you call yourself a power user and cannot use Linux properly, you are not a power user.
1 reply →
Linux is for power users. Windows 10 with Powertoys and WSL for stuff like yt-dlp is a fine stopgap, but you can get the same workflow on Linux with a leaner system.
I never installed Windows 11 on any of my PCs, there's no place for it in my work or gaming regimen. If Linux is supposed to keep Windows honest, then some dev at Microsoft must have a Pinocchio nose.
5 replies →
What do you consider a power user? Because I'd consider an OS that refuses to let you do what you want, and constantly reverts your customisation, the opposite of power user friendly.
We're a long way not because Linux cannot do it. We're a long way because publishers refuse to take it serious.
I am really curious: what is your definition of a power user.
1 reply →
I'd bet even more Linux usage is ChromeOS which even more barely counts, and certainly both are dwarfed by Android which simply doesn't count.
How are these statements compatible?
Like if most linux usage is SteamOS that suggests its good for gamers right?
And that all any other distro has to do, is target SteamOS in terms of gaming usability?
SteamOS is Linux.
Online multiplayer games keep trying to allow linux users in and keep having to lock them out because there's an instant influx of cheaters.
The Nintendo Switch (which runs Linux) was a favorite of cheaters after jailbreaks came out.
When anyone can compile and run their own kernel with god knows what for modifications, that makes it substantially easier for cheaters and substantially harder for anti-cheat. I don't see that ever changing.
You can't rely on server-side detection either, because some of the cheats are so advanced they go to great lengths to "behave" like a highly skilled human player would with their aiming
The status quo's days are numbered. Online chess shows how.
An AI will play these games like a human but better. The AI can be totally separate from the windows box wearing anti-cheat ankle bracelets just as your brain a separate thing to the windows box when when you play. It can interact with the box via keyboard, mouse or controller.
No windows kernel module is useful in detecting and deterring chess cheating no matter how fanciful or factual the vibrating "device" stories are.
Anti-cheat by kernel module, it's day will be entirely done very soon if it isn't already.
"Any time you beat a computer at a game it let you win." Are we there yet? If not, how long?
24 replies →
>The Nintendo Switch (which runs Linux) was a favorite of cheaters after jailbreaks came out.
If you're saying the Nintendo Switch system software is Linux-based, I don't think that's correct. It's a proprietary system based on a microkernel architecture.
5 replies →
Nintendo Switch does not run Linux, it runs a proprietary OS called Horizon based on the Nintendo 3DS firmware. Not sure but it might or might not have some BSD code in the network stack or something.
1 reply →
> You can't rely on server-side detection either, because some of the cheats are so advanced they go to great lengths to "behave" like a highly skilled human player would with their aiming
Shouldn't that be the goal of anti cheat? That cheating is indistinguishable from expert gameplay? Seems to me like these companies are just trying to avoid implementing proper infallible server-authoritative gameplay by offloading the cheat detection to the untrustworthy client, and then trying to lock down the client to make it trustworthy.
10 replies →
The Nintendo Switch runs a custom operating system codenamed HorizonOS.
1 reply →
What is the problem with cheating or bots really?
I feel that the solution is just to have a decent ranking/level system so that users play with other people, cheaters, bots or regular users of the same level. When I was playing mario kart with my 5y old daughter, I didn't mind she had access to helps to not run out of the road as it allowed us to play together. I don't see how different it is between say, a super skilled player, and a lower skilled player with cheat/assists. If cheating/assists system becomes so efficient, cheaters will just end up playing together and non cheater will have got rid of them and play between non cheater of similar level. Prolem solved. No?
1 reply →
i am really doubting that Nintendo Switch uses Linux?... they would have to provide source code no?
1 reply →
And yet there's plenty of competitive multiplayer shooters that work fine on Linux. Rivals, The Finals, deadlock, CS2, Overwatch, Hunt Showdown, etc.
EA did a big announcement about switching to kernel level Anti-Cheat for Battlefield 6 to combat cheating, yet there's still plenty of cheaters around. It's looking more and more like an excuse in order to give the appearance of combating cheating.
You should not consider Tim Sweeney's comments on the matter as a reliable source. He was veiling his true motivations behind that statement. The Switch does not run Linux either, it's a custom OS descending from the Wii's iOS.
The cheating issue isn't really a matter of being able to run custom kernel code. You can do the same thing on Windows, which is why remote attestation is a thing for some games. As someone who has developed games for Linux (and Windows / Mac), it's an endless cat and mouse game. So long as the system can execute code that is not yours, you never really are getting perfect anticheat. Ease of loading custom kernel code isn't really a hurdle to that.
I find that client and server based in combination is the robust approach. I once implemented anti-cheat in which the server lied about game state, which a regular client without cheats would act predictably on. Deviation from that behavior is a useful heuristic to build a suspicion score.
Finding a way to get the multiplayer studios to get Linux support for their competitive games like Valve does could crack a wedge in the market for mainstream users to get in, particularly in those who don't want to pay the Windows tax (not everyone is willing to experiment or go unlicensed).
I can't prove it, but the Steam Deck has probably torn down a lot of barriers for mainstream use among the crowd that care about the game more than the OS. Getting some of the other games (League, Vanguard, Warzone, BF6, etc.) or whatever is popular in those segments onboard might be the critical mass that justifies fixing all the rough edges that get fixed when a big pile of users are represented.
Anecdotally, it took less time for me to install Devuan (not even one of the “easier” distros) and steam and start downloading games on a new machine than it took me to figure out how to decrapify vanilla win 11 after first boot.
If you want statistics, Linux’s gaming market share is 2x that of MacOS.
The barriers to gaming on Linux have never been lower. They’re certainly much lower than the barriers to running windows games on windows were back in the Win 95 - XP SP2 days (when I jumped ship).
Yeah, anti-cheat support is probably the biggest barrier right now. The Steam Deck already showed that many gamers do not really care about the OS as long as their favorite games work smoothly.
I can’t see it happening until valve adds some kind of trusted compute environment. I’m imagining online games could have a flag which enforces secure boot, boot chain attestation, and disables multi tasking features. So while you are playing the game it becomes a single task device, but after you quit it’s fully unlocked again to do whatever you want.
5 replies →
Valve doesn’t do kernel level anti cheat on Windows either. Those are the actual roadblocks.
Userland anti cheats can work (and do) on Linux if the developers want to. Most of the third party ones the developer buys/licenses already do.
But reality is that only the kernel level ones seem to work to some extent. Difference in the amount cheating between counter strike and valorant is just massive (both free to play games)
5 replies →
Quite the contrary. I care about the OS and that’s why I switched to Linux gaming. The experience wrapping the game is just so much better.
1 reply →
Arguably, the PS2/3/4/5 proved that as did the various Nintendo platforms.
Linux is one of the best Win-API platforms.
It is the absolute best for backwards compatibility: it runs 16 bit apps.
Now it is getting faster for gaming.
And the reverse relation is also true: In Linux, the best backwards compatible stable API is WinAPI.
I can play 30 year old Windows games in Linux. They just work and run better than ever.
For the same project (https://www.descent2.de), I can not even install the dependencies to compile it in a modern distro, as every library is deprecated and removed from the repositories. The precompiled native Linux binaries also can't work.
I used to love Descent 2!
People say this a lot about Linux and it somewhat rubs me the wrong way - sure, the Windows binary works if you install its library dependencies (wine). Likewise (OK, ever since libc5/glibc2 changeover in 2001) the Linux binary should work if you have its library dependencies (SDLv1 it looks like?). So what's really the problem? Your distribution stopped distributing the dependencies, making them harder to find? "DLL Hell" was a thing too.
I didn't see any binary downloads for Linux on that website, only source code.
I gave it a try anyway, the dependencies were actually not a problem for me, Debian has libsdl-{net,image}1.2-dev, libglew-dev, and so on, and if your distro does not have SDLv1 there is libsdl1.2-compat. But after the dependencies, there was a problem with the source code doing something involving bitfield packing that does not compile on x86_64.
I do see the source code has lived on, i can `apt install d2x-rebirth` on Debian 13 which has a comment about https://www.dxx-rebirth.com/ ...is that helpful?
> the Windows binary works if you install its library dependencies (wine).
Yes but all it takes is an `apt-get install wine` or `zypper install wine` or `pacman -S wine` or your distro equivalent and if you are using a Linux distro with any sort of desktop functionality, 99% of the time wine will be there.
> Your distribution stopped distributing the dependencies, making them harder to find?
Yes, this is a big problem because these dependencies not only are harder to find but even if you track all of them (there is a chance they too have their own dependencies) you still need to figure out how to build and install them. And if they are old enough for distros to drop them, then chances are building them isn't going to be a straightforward `./configure && make && make install` ("straightforward" is very relative here :-P). And woe is you if there are conflicts with newer (yet API/ABI incompatible) versions of these libraries and/or their dependencies.
Of course since you have the source, technically you can make things work, but that doesn't make the process any less of a major PITA.
After a few fixes, it builds on a debian-13. You just need to install a few dependencies (glew, SDL, curl).
The real problem here is the tooling. New versions of automake and C++ compilers are stricter than they used to be.
Indeed, for long term conservation, you need to vendor your dependencies AND your tools to make sure that the project is sustainable without intervention. But with the magic of LLMs now, this is not a problem anymore. Claude was able to fix it in less than 10 minutes.
And having the source code beats playing the original game. You can recompile in high def and make all the modifications you want to make it feel like a modern game (or not!) and sill get you your dose of nostalgia.
I have been arguing for years that Win32 is the most stable Linux ABI. Commercial games are all proprietary software, so they're more prone to breakage as the libraries and APIs they depend on change or even disappear over time.
"We now have a complete, futureproof free software stack with decades of backwards compatibility! It just has win32 in the middle."
(2019, from https://news.ycombinator.com/item?id=21776370)
Descent, Heretic, XCOM: TFTD.. All games that take me back to a special place :)
Show me the numbers. Show me an identical gaming PC running Windows 11 and then Linux, and show not just FPS - but things like frametime pacing, latency, etc.
This NTSync stuff is very impressive, but I haven't seen a lot of end-to-end numbers versus Windows. The last comparisons I saw showed pretty much every distribution on the order of 5-30% behind Windows, varying on the game. And Nvidia GPU support was still not great.
I WANT to swap. Please give me cause to do so. I'm sitting here with my finger on the button waiting for it to finally get good enough to make sense.
Your initial baseline was arbitrary. If the game had been 10% slower on Windows, would you have never enjoyed it? If not, how could switching with a 10% penalty be a deal-breaking downside?
Just do it. Swap and let go of objectivity. Let your subjective experience guide you.
For me, the subjective joy of not having to fuck around with Microsoft's bullshit was worth multiples of having to mess around with technical crap to get a game working (spoiler: I nearly never have to do that because I play single player games, Dota and CS). I couldn't give less of a damn if my FPS in some random title is 10% slower than it would be in Windows. So long as it's playable, I benefit in spades from the trade-off.
> spoiler: I nearly never have to do that because I play single player games, Dota and CS
I think most of the people who really care about game performance aren't people playing games like you do. They are either playing AAA games where the graphics quality is paramount, or competitive games where performance is useful for being competitive.
1 reply →
I mean, there are costs to swapping though. Going by just feels seems to be the wrong way to think about it.
4 replies →
If you want to swap, then just do it right now? As far as gaming is concerned Linux just works, and reaches speeds that are more than good enough to do so, even if they're not exactly the same as windows - the steam deck is pretty much proof of this.
If Linux was measurably 5% slower on all benchmarks, would that mean you wouldn't do it even if you wanted to? Is every single nanosecond of performance really that important to you? I switched 10 years ago when things were a lot rougher than this, and in the end everything still worked well enough that I never cared to swap back.
5% would already be well within the margin of difference for separate identical clean installations of windows on the same hardware.
But the issue is that it is many multiples of that, especially on the most common PC gaming hardware (Nvidia GPUs), often more than a 25% difference in framerates. Not so important at 144fps, but very important at a 60fps baseline and for genres like fighting games.
A lot of people don't mind, say, an extra 5 frames of input delay. They don't notice it. But a lot of people do notice even an extra 2 or 3.
I do think that frame pacing issues kinda do have a critical thin threshold where it's either bearable or an unacceptable difference. And the native windows version can often already be riding right on that line. So while it's not fair to the Linux version to demand better, it is unfortunately the case that it might tip over that line.
13 replies →
I gave it a try. Got a steam deck, tries steam os on my desktop.
I kept running into issues that took me time to solve. I understand that the only reason it took me time to solve these issues is because I'm new to it and that people who have been gaming on Linux for years already know how to solve them all. But what would happen was is I would sit down to play a game spend maybe an hour or two fixing issues and then after that I ran out of time to play the game. I kept this up for a couple months but honestly at some point I just gave up. Now I'm playing games on Windows again.
To be clear, I'm a huge proponent of Linux gaming. I just unfortunately am too busy these days to spend the time to get it to work.
18 replies →
I have both a Windows gaming machine and a Steam Deck, so I am already using Linux for gaming... when I can.
Some of my favorite games that I play don't work on it, though, so I need to keep my PC. My issues are not performance, but inability to play at all.
For me personally, the biggest game that keeps me from only using Linux for gaming is EA FC (used to be called FIFA, it is the soccer game). It requires Windows to play online. The same for PUBG, which is another game I play with friends.
As long as I can't play those games, I have to keep my windows gaming PC.
I personally don't mind that much, honestly. It would be nice to play on Linux for everything, but I can dual boot when I am not gaming if I want to.
> As far as gaming is concerned Linux just works
Absolutely not. It works, it doesn't "just work". Tuning is absolutely required for a lot of games to get them working. Random crashes, "oh multiplayer doesn't work? singleplayer does?", random glitches, random performance issues, etc.
I still prefer dealing with some issues over dealing with Windows, but it doesn't "just work".
I think the actual answer you are looking for is this paragraph:
> These old workarounds got subtle edge cases wrong in ways that produced occasional hitches, deadlocks, or weird behavior in specific games, which are bugs that don't show up on benchmark charts but can absolutely ruin individual experiences. NTSYNC fixes those at the source by matching Windows behavior exactly, and that means as soon as your favorite distro moves to the new kernel version, whether it be Bazzite, CachyOS, Fedora, or a flavor of Ubuntu, they all get this much-needed fix.
That's the crux of the article. NTSYNC isn't faster, it's more "correct". Most games are around the same level of performance, with certain outliers both ways. Right now there isn't anything performance wise that Linux has to do that would impact all games. Just tweaks and additions to the different layers [1][2][3] in the same way driver vendors do. Much of the poor performance is for API violations and other shenanigans.
1: https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/uti...
2: https://github.com/doitsujin/dxvk/blob/master/src/util/confi...
3: https://github.com/HansKristian-Work/vkd3d-proton/blob/maste...
> NTSYNC isn't faster, it's more "correct".
It depends on what you're using now, though. If you're just using a vanilla wine/proton install, then NTSYNC should indeed be a lot faster as well. If you're using fsync or... I forget the name of the other one... then you many not see much in the way of perf improvements.
1 reply →
If memory serves, Linux typically outperforms Windows with AMD and Intel graphics. Some of the gotchas are things like running games through Proton or anti-cheat/DRM stuff not getting the same attention that Windows does, but the raw performance is there. I wouldn't recommend using Nvidia on Linux though.
I run NVIDIA on my Bazzite box and I get excellent performance. I had to fiddle with a few things though that probably work out of the box on AMD (example: screen tearing in Steam Big Picture mode. Fix: enabling developer mode in Steam and setting "Force Composite" to true).
1 reply →
It typically will only outperform Windows *if* you are running lower-end hardware. The main thing here is that when running on Linux, your game is typically in less contention with the OS for getting access to CPU cores and RAM.
If you have a beefy CPU and plentiful RAM, then typically one should expect Linux to be slightly behind Windows performance (though there are exceptions), because then Windows' bloat becomes a non-issue, and the impact of the translation layers start to become more significant.
> I wouldn't recommend using Nvidia on Linux though.
This was true 4 years ago, but is outdated knowledge now. Nvidia used to disallow distributing drivers with distro images, but they have since made agreements with some popular distros. If the distro image you download includes drivers or you know how to install them, the proprietary drivers work really well.
Windows and Linux trade punches in terms of overall experience. What I've seen around is that if Linux has worse FPS, it tends to have more consistent pacing (it generally has better pacing - but not always, I had to abandon Once Human).
Gamer's Nexus has a pretty extensive benchmark video: https://youtu.be/ovOx4_8ajZ8?si=Cx5Q1a-lMMm14H4i . They refuse to compare to Windows, and it kinda makes sense: if it's satisfactory on Linux for your demands then who cares what Windows can do?
Here's a less professional, but direct comparison https://youtu.be/Giois6VtLPM?si=XFaVUMbea3u0AmP. An extremely important thing to note: AMD GPU. I personally have no idea what NVIDIA is like, but it sounds like their drivers are still all over the place.
And kernel-level anti-cheat doesn't work, though some (e.g. EAC) run in user mode if the developer allows it. Make sure to check ProtonDB for the games you care about. I have personally never had a good experience with Linux builds of games, so I just always use Proton now - but maybe I'm cursed because others have passionately disagreed with my experience. Either way, if a Linux game is broken/bad, try forcing it into Proton.
I don't want to say, "switch now" because it still has rough edges in terms of gaming. Better for you to have a great experience and stick around, than hate it and leave for good. Only you can figure out if it needs more time to cook based on some very light (ProtonDB) research.
I last used a Windows machine about a year ago, and I can say with confidence that the average desktop experience is significantly superior to the barrage of bullshit that Windows puts you through.
> if it's satisfactory on Linux for your demands then who cares what Windows can do?
Pretty much everyone? If bread and water is satisfactory for your demands then who cares about Beef Wellington?
If it was better than Windows they sure as hell would be comparing.
1 reply →
Depending on storage constraints, you could always dualboot. That would give you the exact same hardware to compare, and it's not a full commitment.
Anecdotally, I find that getting Linux on somewhat older or underpowered hardware is always a massive positive. Better performance as well as battery life. I'm not as familiar with modern hardware's relationship to either OS ("OS vs. some flavor of OS based on a similar or same kernel" - I know) with modern hardware. Worth a shot though!
Every supercomputer seems to do quite well with Linux kernels. Probably good enough for Crysis :)
Here are some numbers: I bought a windows box with misconfigured dram timings (bios bug).
I never would’ve been able to root cause it under windows (certainly not with builtin tools), but dmidecode on linux made the problem obvious.
Fixing the timings fixed crashes in amdgpu that windows users widely reported (with no diagnosis), and increased frame rates by 30-50%.
Anyway, if you really want to move, do yourself a favor and just go with straight AMD.
Software support is better than intel and nvidia, HW blows intel out of the water. The only exception is if you need cuda for AI dev work.
Unless you're playing CS competitively and really need 720fps for your 360Hz monitor, is 5-30% fewer frames (all else equal) really a deal breaker? Is this hardware thats barly good enough or something else?
I ask because I feel like I can frequently play games at, say, 150fps, and losing 30% would mean almost nothing to me to switch to Linux. I worry more about general capatibility and anticheat.
5-30% is what a sizable amount of people upgrade their hardware for
1 reply →
100 fps to 95-70fps is definitely noticeable, 30% is way too much.
2 replies →
Then swap! Partition and dual-boot into Bazzite. Or get an extra SSD and flash Bazzite there.
It's an easy weekend side project, and any numbers people give you will be ballparks anyway - the performance of Linux drivers for YOUR specific GPU running YOUR specific Steam games are all that actually matter.
Just take the two hours to do it. You won't regret it.
I've running the game Black Myth: Wukong on my dual boot PC systems. The OS are openSUSE Tumbleweed and Windows 10, hardware is AMD RX7800XT and intel i7. Turned out Linux is 10% faster than Windows, and more stable fps.
As others have said, try it yourself, it's very low effort nowadays. For me the lowest bandwidth option was to dual boot then load existing library with https://github.com/ValveSoftware/Proton/wiki/Using-a-NTFS-di...
Got it running in less than an hour.
A lot of the revolution is just getting within 5-30% of Windows!
If you need every last bit of FPS maybe it is lagging, but 5-30% slower is roughly on par at a large sense, it's less than the difference of e.g. one NVidia GPU generation to the next, so it makes it playable.
One problem is that having better FPS stops mattering if the frame pacing and timing is bad, making the game feel like a juddery mess. Or if there is significant input delay differences.
That's why all the data matters for all of these dimensions; game performance is much more than FPS per watt over time.
When people see "linux gaming is great now, look at the fps" it comes across as potentially disengenuous because of all the other factors that matter and should be tested. Or rather, if a reviewer is talking entirely about framerate, then I just can't trust their opinion and expertise when it comes to the state of Linux gaming.
4 replies →
Its never going to happen. Because console players by far dominate the gaming scene. Microsoft is going to push Xbox first, which will drive all development of the games, which is going to be windows focused. As such, all major release studios are going to target that.
Until we get something like CoD titles being Steam Console first, linux is allways going to lag behind.
That being said, I think we are on a precipice of AI being able to simply just rewrite games from concepts. Start with generic source code for an FPS or 3PS, then people can contribute changes in english language to tailor the game. So it won't be even copying source code, it would be copying concepts and then making a new game with it. There have been a lot of games that have very rudimentary graphics that people played in large numbers because the complexity and gameplay was quite good.
Most major platforms already have enough asset flips cluttering their storefronts[1][2] -- generic games made from preexisting engine templates with some assets bought from the store. Using AI will just make producing the slop easier, it wouldn't make something that's worth playing.
Anyone actually looking to make something genuinely fun will probably go the old fashioned way of spending countless hours honing their craft, which in turn gives them a good eye to make sure what they're making doesn't have the shovelware stink.
[1] https://www.notebookcheck.net/Sony-delists-700-PS4-and-PS5-s...
[2] https://www.gamesindustry.biz/shovelware-is-a-bigger-problem...
Faster (than previously) not Faster (than windows).
The title after the jump is "Linux gaming is getting faster because Windows APIs are becoming Linux kernel features"
Getting faster. Not at parity yet.
they installed Linux on a PS5 and somehow the Windows games running through proton get same or sometimes a little bit more fps then the native ps5 game, its crazy
I have not seen the numbers, but even a game running 10% faster does not replace the fact that many games wont even start in Linux (League of Legends for example).
Just produce your own numbers. Install whatever flavour of Linux you like (all distrohopping leads to Debian) on a separate partition and benchmark it yourself. It isn't complicated.
In the case of my machine, I haven't observed any difference. And by observe I mean with my eyes, I haven't bothered with actual benchmarks because it seems to work about the same, which is good enough for me. I haven't booted my Windows partition in months, and I'm probably just going to blow it away next time I need storage space.
[dead]
>It isn't complicated
Getting reliable, consistent, meaningful performance numbers is in fact, extremely complicated:
* You need a consistent way to reproduce the exact same outputs - accounting for things like the game's RNG. You can't just walk around and snap the FPS counter in the corner of the screen and call that good.
* For Windows (and occasionally Linux) you need to ensure nothing is running that will taint the results (updates, AV scans, etc)
* Sometimes individual driver versions work very poorly with a specific game. Just because it ran badly doesn't mean you got good data, it may just be a bug in that specific driver version
* You can't just run the benchmark once. You need to run it many times, establishing run-to-run variance
* There are often a good dozen-to-hundred individual OS settings which can impact performance, and in some cases run-to-run variance. You need to know which to tweak, and which to leave alone.
* Sometimes the result of individual in-game settings differs between driver versions. Just because setting X had a big impact once, doesn't mean it always did
* FPS is not a great metric - it's an average. You need to check and see if there are huge frametime spikes. If there are, the game will have a 'good' FPS but feel horrible to play due to stuttering.
* You need to decide if you're benchmarking more GPU-heavy or CPU-heavy - those types of benchmarks require drastically different settings. If you run a CPU-like benchmark you may see a wildly different gap in framerate compared to a GPU-heavy one for the same game.
Benchmarking properly means accounting for thousands of tiny variables. Only a handful actually do it right.
2 replies →
I actually got better FPS in CS2 using Linux
I don't even know that FPS helps in that game, to be honest.
In my experience, CS2 plays better at 150ms ping than 19ms ping. It's not even K/D ratio bias as the far away server has better players than the matches.
19ms and everyone else is just janky-warping around. 150ms and maybe there is a rollback where yeah that whole thing 5s ago didn't happen but otherwise it is very smooth.
I've been gaming on Linux since 2020 on an Nvidia GPU with no problems, including some AAA titles like Overwatch and Halo.
You want excuses to stay, not reasons to leave. There is zero cost to trying for yourself.
It isn't saying it's faster than Windows. Just faster.
[dead]
> Show me the numbers. Show me an identical gaming PC running Windows 11 and then Linux, and show not just FPS - but things like frametime pacing, latency, etc.
No.
> I WANT to swap. Please give me cause to do so.
If you won't put the work in, why should we help you? Just stay on Windows, and we'll enjoy our Linux gaming rigs.
I support linux gaming btw but I can't help but feel every narrative glosses over that certain games are going to require uncomfortably intrusive anti-cheating systems.
I'm just realizing that I can't play Battlefield 6 and I do wonder what the path is. I don't think it's ever going to be supported on Linux or Mac.
Unfortunately, the alternative to uncomfortably intrusive anti-cheat is more cheaters, because cheaters don't care about how intrusive their cheats have to be in order to evade anti-cheat. They will happily run hypervisor-level cheats.
There's certainly room for improvement on the netcode sometimes (Client-side hit registration is an absolute bone-headed design), but those won't prevent aim bots.
Server-side anti-cheat relies on heuristics and can easily be evaded. At the high level, a highly-skilled player may be indistinguishable from a cheater, so you could easily get false positives.
I get that people want to play games with randos and 13-30 yr old basement dwellers on the internet, but the idea never appealed to me.
If the vendors said: Disable anticheat and we’ll block you from tournaments / matchmaking, I’d consider that a feature, not a bug.
If some IRL friend of mine wants to be an asshole and use auto aimers / see through walls to screw with me, then I have ways to deal with it outside the game.
On the other hand, if we both want to run some bullet hell mode + cheats with physics mods and a debugger attached, then what’s the problem?
It’s none of the game developer’s business.
I’m not sure if I am in the minority or majority, but I’m not the only one with this attitude. I suspect the set of people in this boat dwarfs the 5% market share Linux currently has.
They might even get some of us to buy their games if they added support for such a mode. How hard could it be?
6 replies →
I don't think that's necessarily true, I think companies are lazy and highly invasive anticheat is an easy win they can license from a 3rd party. Algorithmic security, server-side heuristics, and human review can get you far. I have very, very rarely seen a blatant cheater in Overwatch (maybe 3 times in 10 years?), for example, and yet it's been playable via WINE for almost its entire lifetime.
6 replies →
Hypervisor anti-cheat is old hat. The current 'state of the art' is either a DMA card that pretends to be a sound or network card but really is constantly reading and writing directly to RAM in the game's memory space.
The other 'state of the art' which is much cheaper, easier, and essentially impossible to detect on a hardware/equipment level, are the AI-based systems that examine the video and generate inputs via USB, emulating controllers or keyboards and mice. It's a huge problem on console right now and can only be detected via server-side analysis.
1 reply →
What is even more insane is I was playing Battlefield 1 on Linux for years, until in 2023(?) they backported "EA Anticheat" to BF1, half a decade after the game stopped getting support.
This broke what was otherwise a perfectly normal Battlefield experience. Battlefield 4 requires Punkbuster, although it can run on Linux with no issues. You have to downgrade to an older version though, since EA hasn't updated BF4 to the latest PB AC, which causes you to get kicked.
The fact that some games now come with root kits is insane. I really hope Microsoft cracks down on that nonsense.
Given the kernel level anticheats inform you they're going to be installed, I don't think they fit the definition of a root kit.
1 reply →
Battlefield 4 plays great on Linux, with active servers and functional crossplay/anticheat. It's usually less than $5 on sale and satiates my transient BF urges.
I developed for windows before moving to linux. I was surprised to find that was no system call similar to windows WaitForMultipleObjects. Sure you can implement something similar using poll() or using condition variables. but WaitForMultipleObjects seems so much simpler and more versatile
The article mentions this: "A few years back, Linux added a way for software to wait on several events at once, which is something Windows had built in for decades, but Linux didn't."
This is not really my area, but from a quick web search, I think they mean io_uring. Here's a blog post about it: https://mazzo.li/posts/uring-multiplex.html
No, I believe it's futex_waitv
1 reply →
I thought that's what NTSync was all about?
https://docs.kernel.org/next/userspace-api/ntsync.html
A lot of that flexibility is what makes it hard to efficiently emulate (especially without kernel level support), but some of it seems too flexible to make sense as the default choice. How often does a video game really need a lock that can be shared between processes, and why should that lock type be the one that a game engine uses for almost all of its locks?
> How often does a video game really need a lock that can be shared between processes,
What do you mean? SRWLock (or the older CRITICAL_SECTION) cannot be shared between processes. A (Win32) Mutex does work across processes, but that's its entire purpose. So Windows does have different tools for different jobs.
In fact, it's really the other way round: on Linux, a futex also works across processes, but there is no equivalent in Windows. (Sadly, WaitOnAddress can only be used in a single process.)
It very often being used for thread management inside single process etc. Very convenient. Nobody says it has to be default.
How often does a video game really need a lock that can be shared between processes,
That seems hugely useful for interprocess communication and I can immediately think of reasons to use IPC in a game. Having a separate voice process for one.
24 replies →
Epoll / select? since everything is a file, you can wait on everything.
The last time I asked the same question here, user dwattttt finally pointed out[1][2] to me that there is a significant difference: wfmo can actually acquire semaphores in addition to waiting for them, which poll can't do in a non-racy way and efficient way. It can also do rendezvous synchronization (i.e. signal-and-wait).
[1] https://news.ycombinator.com/item?id=47513667 [2] https://lore.kernel.org/lkml/f4cc1a38-1441-62f8-47e4-0c67f5a...
Its IO completion ports I miss.
There's been real progress. Wine's memory allocator had an architecture with three nested locks. "Realloc" held a futex lock on the memory allocator while recopying the buffer. Multiple threads doing allocation could go into futex congestion, with many threads looping on the futex. This made Vec::push in Rust insanely inefficient. Some of my programs dropped from 60FPS to about 0.5 FPS.
Fixed in Wine 11.0. Thanks to the Wine team.
Not sure if this was related to NTSYNC, but Wine's locking infrastructure definitely got an overhaul.
I use Bazzite for all my gaming (Returnal at the minute) and it works unbelievably well. I don’t tinker with any of the proton version. I just press play.
I recently completed Stellar Blade with zero issues.
I don’t even shutdown the machine, I just hit the power to sleep it. Instantly resumes where I left off.
Incredible to see just how far it’s come.
im using bazzite with an amd cpu and amd gpu and sleep doesn't work properly? what motherboard/cpu/gpu do you have? did you have to do something special to make it work?
I’m using an AMD cpu and an Nvidia gpu and it worked out of the box.
2 replies →
I predict that ntsync will eventually evolve into full blown ntoskrnl.ko and there would be virtually no overhead on calling Windows API. You can almost call it a Linux Subsystem for Windows.
It would be fun to call it Windows Subsystem for Linux!
which would be the right use of the term. WSL was originally called LXSS = linux subsystem. As I understand, lawyers stepped in soon after.
5 replies →
I wonder what spanners Windows can throw into the works to slow them down at this point, or if they're so checked out of the Desktop market as they suckle down hard on that Azure teat, that they're more than happy to let Linux eat their lunch
You are not gonna get promoted slowing down Linux gaming at MS today, the thing they want is Netflix of gaming where the platform doesn’t matter but everyone’s paying them $20 a month
That ship sailed when they let Xbox rot over the last 6 years. The platform feels pretty dead since about 2020 or 2019 and they didn't take advantage of making a cheap android based or Windows 10X based streaming stick with a controller to lock people into the cloud and leverage phones. Controller and keyboard support is still a hot mess on Cloud Pass.
2 replies →
I think this, as a business model, really relies on them also selling the licenses to the OS that you're using as well. Otherwise, gamepass would be on MacOS already, no?
5 replies →
You’d think that but Xbox game pass games still won’t natively run on Linux.
Microsoft/Xbox is in the process of losing the living room permanently in the next gen if you ask me.
I don't know what they could do spanner tossing wise to really screw w/ Linux gaming at this point that wouldn't just drive more frustrated customers off their platform.
Their strategy WAS GamePass - get a bunch of users accumulating huge collections of inexpensive-but-high-value games, paid for via a subscription (rented), that are only playable on Windows (enforced via Microsoft's own software and an account login). Use loss aversion to prevent the users from letting their subscriptions lapse.
They made a tactical mistake by trying to directly monetize the GamePass subscription instead of having it remain a purposefully-underpriced vendor lock-in mechanism. Whoops.
Hmm.
Me and all my dad friends are all signing up for XBox accounts so our kids can play Minecraft. So IDK about that.
1 reply →
That might make room for Apple to finally try. The AppleTV is already in a similar tier to modern consoles, as far as specs and benchmarks go. Most of what's missing is a first-party controller and a marketing push. Disk space is tight, too, I guess. Still, they're most of the way to having a horse in the race, if they want to.
I reckon a successful launch of the Steam box (or whatever they're calling it) with its enormous library could develop into something that really challenges what's left of Microsoft's piece of the console market (and threaten Sony a little, for that matter) though it's looking like the memory shortage is gonna kneecap that by forcing the price too high. Bad timing.
7 replies →
Lock future game developers in to a corner forcing them only to produce compatible for WSL, Windows for Linux releases. Restricting the license of use on GNU/Linux.
Their gaming marketshare is minuscule both on PCs and consoles already. It's a downward spiral for years already.
9 replies →
Given how popular Steam Deck and fiends have gotten I wonder if companies would avoid it because it could noticeably hurt sales until it’s added to proton.
My theory is that Microsoft is paying Adobe billions never to release their tools on Linux. It's Windows' last stronghold.
They can’t, they’re selling backwards compatibility - but it matters less and less each year as more stuff moves to the browsers.
Really their best card is new and additional APIs, building incentives to develop against it.
WinRT (not to be confused with Windows RT, the early ARM version of windows), UWP, GDK, xgameruntime. All of these are relatively new and require virtualization and other security features.
Put pressure on devs by gateing xbox and gamepass behind this runtime and now you have a lever to make the situation more difficult for linux.
Kinda has the opposite effect on me however, as the only reason I'm not subscribed to gamepass right now is the games wont work on my steamdeck. But if MS can get enough killer apps as exclusive to that platform then that will certainly add some pressure.
MS does not care. At all. This doesn't affect anything that they make a profit on.
This is a fluffy, non-technical article so I googled NTSYNC. It seems like they implement Win32 events, semaphores, mutex and WaitForMultipleObjects.
It's curious that they didn't do this as file descriptors that can be epolled. For example I think you could do semaphores and events with eventfd(2), which always struck me as inspired by those Win32 objects somehow. But maybe this is a simpler purpose built interface.
isn't this how esync works?
edit: i think so https://github.com/zfigura/wine/blob/esync/README.esync
It's actually been a couple of years since I ran across a game that didn't work well on Linux. At most, I have had to bump the default Proton version.
It really depends on the type of game you play. As everyone points out, kernel level anti-cheat is a problem on Linux, but also games that require odd controllers have trouble as well. One game I play, Farming Simulator 22, doesn't work well on Linux because they use the raw windows input from joysticks and wheels. You can still play with mouse and keyboard, but the fun isn't there.
I was pleasantly surprised at just how many of my games worked well on my new Ubuntu install. Even more so at how many games are playable on my Xubuntu Chromebook install.
I have occasional issues mainly with graphics drivers or anti-cheat. Otherwise thought it's remarkably stable. I've also gotten a lot of non-Steam games to work fine.
Same. I admittedly don't play a lot of new games, and I don't do online games, but like 95% things Just Work when I load a Steam game on my box. The remaining five percent are fixed if I change the Proton version to GE Proton.
I played through Miles Morales at full specs a few weeks ago, and it ran just about perfectly as far as I could tell.
On the games that won't work well, last time I looked at it anything VR was a huge PITA (e.g. https://github.com/chaosmaou/wivrn-guide)
That's where Valve's Frame brought huge expectations.
My linux gaming experience has left me with a wierd irony... I have been stealing windows for the last 25 years and never ever felt like i owed M$ a cent. Now after totally switching to free stuff i suddenly feel (not in a bad way at all) a kind of debt to open source developers for just making cool stuff and putting it out there for me to use and play with and i'm not doing a crime anymore!
It may finally be the year of the linx desktop. Microsoft actively being hostile to towards Windows users can't last forever.
It might be the year of Linux gaming systems. The desktop went from terrible to bad and is still at least a decade behind unless some organisation invests dozens of millions and gets themselves an actual professional dev team.
The Linux desktop won not with a bang, but because all of the Windows users realized they would be happier with iPads.
If you competitor starts fading faster than you improve, eventually you’ll pass them no matter how far ahead they were.
It can't be neglected that Microsoft is alienating its own power users on such a level that they are now considering switching over and bringing all their know-how with them. Linux gaming is also faster because there's more developers interested in making gaming work outside of the Microsoft dominion.
Man if only they had a leader at Microsoft that was famous for prioritising developers.
They still prioritize developers, look at .NET Core, Typescript, NPM, Github (lol), but the problem is that they're not Windows exclusive enclaves anymore. In fact, I'd bet most people now deploy (and probably develop) .NET Core on non-Windows machines.
I remember when XDA was the home of Android homebrew hackers working on things like CyanogenMod. It's so strange to see it repurposed as the brand for the same quasi-correct tech article slop that gets parroted between all the big blogs.
Tom's Hardware is a bit before my time, but I remember it being well regarded. I've seen a lot of similar articles under that name lately. I wonder if they've undergone similar fates.
Same with all the bigger tech blogs from a decade ago. How-To Geek is completely overrun with the same sort of slop. Finally had to remove it from my RSS reader.
Oh look at that, XDA and HTG are both owned by Valnet:
https://www.valnetinc.com/en/technology
At least Anandtech just shut down rather than turning into a zombie tech blog.
private equity, what would we do without you?!
I get a lot of XDA articles appearing in my Google News feeds and a good chunk of the ones I read definitely have the slop half baked vibe to them. Where they barely provide much substance in the article and sometimes barely even address what the article headline said. They also pump out so many articles about the same topics. I swear I've seen like 100 articles from them just on Obsidian Notes alone and so many of them are barebones and lackluster.
There is the odd decent nugget in there, but it is a shame seeing them fall like this. Unfortunately the same sentiment is true about most news sites now.
This is not just a Tech Journalism problem, but applies to a lot of other Journalism.
Tom’s Hardware was a fantastic site back in its heyday. Very highly regarded.
The same happened with AndroidPolice
If you purpose build a Linux gaming PC, would you lean more towards AMD GPUs over Nvidia?
AMD. The final holdout, HDMI 2.1 support being blocked by the HDMI group, has been overcome w/ the HDMI group relenting and support is now landing in the kernel (expected in 7.2).
https://www.gamingonlinux.com/2026/05/further-expanded-amd-h...
I sort of figured that HDMI stupidity was strategically a good thing as it sort of brought the dynamic of the HDMI consortium and VESA. specifically how they treat the end users, more to the public eye.
That is, more people being subtly pushed to using display port is not a bad thing.
9 replies →
I didn't follow this story much: how exactly did they get past the legal hurdles? Or there never actually were any hurdles, just sabre rattling?
1 reply →
Hoping they'll also add VRR - that's the one thing that isn't currently working with my DP->HDMI adapter setup, 4K@120Hz already works fine.
any reason why we are using hdmi over display port?
35 replies →
AMD does a lot of work to ensure their support for Linux is first-class. With the kernel now natively supporting their systems, you can expect good support. It's earned them some good will over Nvidia which has gotten better recently with the rise of AI, but still requires users to jump through a couple of hoops due to their attempts to protect their IP.
It is more than that, I really like openbsd as a desktop system. This is niche enough that I have zero expectation for any sort of support from the hardware vendors. However, because the amd drivers are opensource. Heroic people in the obsd dev community are able to make it work there. I don't strictly need a gaming gpu for my desktop work, but it is nice to have a setup I can boot linux on to play games with.
Heroic because the amdgpu driver is strangely huge, more code than the rest of the obsd kernel combined, It has something to do with gpu's having no isa stability and the generated code for each card present in the driver.
Perhaps more importantly, AMD enables others (community, Valve, etc) to do the work themselves when they have different priorities from AMD.
I built a Linux gaming PC a few years ago, running Bazzite.
AMD is much better. Nvidia has been improving but stuff "just works" with AMD because the kernel (amdgpu) and userspace (RADV) drivers are open source. Valve is a major RADV contributor too.
I don't feel like I'm missing out on anything with my 9070 XT. Performance is great.
Nvidia makes a fine GPU. The problem with Nvidia on linux is the drivers. You're beholden to Team Green for driver updates, and when they decide not to support a GPU anymore, that's it. Now, linux does have the nouveau driver, but that doesn't support all the hardware or much 3d at all, and never will.
I particularly got fed up with Nvidia on linux playing War Thunder - I had a regular crash that Gaijin and Nvidia each blamed on each other, and I never did get it fixed.
Nvidia driver updates can also leave you stuck with no desktop environment on occasion and while fixable, it's a pain in the rear. However, when the drivers are right, Nvidia performance is second to none.
AMD has drivers built right into the kernel, and as long as you have whichever nonfree firmware repos your distro supports (I use Devuan, a Debian derivative), AMD cards 'just work'. If using xorg, install xserver-xorg-video-amdgpu for modern cards, and xserver-xorg-video-radeon for older cards. I'm currently playing on a Radeon 9070 (non-XT) on a 1440p monitor with plenty of performance. I know that it also works on wayland, but I have no experience there.
open source nvidia is an area to keep an eye on. check out NVK and nova.
I think this gets overblown a bit. AMD is better, but Nvidia can work. There's plenty of valid reasons to put in the extra effort and go with Nvidia.
AMD began the process of open-sourcing their Linux graphics drivers more than 20 years ago. At that time, they had no working open-source drivers yet; they'd only just released some hardware documentation. I told myself then that if they came through and delivered open-source drivers, I was an AMD customer for life. I've more or less held to it. I don't remember the last time I considered NVIDIA an option.
NVIDIA has apparently open-sourced the kernel drivers for their most recent couple generations of graphics cards. That's great! But they have a hell of a lot of catching up to do. Their kernel drivers aren't in the mainline Linux kernel. Their userspace drivers are proprietary, whereas AMD's are open-source. AMD's kernel drivers are built into Linux and their userspace drivers are built into Mesa.
That history of greater compatibility matters in its own right: all of the developers of Linux desktop environments, window managers, and compositors have been running AMD or Intel GPUs almost exclusively for many years.
If "voting with your wallet" means anything to you, or you want things to "just work", AMD is the clear choice and it's not even close.
If you already have NVIDIA hardware, by all means, go ahead. It's doable. But AMD is a way more rational choice on Linux for most users.
I hope this is right, because "you have to use AMD GPU" is not what people want to hear when building a PC.
10 replies →
I run Steam on Ubuntu with a "GeForce RTX 2070 SUPER" (according to lspci), and while it generally works it has some weird issues with gaming in Linux. Some games end up with what feels like ~200ms latency for no apparent reason, and frame rates on some things like Just Cause 3, which I ought to be horribly overspec'd for (a 2015 game) run comfortably, but just barely, which really isn't right. And Persona 5 gets about 2 frames per second in Linux. My Steam Deck pushes it at 60 at 720p with no problem, and I think was pushing out 1080 at one point quite playably, and I think I benchmarked my PC at ~6 times more powerful than my Steam Deck.
Whereas the AMD-based Steam Deck always does what it should do.
Right now AMD is the better choice due to support from Valve. It might change in the future due to Red Hat's effort.
Def AMD. And if your focus is gaming I’d give SteamOS a go. With a full AMD setup you should basically be plug and play.
AMD has provided great support for far longer, but newer Nvidia cards which support the nvidia-open driver should also be good.
Still, if you don't absolutely need CUDA, then AMD provides better value anyway.
People say you will have less problems with AMD but I am using a Nvidia GPU for years now (on Cachyos and Pop OS) without issues. I'm using Steam and Proton pretty much exclusively though.
Which card and which drivers? I switched from Windows 10 to Xubuntu last year and have had endless issues with my Nvidia card (GTX 970). At the moment, I can't even use the desktop without annoying flickering & hard to diagnose / fix bugs.
Its an old card so I have no idea why I'm still struggling to get it to work. Is it perhaps because I'm using Xfce? I heard that Nvidia cards play better with Wayland although I haven't tested this myself.
3 replies →
Nvidia on desktop has been mostly fine, if not rock solid, on the happy path they provide.
But their happy path hasn't included proper wayland support for a long time.
Nvidia on laptops? Insert the famous Linus Torvalds meme here
4 replies →
I bought AMD as my last GPU purely because it meant I didn't have to stress out about how I was actually going to acquire one. I just walked into Microcenter, picked one off the shelf, and checked out. It was the crypto craze then, and I get the impression that this hasn't changed much today with AI sucking all the oxygen out of consumer electronics. Didn't care very much about DLSS or any other Nvidia specific features. That AMD works well on Linux only sweetened the deal.
AMD for sure. Years ago for Linux NVIDIA was the sure winner. At the moment, AMD beats it out soundly on both cost and performance. ie, the same game running on either an NVIDIA or AMD GPU in Linux will generally run much better on the AMD GPU.
Either. If you want Nvidia features like DLSS then go with NVidia.
I technically have both in one laptop with an AMD iGPU and an RTX GPU. Most of my problems with archlinux is running a 240Hz HDR monitor on dGPU, where the NVIDIA firmware glitches into buffer out of memory errors not reading the CDID properly, and this was solved only less than a month ago with latest beta driver. Lingering problem is waking from memory with crashed plasmashell but this one is KDE Plasma specific, while the monitor one is Linux wide.
Just anecdata, but I just got a Lenovo T16 with AMD. Graphics is just painless, everything works with no issues. My old system with an Nvidia card running the same O/S keeps running into weird issues. It mostly works, just needs attention and little tweaks and extra stuff sometimes.
For gaming and desktop use AMD is great, though for raytracing you'll need newer cards. If you want to run local AI models too then AMD is quite shaky, rocm only supports a few cards with each version and their software stack just isn't as polished as nvidia's.
AMDs are much better supported. There is life with NVIDIA GPUs too, I am on 4070Ti currently doing fine, but for new builds AMD is clearly a better choice with better drivers
End of 2024 I did exactly that. Ryzen and RADEON all the way. Rocking Fedora right now but was using Ubuntu for a bit. I have no reason to use Windows at all.
AFAIK none of AMD's offerings match the 5090 for pure gaming performance, so personally that's what I would stick with regardless.
Sure, if you're made of money. For the rest of us, AMD gives you more bang for your buck. Though in this market, it's hard to argue that any of them give you good value.
yes absolutely -- although I did use Nvidia GTX 1070 for a bunch of years without much of an issue, and I still believe Nvidia gets you more "bang for your buck", I would only buy AMD cards now due to the more integral support with Linux gaming.
yes
both are shit
I used a recent nvidia blackwell GPU with linux, periodic crashes. Blackwell generation is shit.
Used recent builtin AMD GPU... Even worse, super reproduceable X crashes when using firefox
In good faith, you can't really say "[x] is shit" if you don't have an usual setup; X11 is no longer the default on most distros. Even when I was also using it, it never crashed.
I don't know whether your GPU is older than mine or not but I have the RX 7700XTX. Maybe it had a software defect...
3 replies →
I have been a gamer for all my life, I have many PCs, until early 2024 one of them had to run Windows for gaming. I quit Windows, and didn't have to quit gaming, thanks to Steam's Proton + WINE + everything else. Now, because I have Steam compat activated by default, when I download and launch a new game, most of the time I do not know if I'm running a native version or if I'm running it through Proton.
I also can run Windows games from the 2000s or 90s that didn't not work in Windows 7's basic compatibility options because of old video drivers and whatnot. They run just fine on Ubuntu through Steam, just add the exe or installer as non-Steam game, add Proton and voilà, also sometimes there's some headache around making it work when the exe requires the CD inserted to play, even though I have mounted the CD files in a drive in the wine/proton prefix. I wish there were scripts to do that easily, even adding the exe as non-steam game, changing the name, etc. is not very convenient, I wish there were scripts (Lutris does some of that but not the CD part).
I should also mention that I do not play competitive multiplayer games that have kernel-level anticheat anymore. Check out https://areweanticheatyet.com/
I was gaming on Linux when steam first came out for that platform, but there were too many broken games. Tried again with Proton debute, and more problems. I switched back to Win10 for about 5 years on my gaming machine, but the push to Win11 made me want to try linux again for gaming. I installed Guix and Steam, and I am still just floored at how much progress Linux gaming has made in 5 years. Basically every works, and it feels only imperceptibly slower than gaming on Win10. I'm on AMD card, so ymmv!
I'm about to beat Lies of P :)
This is good to hear, but I get 120FPS on Windows in Cyberpunk 2077 and ~70 on Ubuntu. Horizon Zero Dawn is much worse, and quite often drops to seconds-per-frame instead of frames-per-second, if I turn on dynamic scaling. I just have an ssd with windows on it for gaming and boot to that from the bios. Also means my headphones UI works too. But, to be fair, the fact that I _can_ run Cyberpunk and HZD if I want to is pretty impressive.
Win32 - the #1 stable userland ABI for Linux!
I switched to Linux for everything but AAA FPS PVP games last year and have had a great experience so far.
Steam+Proton makes everything I play just work: Helldivers 2, Slay the Spire 2, No Rest For The Wicked, FF7 Remake, Stardew, modded Lethal Company (using r2modman) are the main things I've been playing recently, and all worked out of the box with Proton.
My PS5 controller may have needed me to install one package or something but has been working flawlessly after that.
I keep a Windows drive around for stuff like Apex Legends, Battlefield 6, but I pretty much never boot into Windows anymore except for those.
(I probably sound like a shill at this point, having commented something like this on multiple Linux threads now, but I continue to be impressed at how well Linux performs for gaming these days!)
I remember two decades back when Games for Windows was introduced with Vista, I wrote an article that this was killing gaming. As a PC (master race) gamer back then, I didn't always find it appealing to think that PC games had to have gamepad support etc. To be called and have the Games for Windows logo.
Now seeing Linux just absorbing Windows APIs into the kernel to make gaming work better? That is the opposite direction. This is what PC gaming needs.
I got into PC gaming when I got my Ambra Hurdla SX25 in 1992. Back then it was the fantastic era of first for everything. We got Comanche, Alone in the Dark, Dune, Dig, etc. First of all game types, not just clones of the same concepts.
A great talk at a conference given by Elizabeth Figura, the main developer behind putting NTSYNC into Linux:
https://www.youtube.com/watch?v=NjU4nyWyhU8
It’s wild to think that the "Year of the Linux Desktop" didn't happen because of a massive marketing push, but because the kernel just slowly absorbed the competition's DNA.
https://store.steampowered.com/hwsurvey/
How do I actually see the graph?
All I see is stats for April:
- Windows 93.47% +1.14%
- Linux 4.52% -0.81%
- OSX 2.01% -0.34%
Valve doesn't keep a historic of the numbers, you will have to do with people that collect them and aggregates them https://www.gamingonlinux.com/steam-tracker/
The fundamental difference between Linux and OSes like Windows, macOS, Android, iOS, is that the people making Linux are simply trying to make it good, give it as many features as possible, let the user do as much as possible, make it as easy to use as possible.. Whereas the design of the others is guided by a bunch of weird business-goals and internal politics that constantly change.
That's why Linux keeps getting better while the others keep getting worse.
Are there 2 things called fsync now?
I had to ask google, because the article fails to explain it. Google says yes, this is something else than the fsync syscall (man 2 fsync).
ntsync was out already for a while. And it's not necessarily faster than previously available esync and fsync, but it's more correct and clean.
Personally I don't know if this is some weird compatibility stuff for Windows apps, or the reason why Windows apps on Linux, whether running via Wine or being ports, rely on these apis because no good alternatives exist.. And if these apis are going to be used/useful for stuff beyond Windows compatibility, for native Linux apps.
Which is a weird thing to think about, and not sure very lovely.
I found the computer in the article more interesting than the fact, that gaming is getting faster under Linux.
https://www.kickstarter.com/projects/944362954/bapaco-the-wo...
Interesting, but I wish it was half the size folded...
Linux gaming is fine unless you want to play something with anti-cheat, which is basically any non-Valve competitive multiplayer title.
What excites me is that the kernel gets better not only for windows games but can also get benefits that can be more general purpose, such as what the article writes about: program able to wait for multiple events at once.
It will be interesting to see how native Linux games differ in what fancy under the hood kernel or syscall features they use.
There will never be native games that use unique Linux kernel features because no studio will waste their time spending those development resources on an OS with even 10% market share, which Linux is nowhere near. The exception would be if, say, Playstation switches to Linux from BSD, which they will never do, as GNU licensing in essentially fatally incompatible with copy protection and anti-cheat functions.
I doubt it, if Linux can consistently prove to be more performant and easy to use compared to windows and have decent marketshare, it will see adoption by serious game studios.
Sure it might take at least 20 years I assume.
But definitely a possibility.
NTSYNC seems quite cumbersome to use for your own linux software though
> The ntsync driver creates a single char device /dev/ntsync. Each file description opened on the device represents a unique instance intended to back an individual NT virtual machine. Objects created by one ntsync instance may only be used with other objects created by the same instance.
So you need a server process that can open the char device and hold onto the fd that you can then request through a Unix domain socket.
I was under the impression that most windows games copy and anti cheat protection won't work in Linux. It often has a kernel mode driver to prevent you emulating things, using debuggers etc.
What changed? Do game manufacturers make special versions with toned down anti-cheat specifically to run on the steam box/Linux?
No, simply 95% of games don't have copy and anti cheat, and some anti cheats run ok on Linux
Nothing. Majority of those games do not work, but they are small percentage of all games on steam. Most is just small time developers trying to hit some big niche for big money, like Stardew Valley or Terraria or Meat Boy.
I stopped using Windows all together two years ago, and since then Linux gaming has made huge strides. Almost everything is playable now with the exception of Kernel AC games - which I don’t play anyways. The success of the Steam Deck has been an integral part, and Vulkan performance is similar if not equal to DX.
Seeing XDA brought up some good memories. That's the website that really got me into software engineering. I remember trying thousands of different ROMs every month and changing phone every 6 months. My username is still there and seeing the forum still alive and well is awesome!
I'm very happy with my Linux install. After almost 2 decades of trying Linux Desktop and falling back to Windows (and MacOS) I've finally switched to Linux (and MacOS).
The only thing missing is my Adobe stuff. I now run Lightroom in a VM and it's incredibly slow to unusable.
I only hope this eventually reaches enough coverage to support media production. It’s the last commercial area I care about. I’m entirely willing to pay for good work here (and have) but both major commercial desktop OSs are exhibiting significant warning signs of contempt for the users.
Meanwhile I'm over here, trying to get Age of Wonders 1 to run and completely failing on everything spare a laptop with an old Windows 7 installation. Linux API aping (sorry) is so good that they even exhibit the exact same CTD as Windows 10 with this game.
Anyone move completely over to Linux for gaming? What is the experience like and what are you using?
I am, I have an Nvidia 5070 Ti, Aurora for my OS (from the same people as bazzite, but I'm a light gamer so I'm fine using flatpak steam/heroic/etc). the only problems I've faced are
- occasionally an online game breaks and it's usually fixed within a day or two. for example at some point a Battle.net update broke the launcher under Wine some time last year, then for a while Overwatch would intermittently crash once every few sessions. I haven't gamed on Windows in years so I can't even compare anecdotally, but I suspect Windows is probably slightly more stable with live service games. I've never had any issues with a single player game, period. (YMMV)
- DX12 performance is 10-20% worse on Nvidia. This should be improved Soon (TM) - I think the last piece is https://github.com/HansKristian-Work/vkd3d-proton/tree/descr...
- Some anticheats block Linux - the only times I've switched over to windows in the last year have been when some friends wanted me to play Marathon with them
- Running 'sidecars' alongside your games or modding works but is generally more of a hassle with wine
things I didn't expect to work but do:
- Game streaming with Sunlight works fine to Samsung TV via the TizenOS Moonlight app
- Nvidia had suspend issues for a year but those have all been sorted out the last few months
How is the support for mods and trainers like WeMod? I use them sometimes when I just don't want to grind.
Yeah, I completely ditched windows about 3 years ago now and I haven't looked back. My taste in games definitely helps, I mostly play indies and older games.
I've only run into a few big issues. One is that gamepass doesn't work at all (of course) so I cancelled it when I switched, but between price increases and BDS I would have cancelled anyway. The other is anticheat like everyone says, but the only game I've actually run into this with is Fall Guys (I only play this every few months and it usually works with some fiddling but sometimes it doesn't). Other multiplayer games like Rocket League and all of the Valve ones have been fine.
The only issue I can remember running into on a steam game was a crash in Civ V multiplayer that had an easy to find workaround. Outside of steam I've had a few small issues with older games from gog like Arcanum and KOTOR2, but my understanding is that these are fairly buggy on windows too.
I moved about 4 months ago to Bazzite on my nvidia RTX 3080 desktop.
What worked fine:
- All steam games I tried (mostly indie but I did play Cyberpunk 2077 beginning to end and Satisfactory) all with 0 issues
- Overwatch over battle.net
- Accessing SMB partitions is easier than windows (although it is a bit weird how KDE handles it)
What caused problems:
- Linux doesn't support HDMI stream compression so you can't do 1440p @ 165hz with HRD on over HDMI 1.4, so I turned down to 120hz (my monitor doesn't have HDMI 2)
- battlenet is a bit annoying to set up (needed to mess with proton version) and sometimes craps out when I launch it. One time after an update it completely broke and I had to reinstall. Never had I to do any CLI stuff to fix this
- I ran into a problem that caused toast notifications on both steam and battlenet to memory leak and take several gb of ram and high CPU. Disabling toast notifications fixed the issue, I believe this has been fixed upstream in Bazzite/KDE.
- I couldn't get HDR working on Overwatch, apparently you need some proton CLI args to enable it and I just didn't want to bother.
- Once after a big update Overwatch completely crapped out and I had to reinstall the game. I could actually launch the game but it felt like textures were missing or shaders weren't compiled, it was very weird.
Overall I am very happy with no plans on going back to windows. Apparently the main report of problems are people using laptops with mobile nVidia GPUs, and older nVidia GPUs (1000 series I think).
Overall experience is very good with AMD graphics. Most games run on Steam out of the box. There are also emulators for all the systems I've wanted to use. I use Faugus Launcher for other stores like BattleNet and Epic Games (Magic Arena).
For the most part the games just work, it's more system issues that I've run into where Linux suspend mode and the audio stack can be a little flaky and required Claude to diagnose and sort out.
Nvidia has gotten a lot better over the last 2 years as well. There are still driver bugs that are somewhat annoying. It's also annoying that the driver is out of kernel. But otherwise, the open source nvidia by nvivia works just fine.
1 reply →
Do Epic titles even work on Linux? I thought I read somewhere that Tim Sweeney hated Linux and does whatever possible to make sure Epic's games like Fortnite don't run on it.
I gave up trying to fix issues with hibernate and audio on linux. I just leave my machine on overnight
love linux but the audio situation has always been bad.
The last 2 LAN parties we didn’t play anything that didn’t work extremely well on my AMD CPU + NVIDIA GPU Pop!OS Linux workstation.
And I didn’t expect: VR streaming works flawless, too. I just had to buy a WiFi 6 usb dongle.
I've been gaming on Linux (Fedora) exclusively for ~10 years, and in that time able to play any new release that interests me so long as it doesn't have egregious client side anti-cheat.
my son, and his friends all seem to have switched to https://garudalinux.org/ recently for gaming. Seems to be working out well for them.
I'm working and gaming on Garuda for over 3 years and not planing to switch any time soon.
It runs super smooth, with the build in 'wayback machine' and 'curated' Arch distro (7.0 zen kernel just dropped a week ago) pretty much bullet proof for beginners or as a daily distro if you want to get stuff done w/o caring much about it - just loving it. On the other hand side you have cutting edge gaming tech like wine/proton staging versions per default, so I'm playing Blizzard games with NTSYNC (the tech from the article) for several months now :) Forgot about most of the flashy default UI though :D
Pretty cool distro! I switched to Bazzite myself but I've also seen a lot of popularity for CachyOS for gaming rigs.
That's exactly the kind of flashy, gaming-forward distro I was drawn to as a teenager. Good times :)
I sometimes wonder if my modern machines could run Sabayon's DE with high performance.
1 reply →
Earlier: https://news.ycombinator.com/item?id=47507150 (1306 points, 50 days ago, 508 comments, same site even)
Crazy to think that it took over 35 years for the superior technical fundamentals to matter.
It's true what Max Planck said that science advances one funeral at a time. So does the tech industry as a whole.
Having migrated from Windows11 to Popos/Nvidia, Minecraft is ~20% slower depending on shaders installed and distant horizons mod. TF2 is also slower but both still fine.
One canary I have for Linux vs Windows is whether Bloomberg ever support Linux natively on the terminal. You can actually use the API from inside WSL quite easily already.
I love that I am a part of this with my Steamdeck. Hands down great machine and absolutly incredible what you can do with what I thought to be be quiet limited hardware
Headline says "Windows APIs are becoming Linux kernel features", but only provides two actual examples? It lists NTSYNC, and waiting on multiple events at once.
ability to make some filesystems case-insensitive was also added for wine
https://www.collabora.com/news-and-blog/blog/2020/08/27/usin...
Previous discussion: https://news.ycombinator.com/item?id=47507150
The only reason I have a dual-boot Windows setup now is for MSFS2024 and DCS. They will probably be the last to ever get full-Linux support (if ever).
DCS World and MSFS2020 play on Linux just fine. MSFS2020 is flawless; DCS World has a few visual glitches with smoke tessellation and MFD textures that need to be converted before working, but besides that it's great. I fly modded and first-party modules on multiple maps, hours at a time, zero complaints.
That’s interesting… have you tried MSFS2024? That’s my main driver for now; god it would be amazing if I could run it on Linux. I’ll definitely need to try DCS on Arch! By the way - what module would you recommend (apart from F-18)?
1 reply →
I just want to be able to play the latest COD on linux to ditch my windows partition ... but anti-cheat makes it impossible.
This page really does not like playing nice with reader mode, making it near impossible to read unfortunately.
Linux does not dragged down in performance by the thousands of virus and malware scanners.
If by "thousands of virus" you mean software shipped by default in Windows, then I agree with you. Everything feels so sluggish on Windows 11 compared to any Linux distribution even if you run it on an HDD... it's ridiculous.
That's a great twist! Very few people traded Bill Gates a linker for a compiler!
The way you worded this has me imagining the counterfactual world where lots of people traded Bill Gates a linker for a compiler.
Compilers cost real money back then. Word got out that this was how you got a free compiler. You just wrote a linker, and you got in touch with Bill and offered it to him. (You did have to write your linker in a single huge file of assembly, because you didn't have a compiler or a linker yet. It was fine, more programmers knew assembly back then.)
Microsoft has thousands of linkers. They're the linker company now.
Most of their other products started as test cases for their linkers, that they also happen to sell separately as a side business because why not.
Excel is a notable exception, because due to a series of overengineering decisions, it actually is a linker that gradually gained spreadsheet features.
Time to start betting: Will Windows 12 be based on a Linux kernel? :D
The problem with Windows isn’t the kernel, which is generally reported to be actually quite excellent. The problem is everything else.
Is NTSYNC used for anything else other than wine/proton?
The docs explicitly say not to: https://docs.kernel.org/next/userspace-api/ntsync.html
One wonders if it uses futex and poll under the hood, why not?
Doubt it. No linux-native application would be designed to use a Windows API.
As someone without strong feelings on Linux vs Windows (I've used and developed on both about equally): this kind of news, along the way Windows has been changing has me wondering if I should change my primary desktop environment at home to Linux.
In my eyes, Windows used to be the desktop environment that "just works and can run almost everything". Lately it's becoming enshittified, with weird bugs showing up more and more frequently (a memorable one is not being able to launch Notepad from the start menu!!). I think Microsoft is losing its best attributes when it comes to consumer software. Linux may not be perfect but it's looking more and more attractive in comparison, even with its imperfections.
"how does it feel to be embraced and extended?"
If you don't compile the CPU hardware bugs mitigation for linux, which windows has, you'll be mechanically and significantly faster.
1 + 1 = 2
people dont use dos anymore even though its quite powerful
It’s ironic that even Linux is better Windows than Windows.
What about macos?
Apple doesn't care about gaming.
https://arstechnica.com/gadgets/2023/11/steam-drops-macos-mo...
Apple has never really cared about games unless it's on the iPhone or iPad. It's worked out well for them though. Mobile gaming is a $100 billion dollar market, PC gaming and console gaming are each about half that.
4 replies →
I don't mind playing whatever games my Mac will play, but it does feel like Apple has an entire org full-time making sure games don't work on Mac.
overwatch plays flawlessly on macOS right now, Game Porting Toolkit 2 is DirectX on Metal done by a $1T company.
all that said, they view this as enabling the consumer by supporting their hardware better, they have an antagonist, mafia-like relationship with game developers.
Overwatch is a low bar - it's one of the games you can run with the upstream WineD3D OpenGL drivers from the early 2010s.
Not really. It’s not “Windows APIs turning into Linux kernel features,” it’s Windows games being translated on Linux way more efficiently than they used to be. Proton stack, Vulkan, Mesa, driver work — that’s where most of the improvement came from.
>NTSYNC isn't the first time Linux has gained a new feature specifically because Windows games needed it. A few years back, Linux added a way for software to wait on several events at once, which is something Windows had built in for decades, but Linux didn't.
Lol.
Post doesn't sound explicitly vibewritten, so probably just a non-technical person.
very nice~
[flagged]
[dead]
[dead]
[flagged]
[flagged]
[flagged]
[dead]
[dead]
[flagged]
[dead]
[dead]
Nothing like copying someone else’s shit when you want to avoid thinking of new things for an operating system.
You could be more like Plan9, Linux. You could actually innovate and create new paradigms that make people look at MacOS and Windows and think that they are no longer in the same league.
But you don’t want to do that. You want to play games faster.
Fucking children run the world today. There are no adults keeping track of things making sure that as we go forward that things make sense. There’s no adult supervision in the computing industry anymore. None. It’s all just profit margins calling all the shots. Asinine.
How did it turn out for windows, being “The OS for Games”? Not great, I’d say. Windows is quickly losing that title and will soon become more and more irrelevant for gaming. If you focus on games until you’re “The OS for Games” then decide to innovate on real things that matter outside the home, then you’ll lose that title just like Microsoft is losing it now, and it will happen a lot faster for you than it did Microsoft, because the Linux community is about as organized as an Oklahoma town recently destroyed by a tornado.
Games are fast enough for anyone and there are certainly enough games today that if 5 people lived for 500 years each, there’s not enough time for them collectively to play all games that are available today.
I don’t know what you gamers think the “end game” is for games. Graphics? When are you meant to be happy? When will you stop and say, “ok, we made it”?
Graphics. Pfft. Games do not get better with more realistic graphics, and you know it. Great games are great because they are well thought out and well tested. Great games are not great because the shadows are sharper or because the reflections are more accurate. Some of the shittiest games ever look amazing, and some of the shittiest looking games are S-tier. And you all know it.
Old man mode: off
OS Development has halted in 1970 at this point. I know everybody loves Unix, but it has the same problem as Windows- namely that anything you run under your user context has access to your whole user context. And it will continue to be a scourge until/if we ever figure out how to make capabilities ergonomic. I've been racking my brain for 30 years to try and do it, but they just make certain things very painful.
I agree completely.
Look at Plan 9, if you haven't. I can open a window, add/remove things from its environment (via mounting and unmounting files into that window's namespace) seal that environment to prevent changes, then launch a program.
The program can only see what is available to it via the file system. If it has no /net folder then it can't talk to the network. At all. If it has a truncated /env then it can only see a subset of the environment variables available to me, the user.
EVERYTHING being a file is ... weird. Unix has that, but Plan 9 takes about as far as it can go, which is pretty far. But that makes permissions to things quite easy, because file permissions are easy.
The other thing that Plan 9 does is that everything is a file, including your environment, mounting and unmounting things from/to your environment is how you gain/deny access to yourself and to programs.
If this permissions model was common, ransomware would have never been possible. No virus could infect your system, only its own environment (with caveats).
If you already know all of this, I apologize. If you don't, then you owe it to yourself to have a look at Plan 9. It's very weird, but once you wrap your head around it, you start seeing why some people really rave about it.
There's a channel on YouTube called "adventuresin9"[0] which has TONS of content about Plan9.
[0]: https://www.youtube.com/@adventuresin9
I made 50 TUI games recently to just test my agent orchestration skills. If pixel graphics are retro, then ASCII is OG. Part of the reason is to make them playable on any device (including Linux), and partially so that agents themselves can play them (to help me practice my RL skills).
“He who fights with Windows should see to it that he himself does not become Windows. And when you gaze long into ntoskrnl, ntoskrnl also gazes into you.”
Seriously, is it really a victory if you have to adopt the architecture of your sworn enemy?
Microsoft and Windows were never the enemy.
To quote Linus Torvalds from 1997: "I don't try to be a threat to Microsoft, mainly because I don't really see MS as competition. Especially not Windows - the goals of Linux and Windows are simply so different."
He got less humble later on when momentum started building behind Linux. To quote Linus Torvalds from 2003: “Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect.”
2 replies →
Personally I used to be a Linux zealot back in the early 2000s, then I actually learned to program C++ and dove a bit into OS architecture... I realized why Linux on the desktop always sucked.. Not because of some dastardly conspiracy by Microsoft, but because of the very basic fact that server people and vendors held the developer purse strings and they drove the engineering decisions.
Let's take a simple example.. to send a network packet to a different machine, you just call into the Linux kernel, which dispatches your stuff directly to the network card, and you're done. Pretty simple. However if you want to send a message to your neighboring X11 window, you have to go into the kernel to do IPC, which then somehow dispatches your message to the server process, unblocks and schedules the message pump in X11, which finds your window, then once again you go back into the kernel... then your target process is scheduled, so on and so forth.
Wildly inefficient, yet Linux never got proper good IPC merged (until binder), low latency audio sucked, and none of this coordination logic or audio processing got in the kernel.
Why? Because servers don't need that stuff and some server engineer isn't going to know or care about your use case, you're just small fry, and none of the stuff you do is worth taking on technical risk or slowing down server workloads.
The goal was to be able to patch and fix the systems I was using, and swap out bits and pieces as I wanted. And that seems to be less and less possible on Linux these days, as you have these tightly vertically-integrated stacks where everything depends on the latest version of everything else.
We are so far removed from 1997 that this statement means nothing.
> the goals of Linux and Windows are simply so different.
So different that Windows muscle memory works on most main stream Linux UI's, Many (most?) Steam games run on Linux, and now we have Windows in the Linux kernel.
13 replies →
What is the purpose of achieving victory? Is it to produce the software that works better or is it to stick your fingers in your ears and lalala the loudest?
Windows copied futexes from Linux first, anyway.
If you are refusing to have a stable architecture, then you will maintain architecture of your enemy
Is the intent of Linux the architecture, or the philosophy of free / open source software?
Not really, in the drunken happiness to have games, Linux users keep forgetting those are games developed on game studios that the only place there are GNU/Linux installations running are their MMO servers.
It is no different from arguing how Linux is getting better GameCube games with Dolphin.
Also Valve is only as good as its current management is still around, eventually like any other company time will pass, and new warm bodies will take other decisions.
What you care more about?
technical details or real-world outcomes?
You might not get the answer you were hoping for there.
I mean the NT kernel was never really the enemy, it was the company behind it.
interface and architecture may influence each other, but interface doesn’t determine architecture