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.
Why/when are traps used rather than explicit system calls? Is it just historical coevolution? Or is the idea that the user mode program doesn’t need to know that it’s unprivileged? Or is it just repurposing the error handler path to perform privileged operations?
At the time of DOS, x86 didn't have multiple privileges. The system call instruction was typically INT, the software interrupt instruction.
Later on the 386 Intel added virtual 8086 mode which trapped to the kernel privileged instruction exception also for certain instructions that had to be virtualized, among them INT.
Depends on the processor architecture and its nomenclature.
Traps typically also result from exceptional conditions (like divide by zero or page fault).
An architecture may or may not provide non-trap paths for less-privileged code to invoke more-privileged subsystems (call gates, "syscall" instructions, etc.).
Traps typically need some way to preserve all userspace-accessible registers (otherwise resuming from a page fault is .. hard). Dedicated syscall instructions may only need to restore a subset of registers.
In some implementations, processors may discover that an instruction must trap after it starts irreversibly changing architecturally-visibile state; in cases like that, the processor needs to leave enough breadcrumbs for the OS to allow either a clean unwind or a resumption of the interrupted instruction. My understanding is that the original 68000 somewhat famously got this wrong.
I don't know OG x86 (cuz, ewww) but on 68k this was generally the way. On my Atari ST a syscall was performed by filling your registers and stack as expected, then executing one of the TRAP opcodes and that would get the CPU To save PC etc & jump to the handler but in supervisor mode, where your syscall could then read state perform accordingly, and then return back to you.
I think x86_64 has just formalized this into a specific SYSCALL instruction?
ARM variants call it SVC (supervisor call).
Same difference.
Some older operating systems just implemented their syscalls as ordinary subroutine jumps, though, and everything ran in supervisor etc. I believe AmigaOS was like this, you just went through a jump table. Which, I think, shaves some cycles but also means compromises in terms of building for memory protection, etc.
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.
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.
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).
Have you considered using OverlayFS[1] instead of installing all files into the game directory and tracking them with a database? Or maybe what GNU Stow is doing where it installs each package into its own directory and then uses symlinks which it tracks to "install" the files into the global file hierarchy?
Ooh overlayfs is quite interesting. I'll have to take a closer look at that. I imagine it's similar to what MO2 was doing on windows with the virtual filesytem to keep the game directory clean.
The stow approach is something that I considered but ultimately rejected for a couple of reasons around handling conflicts of game-installed files as well as how to ultimately handle the symlink lifecycle (eg wrapper to make the "non-running" state always clean or to let it always persist and then need to run manual cleanup/update steps). But if you're interested in that approach when I was applying for Nexus Mods approval I discovered https://github.com/Marc1326/Anvil-Organizer in the overall list of mod tools which I believe uses that strategy (though I haven't really looked too closely)
But basically my original idea to just install the files directly into the game directory stems from the fact that when I switched to linux for gaming and not having success with MO2 that's literally what I was doing. I would download the mod from nexus and unzip/tar it into the game directory manually. When I wanted to uninstall or update I'd find the original archive list the files in it and then delete them from my game directory. After doing this too much I realized that I was basically missing the functionality of a standard linux package manager (eg apt, pacman, etc)
Interesting! I was modding Fallout New Vegas and 4 if that adds context, what did you have issues with? All the same happy to bookmark it, might play with it at some point, thanks!
I've really only tested it with Cyberpunk 2077 (and a bit of WH40K rogue trader). The issues (so far) are with tangential features. For example it's possible to define rules when you extract files (eg the mod author sticks them in a subdirectory or something you can have the tool automatically strip that leading directory) the "preview" feature to see how to rules affect the files before extraction isn't working as expected. But the main loop of create a profile for the game, add/remove mods to it, and have it spit them out into your game directory works without issue.
I should add that it's a CLI tool only (I may add a TUI later but it probably won't ever have a GUI if that matters). Anyway if you check it out and have any feedback whether positive or negative that would be cool
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.
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.
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.
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.
Orly? I hadn't gotten that far yet but interesting data point. I'd only tried Infinite and the game just wouldn't even really launch, I didn't even get to the main menu, didn't open XBox authentication at all and I just assumed I had to have something installed. When I did some googling I'd heard of something called... my memory fails me, Heroic I think? I hadn't actually gotten around to trying yet though so I've no clue if that's any good.
I can't speak to Halo Infinite, but for SoT that's what worked for me. Another commenter is saying they were able to auth with a passkey (for infinite), which I never tried (for SoT), but id imagine it would work.
Heroic is a launcher aggregate/wrapper I think? for 'Epic, GOG and Amazon Prime Games' It's either Steam, native/standalone or arr for me. for non-steam stuff I use umu.
* I should add that I am launching a steam purchased copy of SoT, not the one from Xbox store/gamepass or what have you, so the process is likely different, but maybe not cus you are likely going to see the same auth popup served via wine/proton.
I ended up being able to authenticate using a passkey, IIRC. Can't remember if that was my yubikey or bitwarden. I was surprised that it worked at all.
It didn't use to be complicated, but an update messed stuff up a few months ago (halo infinite).
Believe it or not, it's actually easier to handle on linux than it is on windows now [1]. Normal caveats apply, it depends on your HW manufacturer. However, a lot of them are participating which makes it pretty slick.
And, assuming your are doing x86, you probably already have an EFI partition so even doing motherboard bios updates isn't much of a big deal. You just drop the update in the FAT32 EFI partition, reboot, and point the motherboard at that location. Some motherboards even support just doing that as part of an online update.
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.
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.
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 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 know you framed this as a negative, but this is something I yearn for; It's the one of the best games, imo. I often wish I ran into more issues, but for the most part, things _just work_^TM.
I can recommend CachyOS as a linux distribution for gaming that has worked for me across multiple computers without any fiddling. It's the one that's led to me ditching windows entirely after a few failed attempts over the years.
Although, everyone probably says that about whatever distro they happen to use lol.
I think I’d avoid the Cosmic version of POP!OS for a while for gaming. I mean it works but you do have to get fiddling again unlike the previous not cosmic version.
Most egregious problem is that steam games start in a strange window rather than full screen and you have to press a weird key combo to fix it.
Nvidia based Acer nitro FWIW your mileage may vary
Most folks are in this category. But most, including me, wont try anytime soon unless some very positive news come up. We have lives to live, kids to raise, work to do and so on.
Gaming moved for a lot of us from 'now I have 5 hours or whole weekend to gaming if I want to' to mere blips here and there, which need to be as frictionless as poasible.
Which is great - it means we are doing something actually meaningful and more worthy in our lives. But it also means I will never have enough time for such fiddling. I am fine with it, as much as I can be, but lets be honest to ourselves here.
Which brings up a point I've been wondering over the years.
Where are the hordes of kids like us back then who were content with the afternoons, evenings and wee early morning hours of endless fiddling? What I realize now is those years spent fiddling sharpened our debugging senses in both ineffable and tractable ways.
A larger proportion of the juniors I see coming through the corporate halls these days than I remember from even 10 years ago do not have that knack for fiddling, nor history when it comes up. And it shows in their debugging temperament. LLM's are making this worse.
I've seen the sentiment come up a lot, and I've talked about it with a buddy a lot.
For all the issues people claim to have with iOS or Android, they really "just work" compared to the shit we had to deal with back in the day. And I don't even mean bugs, but UX just wasn't as sleek.
I can find a pdf of the TTRPG I'm playing that's hidden deep in an iCloud drive by simply opening spotlight an typing the approximate name. And the same works on my iPhone. Apps that create documents for me hide their file structure, because it's all abstracted away from me. It works, and I don't have to think about it as much.
You still have kids that start fiddling with tech, but only out of clear interest. Not as a necessity.
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.
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.
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 :)
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.
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.
Another problem is that having better frame pacing, or better timing stops mattering if the OS decides to reboot for updates mid game. Game experience is much more than just game performance.
Part of the issue is that a large part of linux gamers are saying "linux gaming is great" and meaning "linux gaming is good enough now that it is better than putting up with microsoft and windows 11"
Some people would rather put up with slightly worse frame pacing if it means no microsoft. Some linux folks are super gung-ho pro privacy, some are just super anti-microsoft but can't game on mac. There's a whole lot of reasons to wind up on linux, so the importance of specific performance details may vary depending on WHY you would be swapping.
And some people are playing games on good enough hardware that there arent noticeable frame pacing issues, so good raw FPS numbers just reinforce their views, and they just genuinely mean they are having a good experience themselves.
To tack onto this a big annoyance for me right now is the lack of knowledge in the community about frame pacing and how to configure the computer.
The user will say 'it lags' but does not mention if they have tearing enabled in wayland, what are their 1% lows, have they set an fps cap, what vsync settings have they chosen in-game. On top of that there is an ecosystem failure as not every game supports arbitrary caps and you have to configure some mangohud thing.
Linux is only a 'just click play' experience if you have no standards because I have never had this stuff be correct out of the box on a fresh install.
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.
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 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.
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."
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).
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.
But that goes back to "how often". Not how many games use it, but how many times per second they use it. You might touch your voice process lock once per frame? That's negligible in terms of CPU time. Any half-reasonable overhead makes no difference in that lock, but might have a big impact in a more common lock.
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 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
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?
Last I read, it really doesn't now. Less than 10% of Microsoft revenue is Windows with growth stagnant. It's all about subscriptions and recurring revenue now driving growth. They might as well bundle a Windows licence with all Game Pass subscriptions.
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.
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.
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.
>The AppleTV is already in a similar tier to modern consoles, as far as specs and benchmarks go
What benchmarks are you talking about? CPU-wise the A15 Bionic just barely beats the Ryzen 3700X in single-core and gets absolutely destroyed in multi-core (Geekbench). As for the GPU, the Radeon RX 7600 (closest thing I can find to a "modern console") does >10x the TFLOPS in FP32.
The only reason why they look like they're "in a similar tier" in ported games is because the A15 Bionic is usually tested on 5-6" screens that can be upscaled from 360p without any measurable loss in visual quality, with a massive downgrade in model and texture quality for the same reason. The only modern console the Apple TV "may be" similar to is the Switch 1
I use Steam Link on my AppleTV which lets me play games on my PC. It works great as long as the game works well with a PS5 controller (and lots of them do).
Are they playing on Xboxes? Because that is Microsoft's living room product, and the part of the business that is struggling right now.
To give you an idea of how bad it is, they slowed console manufacturing to a trickle last year to try and juice their profit margins, and are now stuck in a situation where they can't spin manufacturing back up to cash in on the inevitable rush of demand for hardware when Grand Theft Auto comes out this fall.
That's not true. It's actually spiraling the other direction now. Consoles just don't have the value proposition they used to have. You can buy a general purpose PC for the same price as a console that has better performance and also allows you to do your taxes.
wow that's interesting. Where is the gaming share moving, if not pc and consoles? I guess hand-held devices (do those not count as consoles?) and phones?
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.
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.
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.
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.
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.
Purely rumor, but supposedly Valve put tons of pressure on them (no idea by what means, again this is all rumor) because they wanted support for the Steam Machine release.
Unless you're on the absolute newest stuff with DisplayPort 2.1, HDMI 2.1 has more bandwidth than DP1.4. That'll be Nvidias 2000 through 4000 series. No DisplayPort 2.1 until the RTX 5000s.
And then monitors released during this time generally do the same too.
Also if you want to use it through a capture card, HDMI ones are way more common and cheaper
It is futile to expect the TV to be smart and support all sorts of apps and hardware only to be abandoned by the manufacturer years down the line. The only correct way to buy a TV imho is to hunt for a dumb but excellent display properties and get a streaming device such as Google TV Streamer, Apple TV or DIY x86 HTPC.
What >100mbps content is there? 4K bluray just needs a bigger buffer to handle >100mbps spikes (Kodi for example offers this) and Moonlight/Apollo/etc is well into diminishing returns
TVs are made with BOM of like 10$ for the SoC, so it's the cheapest crap available.
Then again - none of the streaming services are streaming at anything remotely close to 100Mbps so I doubt they consider it necessary to upgrade to GbE.
Some people have TVs or displays that only use HDMI. I personally wouldn't recommend HDMI if DisplayPort is available, but if HDMI is your only option, then having it work properly will be important.
My monitor has 1 displayport and 2 hdmi and I have 2 computers I use with it. They can't share the displayport. All comparable monitors (last time I checked) have the same. So it'd be nice if both worked.
The cable length limitations are also a pain in the ass for not-uncommon A/V system configurations. 6' recommended max, and the best you might get working stably if the device and cable gods smile on you is 15'. 6' is the lower edge of acceptable for just about any A/V system setup (in practice it means your devices need to be within about a meter of the screen's port[s], which is pretty close) and even 15' is still too short to be useful for, say, a projector, or a "the A/V receiver or HDMI switch is over in that cabinet, the TV is on this wall across the room" situation.
For 4k at 60Hz, you'd need HDMI 2.0 or DP 1.2. At those speeds, both kinds of cable should be able to reach 25 feet, and I can find reputable brands selling both kinds at the length.
Yep. That's likely because that's an active cable. Active DisplayPort cables exist, too. Here is one vendor selling active UHBR10 cables [0]. If you don't NEED UHBR, then you'll find your selection to be much, much larger. I've been using some Monoprice-branded 50 and 100 ft active fiber-optic HBR3 DisplayPort cables for years with no problem.
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 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.
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.
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.
I know plenty of people that use Nvidia and Linux, and it's something I've done in the past. You just suck it up and install the closed-source black box drivers and get on with your life.
Although, eventually NVIDIA will drop support for your card and you’ll have an annoying situation. This happened for Pascal on Arch Linux a while ago. The 10X0 series are pretty old at this point, but then Linux shines on older systems too.
You can still use the old drivers they work fine. This also isn't unique to Linux, Nvidia's latest Windows drivers also don't support 10 series cards anymore.
NVidia supports their GPUs for a really long time (unlike AMD, which paradoxically drops official support really fast; e.g. see their ROCm support). Anyway, by the time NVidia drops support for their current newer GPUs there's a high chance that NVK[1] will be ready for general use.
There's so much "old info" that people pass around online when it comes to linux (or anything I guess with an ever evolving feature set).
Any modern distro running NVidia or AMD should be fine. I've done both. I didn't have to do anything for the NVIDIA 3000 or NVIDIA 4000 series cards but select the nvidia driver. AMD otoh is built into kernel now.
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.
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.
Anything between 700 and 2000 series (inclusive) is in this "completely proprietary due to signed firmware but also not fully supported in Wayland" zone. You need to have at least 3000 series to have proprietary drivers with open kernel driver and good KMS/GBM/Wayland support.
Nvidia on laptops is fine. There was a time that it was really difficult and the easiest route to success was to disable the Intel iGPU, and force Nvidia GPU to handle everything in BIOS. That hasn't been the case for a while, and you can even get nice desktop environment integration to let you choose which GPU to run a program with.
> Nvidia on laptops? Insert the famous Linus Torvalds meme here
I have an RTX 5070 (whatever the laptop variant is) and it absolutely rocks with almost everything I throw at it, running Ubuntu+Steam+Proton. I no longer worry whether a Windows game is going to run, because almost all of them do with good performance.
I think things might have changed in the last 6-7 years? That's when I switched away from Nvidia.
Or does your laptop have no other igpu?
My last Nvidia laptop was a Hybrid optimus laptop. I almost always ran it on the built in Intel igpu because of the really bad issues with the Nvidia cards. Video tearing, bad power management etc... I remember even switching the GPU wasn't easy... And performance wasn't as good either ..
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.
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.
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.
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.
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
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 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.
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
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.
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
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.
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.
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.
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.
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.
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.
Well sure it worked out great for Apple. By preventing users from sideloading emulators or playing real games, you force them to purchase gambling apps and low-quality slopware to entertain themselves. "Real world" game developers like Nintendo outright gave up on iOS/mobile gaming because it wasn't a comparable gaming experience.
A good example of this is the Final Fantasy Pixel Remasters, which were so lazily ported that most fans advocate for pirating the originals instead. Why should anyone pay $14.99 for the bad version of FFVI?
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.
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.
“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.”
I mean, this whole thread is basically suggesting that 23 years later, improvements to Linux and self-sabotage by Microsoft are going to possibly destroy (or atleast, start to cause some bleeding) to Microsoft (in the gaming-market).
This isn't Linux looking to destroy MS, this is mostly Valve understanding the requirement for an OS that won't be able to become predatory to them and their business model in a single system update.
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.
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.
Does Windows muscle memory work? The vast majority of shortcuts are completely different for the casual user, and for the power user, there's no regedit or control panel and other such things.
Be that as it may, it means that the muscle memory (or more accurately, the mental model of the system) is gone. I've long held the belief that power users or knows-enough-to-be-dangerous users have a harder time switching for that exact reason.
A control panel (or cross-distro YaST) would be very welcome in the ecosystem I think.
> muscle memory (or more accurately, the mental model of the system)
That's not "more accurately", that's just a completely different thing. When I'm on Mac, my muscle memory is thrown off. I'll be typing and my ctrl+s, alt+tab, win+4, ctrl+left* all cause wildly unpredictable (to me) things. I'm currently using Linux, and all of those things work how I expect (with a tiny asterisk on win+#). When I want a control panel, I press the windows button on my keyboard to open something functionally equivalent to the start menu, and open System Settings to get something functionally equivalent to the control panel.
I have no doubt that I could learn the deep differences between Windows and Mac over time, but the initial muscle memory causes me stress before I get to that point. When I switch to Linux I don't have that stress, and so I've been comfortably learning those differences.
* - save, switch to the previously in-focus window, switch to the 4th program on the taskbar, move the cursor one word to the left
WSL 1.0 was doing something like that. Doing syscall translation in real time. Eventually edge cases forced them to abandon that architecture and now it's just a VM.
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.
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.
What does this mean? System calls?
https://www.geeksforgeeks.org/operating-systems/traps-and-sy...
Later on the 386 Intel added virtual 8086 mode which trapped to the kernel privileged instruction exception also for certain instructions that had to be virtualized, among them INT.
Traps typically also result from exceptional conditions (like divide by zero or page fault).
An architecture may or may not provide non-trap paths for less-privileged code to invoke more-privileged subsystems (call gates, "syscall" instructions, etc.).
Traps typically need some way to preserve all userspace-accessible registers (otherwise resuming from a page fault is .. hard). Dedicated syscall instructions may only need to restore a subset of registers.
In some implementations, processors may discover that an instruction must trap after it starts irreversibly changing architecturally-visibile state; in cases like that, the processor needs to leave enough breadcrumbs for the OS to allow either a clean unwind or a resumption of the interrupted instruction. My understanding is that the original 68000 somewhat famously got this wrong.
I don't know OG x86 (cuz, ewww) but on 68k this was generally the way. On my Atari ST a syscall was performed by filling your registers and stack as expected, then executing one of the TRAP opcodes and that would get the CPU To save PC etc & jump to the handler but in supervisor mode, where your syscall could then read state perform accordingly, and then return back to you.
I think x86_64 has just formalized this into a specific SYSCALL instruction?
ARM variants call it SVC (supervisor call).
Same difference.
Some older operating systems just implemented their syscalls as ordinary subroutine jumps, though, and everything ran in supervisor etc. I believe AmigaOS was like this, you just went through a jump table. Which, I think, shaves some cycles but also means compromises in terms of building for memory protection, etc.
https://en.wikipedia.org/wiki/Interrupt#Terminology
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.
[0] Arch Linux, btw, because that must be mentioned.
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.
[1] https://en.wikipedia.org/wiki/OverlayFS
[2] https://www.gnu.org/software/stow/
The stow approach is something that I considered but ultimately rejected for a couple of reasons around handling conflicts of game-installed files as well as how to ultimately handle the symlink lifecycle (eg wrapper to make the "non-running" state always clean or to let it always persist and then need to run manual cleanup/update steps). But if you're interested in that approach when I was applying for Nexus Mods approval I discovered https://github.com/Marc1326/Anvil-Organizer in the overall list of mod tools which I believe uses that strategy (though I haven't really looked too closely)
But basically my original idea to just install the files directly into the game directory stems from the fact that when I switched to linux for gaming and not having success with MO2 that's literally what I was doing. I would download the mod from nexus and unzip/tar it into the game directory manually. When I wanted to uninstall or update I'd find the original archive list the files in it and then delete them from my game directory. After doing this too much I realized that I was basically missing the functionality of a standard linux package manager (eg apt, pacman, etc)
I should add that it's a CLI tool only (I may add a TUI later but it probably won't ever have a GUI if that matters). Anyway if you check it out and have any feedback whether positive or negative that would be cool
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] https://github.com/limo-app/limo
[2] https://vivanewvegas.moddinglinked.com/
My point is, you may find the one or two games holding you back won't be missed much.
Heroic is a launcher aggregate/wrapper I think? for 'Epic, GOG and Amazon Prime Games' It's either Steam, native/standalone or arr for me. for non-steam stuff I use umu.
* I should add that I am launching a steam purchased copy of SoT, not the one from Xbox store/gamepass or what have you, so the process is likely different, but maybe not cus you are likely going to see the same auth popup served via wine/proton.
It didn't use to be complicated, but an update messed stuff up a few months ago (halo infinite).
And, assuming your are doing x86, you probably already have an EFI partition so even doing motherboard bios updates isn't much of a big deal. You just drop the update in the FAT32 EFI partition, reboot, and point the motherboard at that location. Some motherboards even support just doing that as part of an online update.
https://wiki.archlinux.org/title/Fwupd
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.
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.
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.
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.
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.
what is the source of this non-determinism?
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 know you framed this as a negative, but this is something I yearn for; It's the one of the best games, imo. I often wish I ran into more issues, but for the most part, things _just work_^TM.
Although, everyone probably says that about whatever distro they happen to use lol.
Most egregious problem is that steam games start in a strange window rather than full screen and you have to press a weird key combo to fix it.
Nvidia based Acer nitro FWIW your mileage may vary
Gaming moved for a lot of us from 'now I have 5 hours or whole weekend to gaming if I want to' to mere blips here and there, which need to be as frictionless as poasible.
Which is great - it means we are doing something actually meaningful and more worthy in our lives. But it also means I will never have enough time for such fiddling. I am fine with it, as much as I can be, but lets be honest to ourselves here.
Where are the hordes of kids like us back then who were content with the afternoons, evenings and wee early morning hours of endless fiddling? What I realize now is those years spent fiddling sharpened our debugging senses in both ineffable and tractable ways.
A larger proportion of the juniors I see coming through the corporate halls these days than I remember from even 10 years ago do not have that knack for fiddling, nor history when it comes up. And it shows in their debugging temperament. LLM's are making this worse.
For all the issues people claim to have with iOS or Android, they really "just work" compared to the shit we had to deal with back in the day. And I don't even mean bugs, but UX just wasn't as sleek.
I can find a pdf of the TTRPG I'm playing that's hidden deep in an iCloud drive by simply opening spotlight an typing the approximate name. And the same works on my iPhone. Apps that create documents for me hide their file structure, because it's all abstracted away from me. It works, and I don't have to think about it as much.
You still have kids that start fiddling with tech, but only out of clear interest. Not as a necessity.
> 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...
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.
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.
Huh.
I wonder if they're the same people who complain that they don't have enough money to live.
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 :)
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.
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.
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.
Part of the issue is that a large part of linux gamers are saying "linux gaming is great" and meaning "linux gaming is good enough now that it is better than putting up with microsoft and windows 11"
Some people would rather put up with slightly worse frame pacing if it means no microsoft. Some linux folks are super gung-ho pro privacy, some are just super anti-microsoft but can't game on mac. There's a whole lot of reasons to wind up on linux, so the importance of specific performance details may vary depending on WHY you would be swapping.
And some people are playing games on good enough hardware that there arent noticeable frame pacing issues, so good raw FPS numbers just reinforce their views, and they just genuinely mean they are having a good experience themselves.
The user will say 'it lags' but does not mention if they have tearing enabled in wayland, what are their 1% lows, have they set an fps cap, what vsync settings have they chosen in-game. On top of that there is an ecosystem failure as not every game supports arbitrary caps and you have to configure some mangohud thing.
Linux is only a 'just click play' experience if you have no standards because I have never had this stuff be correct out of the box on a fresh install.
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.
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.
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
[1] https://news.ycombinator.com/item?id=47513667 [2] https://lore.kernel.org/lkml/f4cc1a38-1441-62f8-47e4-0c67f5a...
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.)
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.
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.
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.
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.
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.
What benchmarks are you talking about? CPU-wise the A15 Bionic just barely beats the Ryzen 3700X in single-core and gets absolutely destroyed in multi-core (Geekbench). As for the GPU, the Radeon RX 7600 (closest thing I can find to a "modern console") does >10x the TFLOPS in FP32.
The only reason why they look like they're "in a similar tier" in ported games is because the A15 Bionic is usually tested on 5-6" screens that can be upscaled from 360p without any measurable loss in visual quality, with a massive downgrade in model and texture quality for the same reason. The only modern console the Apple TV "may be" similar to is the Switch 1
Simply no, thank you.
Me and all my dad friends are all signing up for XBox accounts so our kids can play Minecraft. So IDK about that.
To give you an idea of how bad it is, they slowed console manufacturing to a trickle last year to try and juice their profit margins, and are now stuck in a situation where they can't spin manufacturing back up to cash in on the inevitable rush of demand for hardware when Grand Theft Auto comes out this fall.
Which is a weird thing to think about, and not sure very lovely.
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.
https://www.gamingonlinux.com/2026/05/further-expanded-amd-h...
That is, more people being subtly pushed to using display port is not a bad thing.
Didn't help connecting it to my Macbook, but still..
And then monitors released during this time generally do the same too.
Also if you want to use it through a capture card, HDMI ones are way more common and cheaper
I have a dumb-ish Samsung Hotel TV / commercial TV at home. It has DP.
ARM slander was not warranted
My 2020 LG CX has a USB 2.0 port and I get ~300mbps with a gigabit adapter, if the TV you ended up with has a USB port it's worth a try.
Then again - none of the streaming services are streaming at anything remotely close to 100Mbps so I doubt they consider it necessary to upgrade to GbE.
Don't all USB-C video outputs use DP alt mode too, with an HDMI adapter at the end? And they can do HDR.
HDMI goes 25'+, no problem.
Yep. That's likely because that's an active cable. Active DisplayPort cables exist, too. Here is one vendor selling active UHBR10 cables [0]. If you don't NEED UHBR, then you'll find your selection to be much, much larger. I've been using some Monoprice-branded 50 and 100 ft active fiber-optic HBR3 DisplayPort cables for years with no problem.
[0] <https://www.bhphotovideo.com/c/products/displayport-cables/c...>
and displayport 2.0, since 2019, has supported all the same variations (hdr10+, dolby vision) that HDMI does
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.
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.
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.
Whereas the AMD-based Steam Deck always does what it should do.
[1] -- https://docs.mesa3d.org/drivers/nvk.html
Any modern distro running NVidia or AMD should be fine. I've done both. I didn't have to do anything for the NVIDIA 3000 or NVIDIA 4000 series cards but select the nvidia driver. AMD otoh is built into kernel now.
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.
But their happy path hasn't included proper wayland support for a long time.
Nvidia on laptops? Insert the famous Linus Torvalds meme here
I have an RTX 5070 (whatever the laptop variant is) and it absolutely rocks with almost everything I throw at it, running Ubuntu+Steam+Proton. I no longer worry whether a Windows game is going to run, because almost all of them do with good performance.
Or does your laptop have no other igpu?
My last Nvidia laptop was a Hybrid optimus laptop. I almost always ran it on the built in Intel igpu because of the really bad issues with the Nvidia cards. Video tearing, bad power management etc... I remember even switching the GPU wasn't easy... And performance wasn't as good either ..
Still, if you don't absolutely need CUDA, then AMD provides better value anyway.
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
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...
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%
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.
Oh look at that, XDA and HTG are both owned by Valnet:
https://www.valnetinc.com/en/technology
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.
https://www.kickstarter.com/projects/944362954/bapaco-the-wo...
Interesting, but I wish it was half the size folded...
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
- 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
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.
love linux but the audio situation has always been bad.
https://www.collabora.com/news-and-blog/blog/2020/08/27/usin...
It's true what Max Planck said that science advances one funeral at a time. So does the tech industry as a whole.
A good example of this is the Final Fantasy Pixel Remasters, which were so lazily ported that most fans advocate for pirating the originals instead. Why should anyone pay $14.99 for the bad version of FFVI?
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.
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."
This isn't Linux looking to destroy MS, this is mostly Valve understanding the requirement for an OS that won't be able to become predatory to them and their business model in a single system update.
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 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.
That's not a bug, it's a feature.
A control panel (or cross-distro YaST) would be very welcome in the ecosystem I think.
That's not "more accurately", that's just a completely different thing. When I'm on Mac, my muscle memory is thrown off. I'll be typing and my ctrl+s, alt+tab, win+4, ctrl+left* all cause wildly unpredictable (to me) things. I'm currently using Linux, and all of those things work how I expect (with a tiny asterisk on win+#). When I want a control panel, I press the windows button on my keyboard to open something functionally equivalent to the start menu, and open System Settings to get something functionally equivalent to the control panel.
I have no doubt that I could learn the deep differences between Windows and Mac over time, but the initial muscle memory causes me stress before I get to that point. When I switch to Linux I don't have that stress, and so I've been comfortably learning those differences.
* - save, switch to the previously in-focus window, switch to the 4th program on the taskbar, move the cursor one word to the left
Windows copied futexes from Linux first, anyway.
technical details or real-world outcomes?
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.