This is amazing work from Valve, but I have to admit some fear that it'll eventually stop. They started to put a lot of work into Linux gaming/Steam Machines when the Microsoft Store was a potential existential threat on Windows, but with the multitude of stores now present -- Battle.net, Ubiplay, Origin, Epic -- that no longer seems to be as terrifying as it once was. In the meantime, their own survey indicates that only <1% of users are on Linux (<a href="https://store.steampowered.com/hwsurvey/Steam-Hardware-Software-Survey-Welcome-to-Steam?platform=combined" rel="nofollow">https://store.steampowered.com/hwsurvey/Steam-Hardware-Softw...</a> -- click the "OS Version" entry in the table).<p>Still, as a full-time Linux user, I'm over the moon. I've always used Linux on my development laptop, but struggled to keep it on my desktop because the lure of gaming with remote friends has been too strong. However, after literally decades of trying to give up Windows entirely, between Proton, kernel contributions and efforts like this, I can play most of my backlog without having to resort to dual-booting or even VFIO. Even many fresh releases work without strife.<p>To anyone at Valve who reads HN: thanks. I know we're a tiny minority, and I'm really grateful for the continued on-going support.
<i>This is only tangential, but I realized I never wrote this down and figured I’d take the opportunity.</i><p>Ever since Steam published their non-Windows clients, we randomly get support requests from Steam users on Linux and macOS because the (all stacks) backtrace contains references to the WFMO WIN32 events library I open sourced many, many years back [0]. Always makes me smile though, my small contribution to Linux gaming. (Somewhat ironically, even Microsoft now uses this for cross-platform projects with VS Code being the primary example.)<p>I think all library developers (open source or otherwise) would probably do well to adopt the etilqs hack, you never know where your code will end up.<p>[0]: <a href="https://neosmart.net/blog/2011/waitformultipleobjects-and-win32-events-for-linux-and-read-write-locks-for-windows/" rel="nofollow">https://neosmart.net/blog/2011/waitformultipleobjects-and-wi...</a>
The main benefit is that it makes Steam not depend anymore on the installed packages of the host Linux distribution.<p>Part of this is that Steam can still use 32-bit libraries even when the host Linux distribution has fully moved to 64-bit.<p>See recent discussion at <a href="https://ubuntu.com/blog/statement-on-32-bit-i386-packages-for-ubuntu-19-10-and-20-04-lts" rel="nofollow">https://ubuntu.com/blog/statement-on-32-bit-i386-packages-fo...</a><p>While you would have expected from Valve to use an existing container platform, they went ahead and used directly the security features of the Linux kernel in Steam.
Something nobody else seems to have said here, is that Valve's work on Linux, Proton, streaming from one device to another (even phones), etc, puts them in an excellent position for cloud gaming, as pointed out by [1]. Namespaces support seems like an obvious next step here.<p>Valve is already in the best position for this, since they're the dominant market player and gamers already have their game libraries in Steam. Buying a game from Valve makes more sense than buying a game from Google Steam users get to keep a playable product even if the streaming product is a flop.<p>[1] <a href="https://www.gamingonlinux.com/articles/looks-like-valve-could-be-set-to-launch-something-called-steam-cloud-gaming.15354" rel="nofollow">https://www.gamingonlinux.com/articles/looks-like-valve-coul...</a>
I recently moved to Linux as a primary (and only os). I was a windows user because of games and I was so fed up with automatic updates, privacy concerns and so on that I decided to fully go to Linux. I searched a lot over internet before choosing a distrib (I'm not pro Deb or rhel or else) so I ended up with Manjaro (KDE version). And it such a delight fully customizable. Steam installed with some of my games working without doing anything "complicated", I was impressed! And then I installed lutris for all non native games. I expected much much troubles but in fact, it was easy. I installed Epic games store first and oxenfree just to test. It runs smoothly! I also installed Control (great game) in standalone still with lutris. I finished the games with only two or three crashes.
So yes gaming on Linux is not ideal it might not be with the best performances also but it was much much easier than I though before doing the big step from windows to Linux. I'll follow any new improvements for gaming on Linux and I hope in the future that every store and game will be accessible natively on Linux. And that more and more user have the choice of the os they want!
There was that time the Steam client rm-rf'd your home directory because of a typo in its wrapper shell script. Also, the client itself requires a bunch of packages that I'd rather not install on my machine, because my distro packages don't match what it wants, and because some of the packages it wants are 32-bit ones.<p>So I just run Steam itself in a Docker container. The home directory inside the container is mounted to a subdirectory of my home on the host, so even if Steam wipes everything from it the only thing I'd lose is Steam itself.
Wish I can find it now but there was an obscure article 10 years ago or so, maybe it wasn't an article even, which argued that the "desktop linux" will be gaming only. Linux will be as is now, enterprise, business, programming etc + gaming. But no middleground. Anyways just feels like we are closer and closer to that
There are 7 types of namespaces, I don't see it mentioned which types they use.<p>Mount namespaces are not a big deal to use, as long as you freely bind-mount from /dev and /sys whatever your software might need. The effect is mostly protecting your home directory against both reading and modification and isolating your system installations against version and configuration conflicts.<p>Uid namespaces are really challenging if you try to make some complex software system work. They give a lot of isolation from the host system, some would say also new risks that the isolation has unexpected privilege escalations.<p>Disclaimer: Not a gamer on any platform, so I don't know Steam other than from hearsay that it's the only serious one running on Linux.
Is there a list of games that actively take advantage of containerization (i.e. old libraries, etc..)?<p>For example, I can't run the GOG version of Legend of Grimrock on Fedora 31 because of libraries. This is the type thing that would that problem.
(How) does this affect graphics performance? And how does the container communicate with the graphics engine? Just an X11 socket linked into the container?