Valve introduces Steam Deck

  • Want to keep track of this thread?
    Accounts can bookmark posts, watch threads for updates, and jump back to where you stopped reading.
    Create account
There's kind of a problem though.
The standardized stable API for games on Linux IS THE WINDOWS API.
Linux has window system, library linking and sound related shit you have to tangle with if you want to port games natively. Proton et al is a big deal but it's still at the whims of M$.
I'm someone that for the last couple of years have been dabbling with Linux since Windows no longer feels like an OS I can trust or rely upon. Mind you, I'm not a power user, just someone that have been trying to learn as I go along and test different distributions and seeking to understand the differences between Windows and Linux and even what are the differences between Debian and Arch based systems. I'm currently (reluctantly) using Windows and Linux Mint on separate computers as I make the transition.

There is a lot of technical jargon that goes along with it but as I understand it ( and please correct me if I'm wrong on this regard) the Windows API that is used for running games on Windows is DirectX which is a proprietary API developed internally by Microsoft, meanwhile games that are native to Linux used OpenGL and more recently Vulkan which both are open source standards. Thing is the open source APIs like OpenGL and Vulkan can be used on Windows precisely because of their open nature but that is not the case for DirectX.

As I understand it, when a Windows game is executed through the Proton compatibility layer it is taking the "calls" the game is making in the DirectX "language" and it is translated into Vulkan equivalents that Linux can use.

As for Linux "windowing" system, it is a Graphical User Interface known as " X Window System" developed by X Org Foundation, it has nothing to do with Microsoft. The whole point of Linux and open source is to not be like Windows nor be at the whims of a single company, (Look video below).

Surprise surprise, Linux users thinking they got the upper hand with Linux when they're just puppets to the Microshit machine. The PC system war already lost and Linux is just an open-source alternative that MS secretly has its' monkey paw in.

That's is completely inaccurate.


I'm glad the Linux market is increasing. Windows 10 and 11 are buggy pieces of shit and I want an alternative.

Linux is not perfect, and can be downright daunting finding a distro that is right for you and understanding that there are trade off to be made upon switching, but once you start learning about it, using it and experiencing how good it can be to be able to run a PC without the massive bloat of Windows 10/11, it's telemetry and data mining, you really start to appreciate it.

Since Windows 7 was the last version of Windows I liked, to make the initial transition more comfortable I've tested distros that had a similar feel to that type of desktop environment (called Xfce) and I've used Linux Lite, Zorin, and Mint. So far Mint is the one I'm liking best for desktop, while I use Linux Lite on an older laptop that ran like ass with Windows 10 and now it is actually functional.

 
I'm someone that for the last couple of years have been dabbling with Linux since Windows no longer feels like an OS I can trust or rely upon. Mind you, I'm not a power user, just someone that have been trying to learn as I go along and test different distributions and seeking to understand the differences between Windows and Linux and even what are the differences between Debian and Arch based systems. I'm currently (reluctantly) using Windows and Linux Mint on separate computers as I make the transition.

There is a lot of technical jargon that goes along with it but as I understand it ( and please correct me if I'm wrong on this regard) the Windows API that is used for running games on Windows is DirectX which is a proprietary API developed internally by Microsoft, meanwhile games that are native to Linux used OpenGL and more recently Vulkan which both are open source standards. Thing is the open source APIs like OpenGL and Vulkan can be used on Windows precisely because of their open nature but that is not the case for DirectX.

As I understand it, when a Windows game is executed through the Proton compatibility layer it is taking the "calls" the game is making in the DirectX "language" and it is translated into Vulkan equivalents that Linux can use.

As for Linux "windowing" system, it is a Graphical User Interface known as " X Window System" developed by X Org Foundation, it has nothing to do with Microsoft. The whole point of Linux and open source is to not be like Windows nor be at the whims of a single company, (Look video below).
DirectX is one piece of the problem. Most games are switching to OpenGL anyway.
What I really mean is that Linux is very fragmented. X windows for instance provides no GUI primitives, just a system for mouse + keyboard input and windowed output. If you want actual GUI you either write it yourself or link a library (Hopefully not a bloated POS like GTK or QT)
X windows is actually one of the less egregious parts of developing for Linux as there's only 2 window system options. X and Wayland.
Sound has been a persistent issue with Linux with several libraries fighting for dominance. They're all implemented over ALSA so it's best to target that.
Dynamic linking is a real pain in the arse unless you make users run a batch script that loads the desired libraries before running the program. In linux, by default all libraries must be installed globally and this can cause version conflicts. Linux will not load shared objects in the executable's folder (like windows does with DLL files) unless you write a batch script that runs the relevant commands. This is compounded by the fact that linux distros usually have to compile their own versions of libraries and programs due to having their own quirky setups which have incompatibilities between eachother.

I'm not saying that the ability to create your own system is bad. I'm just saying that it makes software development much harder if you're selling commercial software due to compatibility being a crapshoot.
The typical solution for people who give slightly more of a toss about Linux is to target SDL2 as it acts as it's own platform layer and is a popular library that nearly every distro supports.
 
There is a lot of technical jargon that goes along with it but as I understand it ( and please correct me if I'm wrong on this regard) the Windows API that is used for running games on Windows is DirectX which is a proprietary API developed internally by Microsoft, meanwhile games that are native to Linux used OpenGL and more recently Vulkan which both are open source standards. Thing is the open source APIs like OpenGL and Vulkan can be used on Windows precisely because of their open nature but that is not the case for DirectX.
Correct, which is why WINE is a thing, although according to WINE itself you shouldn't even do that unless it's one of the "d3dx9_xx.dll" types
So far Mint is the one I'm liking best for desktop, while I use Linux Lite on an older laptop that ran like ass with Windows 10 and now it is actually functional.
Lubuntu (one of the "flavors" of Ubuntu) is a distro made specifically for old-ass pcs with low specs. I've gotten it to run smoothly on a laptop that was made for XP with a Pentium M processor
 
Just want to point that scalpers have been reselling Valve Steam Decks on eBay from prices ranging from $890+ dollars to over $2,000+ dollars.

I’ll update on this post with more screenshots when I have the chance.
 
Valve Steam Decks seem like a wasted of money. I just a gaming laptop on sale for about the same price as one. I heard not all games are playable on it.
This take and the following debate has been played out for months.
 
I'm currently early Q2 (got moved from Q1). Surprised nobody has come around to gloat about getting one yet.
Haven't met anybody that got one yet. Not a lot of substantial benchmarks for more technical stuff either. Well, I hope portable computers like that become the future since you can do a lot with it.
 
I just received the "your steam deck is now available" email, payment now in. Whenever the shit logistics company manages to get it over to my shithole town, happy to answer what q's I can.
 
X windows for instance provides no GUI primitives, just a system for mouse + keyboard input and windowed output. If you want actual GUI you either write it yourself or link a library (Hopefully not a bloated POS like GTK or QT)
Games usually implement their own UI. And what's the big difference between using Qt on Linux to MFC, WPF, etc. on Windows?

Sound has been a persistent issue with Linux with several libraries fighting for dominance. They're all implemented over ALSA so it's best to target that.
A game developer doesn't have to worry about this at all. Just use OpenAL (even some Windows games use it) - it runs on everything.

Dynamic linking is a real pain in the arse unless you make users run a batch script that loads the desired libraries before running the program. In linux, by default all libraries must be installed globally and this can cause version conflicts. Linux will not load shared objects in the executable's folder (like windows does with DLL files) unless you write a batch script that runs the relevant commands.
This is wrong. Linux uses the ELF format - you can link your program so that it includes the executable's folder in the rpath - which Linux will load.
Making a script with something "LD_LIBRARY_PATH="$(pwd):$LD_LIBRARY_PATH" ./muhgame" wouldn't be a big deal either.
 
I just received the "your steam deck is now available" email, payment now in. Whenever the shit logistics company manages to get it over to my shithole town, happy to answer what q's I can.
Congrats on winning the deck lottery of the farms. Only thing I can ask for is Yuzu performance with Vulkan since all the youtubers are scared of nintendo now.
 
Games usually implement their own UI. And what's the big difference between using Qt on Linux to MFC, WPF, etc. on Windows?
True but it's an important thing to note (Especially for non-game applications) and as for your second question, quite a few GB of development libraries >:(
This also just kind of sucks in general as it means applications have inconsistent UI. If X11 added some sort of agreed widget specification (provided it wasn't shit) and you could pick whatever program you wanted to materialize said widgets the Unix world would be a better place.

A game developer doesn't have to worry about this at all. Just use OpenAL (even some Windows games use it) - it runs on everything.
OpenAL is no longer open source although I've heard that the open source implementation "OpenAL Soft" is fine.

This is wrong. Linux uses the ELF format - you can link your program so that it includes the executable's folder in the rpath - which Linux will load.
Making a script with something "LD_LIBRARY_PATH="$(pwd):$LD_LIBRARY_PATH" ./muhgame" wouldn't be a big deal either.
Never said that Linux didn't use ELF files. My reference to DLLs was specific to Windows.
As for the rpath, I've heard tons of different ways on how to set it so it'll load libraries from the folder the executable is in from various conversations but I think I've found a reliable way to do it so consider that box checked. My real gripe though is: Why isn't this by default? Most people don't do this for whatever reason and it makes distributing software a pain in the ass.
Your final bit about making a script is reiterating what I already said but note that you should put "$@" after the game invocation or else any arguments will be discarded.
 
True but it's an important thing to note (Especially for non-game applications) and as for your second question, quite a few GB of development libraries :mad:
My Linux system with all the qt development libraries for multiple versions is still smaller than a default Windows install.

My real gripe though is: Why isn't this by default? Most people don't do this for whatever reason and it makes distributing software a pain in the ass.
Because system-wide installs are the default on Linux? Changing an environment variable or linker flag isn't really much to ask for.
I'd be more pissed about GNU sabotaging static linking instead.
 
What I really mean is that Linux is very fragmented.
that's usually not an issue, just target one distro, anyone else has to figure it out themselves how to get it running (which they usually do, since it's linux after all). outside of that most games don't do stuff themselves anymore and just buy the middleware, which might not be available.

the biggest reason is economics anyway, you can have the best environment, if your platform has 2% market share there's simple no point it porting it natively and spending extra money to maintain 2 different SKUs - and there's really no way around that chicken/egg problem, even proton has it's drawback where you could argue it gives devs even less reason to do native ports, otoh if it increases the market share that might convince them at some point.

This also just kind of sucks in general as it means applications have inconsistent UI.
not much different than windows if they use electron, but hey at least it will look the same on different platforms...
in the end I don't really care what the button or checkbox looks like, shit UX will be shit no matter how ugly or conform it is.

I mean if referring to the D2 stuff with Windows. I can see why.

Having something not be supported is fine. Most people realise that they're buying a PC rather than a console, and as such, there's going to be cases where something just won't run for a multitude of reasons. If it was just "it can't run" or "it will not run because it may compromise anti-cheat or something else", then it'd be fine.

Going out of your way to deliberately sabotage your product is shitty though. Especially considering that it's not a matter of piracy or console-exclusivity. A PC is a PC, why should game developers give a shit what type of PC it is or what OS you run (outside of specific reasons like an OS which somehow gets around multiplayer security)
wanna know the worst part? destiny 2 is available on stadia, which runs on debian.

I assume the reason they shut it down outright is a) it's bunghole aka "retarded cunts" b) they don't want to deal with people possibly breaking their anticheat or support tickets from people who either nag them how to get it running (missing the point that it's not "officially" supported) or got banned because of it and then have to investigate. it's similar to ubisoft which drops shit on pc with no anticheat whatsoever, and then are flabbergasted that people use fucking cheat engine to completely break the game in multiplayer, either missing that pc isn't a walled garden or didn't bother.
 
Last edited:
Just want to point that scalpers have been reselling Valve Steam Decks on eBay from prices ranging from $890+ dollars to over $2,000+ dollars.

I’ll update on this post with more screenshots when I have the chance.
Well, here‘s the screenshots:

3ABD9174-1FFE-459C-9CF5-00558839BEE4.jpeg 2252B5D8-C6E0-413D-AFCC-A049C4B10189.jpeg 4CC48B2E-805B-4E9F-A345-BF4C805CD0AD.jpeg C5B81E8A-2B9C-419D-AE15-A40CF7575D06.jpeg F14DA523-9FA0-4F1E-AA7A-DF8720A84D7F.jpeg 6D5D96F5-F076-4841-A797-796DCF1498FA.jpeg

Scalpers don’t change; they just remain the same.
 
Just think, every one of those is a steam deck that could already be in the hands of someone who actually wants to use it for its intended purpose. Instead it's in the hands of a greedy asshole who just wants to make money off of nothing. I wish scalpers a slow, painful death.
 
Just think, every one of those is a steam deck that could already be in the hands of someone who actually wants to use it for its intended purpose. Instead it's in the hands of a greedy asshole who just wants to make money off of nothing. I wish scalpers a slow, painful death.
At least valve tried. I personally can't think of a better system than what they did.

Imagine how bad it would've been if they didn't do reservations. Not coping and seething at all. NOPE
 
Last edited:
Back
Top Bottom