The most interesting part of the article was the mention of a /nix partition, as I didn't realize the steamdeck supports nixpkgs, after researching it more, they do indeed (not installed by default, but at least it is possible without having to fork an entire os to get it on the device).
You can put the nix store in any writable location and modify $PATH to point to the symlinks directory.
The root issue can only be addressed by ROM updates from the manufacturer but I'm running an old DL360 that's no longer supported by HPE.
The patch itself is only one line change but updating the kernel is a pain since I have to : - get SRPM (there's no git repo) - unpack SRPM, apply patch - rebuild and install
https://kubevirt.io/user-guide/virtual_machines/host-devices...
Declarative cloud native game launching!
kubectl apply -f crysis.yamlI recently moved to Arch after a few years of NixOS (preceded by years of Arch) and I think the fears of the author are misplaced.
Arch is definitely a very serious and mature distro and I'd trust them more than Valve.
The quality of the packages available for Arch is what made me move from NixOS. The main repos are updated really fast and AUR has a lot of useful packages.
You and I can, the overwhelming majority of computer users cannot. Valve clearly focuses on building for the average person, something that Linux distributions (as much as I love them) still don’t really do (well).
The system automatically recovering from a failed upgrade is essential in a low-maintenance OS at this point.
Could, sure, but we have the technology to make it unnecessary and disk isn't that expensive, so why not?
Can you give some examples of this please?
I generally find the NixOS packages high quality.
I'm undecided on what I think about this since... I frequently get bitten by reproducibility issues of pip packages.
Anything packaged in nixplgs generally rarely fails for me, especially in the more complex cases of cuda/pytorch.
I suppose I'm more likely to want "pytorch except" where that except is a newer dependency or build flag improving performance.
I'm using NixOS, which can indeed be a tinker timesink, but is good for exploration. You can easily try different components, and then completely remove them (aside from some ~/.config pollution) if you don't want to keep them. It's also trivial to patch things before you install them (such as adding some kernel patches to make Linux usable on esoteric hardware like a gaming handheld).
There's a NixOS community called Jovian that's reconstructing Valve's random SteamOS tarballs into tagged commits on GitHub, which you can browse as if you were a Valve employee. They've made it so you can install your own copy of SteamOS atop NixOS by adding a few lines to your Nix configuration. They're clearly Linux experts, and you can see from the source that you're getting Valve's packages unadulterated, save for simple adaptations like introspecting instead of hardcoding the power button location.
So, if you want a pure SteamOS experience without hosting your own mirror of Valve's update system (or if you want to be able to browse Valve's source without downloading a 3GB tarball), give Jovian a try.
Install instructions: https://jovian-experiments.github.io/Jovian-NixOS/getting-st...
Mirrors of Valve's source: https://github.com/orgs/Jovian-Experiments/repositories?type...
> Bazzite is an OCI image that serves as an alternative operating system for the Steam Deck, and a ready-to-game SteamOS-like for desktop computers, living room home theater PCs, and numerous other handheld PCs.
https://github.com/ublue-os/bazzite/
Worth visiting the readme even if not interested. There's a huge list of included stuff, and a lot of it seems really cool.and helpful (for gamers or streamers mostly).
I'm not deep enough in their weeds to perfectly explain it in a concise HN comment, but it's all about having a read-only known-good Linux distro at the root and then layering packages on top, taking much inspiration from server-side containers. It's supposed to be both more secure and more reliable/reproducible/customizable than traditional Linux. You just write in a container manifest which packages you want. When an upgrade comes out, it runs the upgrade, then reinstalls your packages on top.
https://universal-blue.org/guide/fork-your-own/
And yes, you can roll back to previous images as its an "immutable" OS as well should issues arise
Do people not use the term HTPC or "media center" anymore?
As far as I know they also prefer to upstream things in general. I think AMD's amd-pstate / amd-pstate-epp and related work was kicked off becasue of Steam Deck, but it all went upstream.
Bummer. This rules out 76% of steam users, according to their hardware surveys.
It almost feels like they're trying hard to make the experience worse for everyone: users, OS developers, app developers, hardware developers... I don't know what to make of it, if you want NVidia you should pick an OS other than Linux (I've heard FreeBSD actually works fine), if you want Linux pick a GPU other than NVidia.
I had a lot of trouble getting the unity editor working on my steam deck, but that may have been due to using an editor version from 2021 (for unrelated reasons). It seems to behave fine on a normal desktop environment though.
Unreal works okay for me, but I’ve had to submit a few patches upstream to work out some Wayland issues. Other than that, it’s about as bloated/buggy/slow as it is on windows. Most of the time if I think there’s some Linux-specific issue I’ll open the same project on windows only to discover it was the same.
I'm not trying to prematurely optimize but my game worlds are very large, (I have a working to scale earth for example) (oops, forgot to mention, to get good large world behavior, compiling with double precision is a must! (https://godotengine.org/article/emulating-double-precision-g...)) so I've been watching lots of GDC and other talks from AAA titles and how they do their rendering pipelines, and my conclusion is that shaders are really the powerhouse of gamedev these days and anyone interested would do themselves a favor to start learning the quirks of your engines shader language now.
After hearing people be ecstatic, I thought I’d go full-in on Linux gaming. I have a pretty bog-standard gaming PC that is very Linux-compatible (Intel i5 + Radeon 6800XT) and on there Apex Legends has horrid frame pacing issues, Mirror’s Edge doesn’t work with wireless Xbox controllers. You lose out on a lot of GPU suite features that Windows has. Gnome doesn’t support VRR. Etc etc.
There’s so many small issues it’s held me back from deleting my Windows partition. Maybe in a year or two?
That said, these things work flawlessly on the Deck.
For Mirror's Edge, were you using Steam Input?
> For Mirror's Edge, were you using Steam Input?
Yes. The problem lies in the fact that only the Xone driver properly supports the Xbox wireless adapter, but it doesn’t play nice with Mirror’s Edge. Xpad and XpadNeo do work, but those require USB or Bluetooth.
And me having to tweak a million things tells why gaming on Linux still sucks, aside from Deck’s blessed config. I don’t want to deal with a thousand papercuts, I want to boot my system and play. Windows is still closer to that experience than Linux.
You can install it upon Arch from AUR.
Putting that aside:
Windows users always find a reason not to switch to Linux because some missing feature. In two years? There will be another new feature or game on Windows. I remember people insisting on using Windows because it support their „3D-Shutter glasses“ or their card from Nvidia. Either you want use Linux or not :)
Why are many features initially only available on Windows?
First. That is wrong. Important features like cgroups, namespace and containers/Flatpak where novelly developed upon Linux.
Second? MBAs only look at past numbers. So Windows often get traditional Windows stuff first. You make guess it, innovative companies care about what will be possible in future. Valve for example.
The MBA style thinking is also in many consumers. Still buying Nvidia? Because they were faster in the paper sheet? I prefer the cards which works well with Linux, so AMD or Intel. Frames actually generated are more worth than problems with proprietary drivers.
PS: Linux has maybe won the war against drives. Seems like Nvidia open most stuff slowly and feature land in the nouveau-module or mesa. A decade to late. I’m already in Team AMD ;)
Steam Input is rapidly becoming the Google Play Services of the desktop linux world. On Steam Deck for a long time you couldn't even use the touchpads without the Steam client running.
I find it helps with pacing. It also supports VRR with a commandline argument, '--adaptive-sync'.
VRR may need support in the environment to work, I'm not sure. Sway/wlroots does it fine. Presumably KDE does/can too since that's what the Deck uses in 'desktop' mode (otherwise, gamescope).
edit: I see in another post - you have! Agreed on KDE being scattershot. I hope the Gnome people clear things up for you. I wouldn't go so far as to suggest i3/Sway, even though I'm happy with them
May i ask what driver features are you missing? I only want some decent fan control instead of relying on random scripts off github. AMD has to release some sort of GUI panel for sure.
Have you tried CoreCtrl [0]?
> My 5800x3D and 6800XT deliver an outstanding Linux gaming experience.
I have a 7900XTX and performance under Linux has been at least on par with Windows, sometimes better (though not by much).
> May i ask what driver features are you missing?
I'm not GP but I'd love to see frame gen and stuff like anti-lag and upscaling integrated into amdgpu with some sort of official way of setting it (though looking at Adrenaline it might actually be best if it's left up to the community to create the GUIs).
I'm told it's better in Mesa 23.3 though, haven't tested.
Apex Legends run flawlessly for me, but only on KDE/X11 with Nvidia reflex enabled[0].
If you are on Radeon though, I bet the problem is your window manager. I have the frame pacing issues on:
- hyprland/wayland (even with no_direct_scanout = true; and floating game windows) - KDE/wayland
I also had a weird issue using gamescope as my DM where apex got resized into a tiny frame in the top left that was like 200 pixels or so wide.
> That said, these things work flawlessly on the Deck.
Likely due to running into these graphics driver -> WM and similar compatibility issues and fixing them. The other performance improvements from kernel changes probably don't hurt either.
0: Requires unreleased proton-ge build: https://github.com/GloriousEggroll/proton-ge-custom/pull/104...
Valve should be the only one that is worried about your opinion here. I think they develop SteamOS as a backup plan, though, in case Microsoft ever starts to take their own App Store seriously.
For example: Halo Infinite works fine, but Destiny and Call of Duty don't.
This is true for at least EAC/EasyAntiCheat. This covers a lot, sure, but not everything!
Let Valve do the needful for running them under GNU/Linux, if at all.
One is that developers now a specific hardware + software combo to test their games with. Even if it’s the same build they’re sending out, they’re still testing their game on the Deck and fixing issues, leading to a better (but not perfect) experience for Linux gamers. Here’s a video of Swen Vincke, CEO of Larian studios playing a game released by his studio on the Steam Deck - https://youtu.be/kzfEkSGa45k. He’s very pleased and promises to test future games released by his studio on the Deck. And he stuck to that promise - Larian released several fixes specifically for the Steam Deck to make Baldur’s Gate III run better. Linux gamers benefit from that.
Second, this increases the % of gamers using Linux. After the Deck’s success in the last couple of years Linux is at 1.91% of the respondents of the Steam Hardware Survey for Nov 2023. Linux was at 1.15% 18 months ago. Doesn’t sound impressive, but if that growth continues and it reaches 3-4%, at that point developers will find shipping native Linux builds more attractive.
Studios don't care about native GNU/Linux, despite the games being shipped with Android/NDK, PlayStation POSIX environment, and the available APIs on Switch OS.
All of them much easier than porting from Windows/XBox, almost straight ports if coming from Android/NDK.
Ah well, it's funny to see people complaining because it really solos out the OS you're using. Windows users have native DirectX, Linux users have near-flawless DXVK, and Mac users... well, Mac users get what Apple gives them, and they have to learn to be happy with it.
Game studios aren't FOSS indie devs stressing out about 3D APIs.
They are used to specific hardware since the Atari and Magnavox.
From a quick search this is the best description of it I found: https://github.com/ValveSoftware/steam-runtime
I'd be curious to hear why. Arch deserves it's reputation for poor stability, but for Valve's application with OSTree and immutable root should work fine. For users who don't want to tinker, they can receive a quality first-party experience with smooth upgrades. Users that do want to tinker are largely funneled into using Flatpak or AppImage, which are much more stable than AUR packages.
I love Arch, but it is a demanding mistress. If you get behind on updates, you're asking for pain. Also it can be very disruptive to suddenly get a new major version of Gnome that breaks extensions you used, or applications, etc.
What we instead should say is not that Arch is "unstable" because I agree it's not, but rather that Arch requires a lot more care and feeding and if you don't do that, it can lead to instability
I switched to Gentoo and it fixed all the issues I was encountering with Arch, and was more stable. Now I'm on NixOS, which is far more stable than Arch or Gentoo were.
Now, that said, the way SteamOS uses it, I don't see any issues. With an immutable system, A/B updates, and tested images, the compatibility and update issues are solved. Using flatpak for user applications solves the rest of the noted issues. Would be ideal if I could install with Nix instead of Flatpak, but ran into some trouble there.