This would solve a major issue with SteamOS. The SteamOS itself is immutable/read only as you know. This means, one cannot install or make changes to the core system (it is possible, but that is temporarily until update will revert those changes back). That is why we have the Flatpak support. But many software are not available there (especially CLI tools, if you use them).

This is where the Nix package system comes into play. In short, it allows for installation of programs without touching the immutable part of SteamOS in a controlled and safely manner. These would persist even on SteamOS system updates. For a better explanation, have a look here: https://nixos.org/guides/how-nix-works.html

Valve confirmed: https://github.com/NixOS/nix/issues/7173#issuecomment-1603858003 that Nix package support will be integrated into SteamOS! That’s huge. In example I have tools which I cannot distribute easily for Steam Deck users, because Flatpak does not support CLI apps. Nix would solve this issue!

  • This is probably not something I will make use of at all in the near future but I still absolutely love that they are doing this! Valve is really carving out a path forward for linux as a whole and eventually normal folks - not just enthusiasts - will be able to drop Windows completely.

    •  Krik   ( @fraenki@feddit.de ) 
      link
      fedilink
      English
      31 year ago

      If Valve really allows nix then future mods & stuff can be provided through that. As long as a person manages to create a nix config for whatever everyone can let nix replicate that on any device anywhere and anytime.

      That guy managed to install and run Blizzard games? Share the config.

      That other guy is able to tweak an intricate feature? Just share the config.

      How much knowledge do gamers need to apply that config? Close to nothing.

      It’s a really neat thing.

  •  Kaldo   ( @Kaldo@beehaw.org ) 
    link
    fedilink
    English
    71 year ago

    What does ‘making changes to its core system’ mean? I though people were able to use steam deck as a proper pc already, installing new apps on it and stuff like that?

    • SteamOS core system is locked as read-only. That is what immutable means. In example you cannot install applications using the core system management named “pacman” (short for package manager). There is a toggle in SteamOS to disable this read-only functionality, but with next system update all changes are reverted.

      But how do you install applications on SteamOS? You certainly can do, right? Yes! That’s the store it offers, which uses a different concept called Flatpak. These are programs you can install without touching the core system. And therefore these are persistent, even on system updates. And they are similar to Android programs in a sandbox.

      I assume you are not familiar with how Linux systems operate. Imagine this like Android, where you are only allowed to install from a store, which cannot make changes to the Android core, but only install applications on a secured way. But that is limited. Or imagine a game console where you can only install games and programs which the store has. And it lacks Command Line Interface programs in example or many other tools not found in the official store. That’s how SteamOS works at the moment.

      And here comes the Nix packagement into play. This is a different system again. You can think of it like Flatpak, meaning any changes to it would be sandboxed and do not touch the core system. This allows for Command Line tools and some other stuff, as discussed before. Nix packages will be part of the next big update of SteamOS.

    • That’s true, but some system level changes by default can’t be done because most system folders are read only. It’s trivial to turn this off, however a steam os update would overwrite any changes made.

      For installing new apps this is not an issue because Steam os is designed with flatpak support, so if an app is shipped as flatpak (or appimage which is just a single file you can execute) then it can be used without making the system folders writeable

      However in this case, it’s about the nix package manager which needs access to specific system folders to not just install packages (which can be apps or system stuff) but also to apply changes to the system configuration

      It’s really nice that a valve developer is taking the extra steps to make sure nix can be used out of the box. I don’t really understand why they are doing this, I think it’s just because they think it’s cool and some users are going to appreciate it.

  • What is the current state on SteamOS as a desktop replacement? My understanding is that the currently downloadable version is only the SteamDeck version and not suitable as a Windows replacement for the desktop.

    • I don’t use it as a desktop replacement (I still have a windows desktop). But I do but default have my deck docked and hooked up to a TV, in desktop mode.

      I’ve installed various flatpack programs, to include discord, chrome, and a couple jetbrains ides for various languages. They work great. I’ve done a couple non steam games (diablo), with mild annoyance but success in the end.

      I have not used any office programs on it (as much as it’s cool to like Linux, I just think Microsoft wins by a lot there, and have no desire to get them working on Linux).

      The deck itself has some power limitations, but I have no reason to think that they would translate to steam os on a more powerful machine.

      So basically, it probably depends on what you want. It’s pretty reasonable. Definitely good enough for my secondary computer that blocks ads for videos on my tv. But personally, I still want a windows computer, because windows is the default assumption for most software I use.

    • I don’t know what you mean by “steamdeck version”, but afaik the SteamOS you can download from steam is version 2 which is really old by now while the Steamdeck runs version 3 and is still not available for download outside of it. Mind you it isn’t just a major version change but they even changed the linux OS it’s based on, moving from Debian to Arch.
      As for the replacement for desktop, the Steamdeck (and with it SteamOS 3) launched with full desktop mode available and while the core system is immutable as discussed, it’s still a fully functional desktop OS and as such it depends on your personal needs how much of a windows replacement it can be, just like any other linux OS. Also you might need a dock or other USB hub to attach a keyboard and mouse if you need them, but there is onscreen keyboard and touchpad on the steamdeck available.

    • SteamOS comes loaded with KDE for the desktop, which is arguably a better desktop experience than Windows. Very powerful file manager, built-in tiling, highly configurable desktop, and downloadable window manager scripts and add-ons.

      The downside is the usual for a Linux desktop - software compatibility.

    • There seem to be some misconceptions and expectations from you. SteamOS is the Steam Deck operating system and will always be. So once it is available to the public, then it will always be the Steam Deck OS. That is what SteamOS is. It is build on the Steam user interface divided up into desktop mode and gaming mode.

      At the current moment, there is no Steam Deck OS available to the public. The downloads from Valve to install on other machines is an old version called Steam OS 2, which is a completely different operating system not related to Steam Deck and abandoned for years in favor of the new Steam OS 3. Which is still not available. The stories and experimentation from other people you read are a community build operating system based on the recovery image of the Steam Deck, which only works on a handful of PC configurations that matches the Steam Decks hardware compatibility (in example no Nvidia).

      So for short: Steam OS 3 is not available to the public yet, only an unofficial community created OS called Holo OS that is build from the Steam Decks recovery image.

      And in general, Steam OS 3 works only limited as a general purpose operating system to replace a desktop. If that is your main goal, then I recommend to install a standard Linux system instead. But if your main goal is to play on the device with Steam, then Steam OS is perfect (once it is out). Also have in mind, a Linux based operating system will never replace Windows entirely, because many important programs you might use won’t work there. For some other programs you need to find alternatives and for some the alternatives might not be satisfying to you. It entirely depends on what you want to do with it.

    •  coolin   ( @coolin@beehaw.org ) 
      link
      fedilink
      English
      31 year ago

      For non-nixos systems and just installing packages it’s really simple after you’ve installed nix:

      nix-env -iA nixpkgs.<package> install

      nix-env --uninstall <package> remove

      nix-channel --update update