4 ms·
> you can either run NixOS (which isn’t ideal on a Steam Deck) I've actually been using NixOS on my Legion Go to give me the SteamOS experience while I wait fo
by bsimpson 2y ago
> you can either run NixOS (which isn’t ideal on a Steam Deck)
I've actually been using NixOS on my Legion Go to give me the SteamOS experience while I wait for the official image from Valve [1].
I knew that Valve had whitelisted /nix, but seeing how the author explicitly loads Nix in Bash:
.nix-profile/etc/profile.d/nix.sh
makes me wonder how it works in game mode. Say that someone uses Nix to install a game like YARG that's not in the Steam store [2]. That will install the game to /nix/store and write an alias to the user's desktop. /home/deck is not immutable, so you could add the desktop file as a non-Steam game, and everything will work as expected, right?
What are the boundaries between things that work everywhere, things that only work after you've loaded a bash profile (e.g. from a terminal), and things that only work in NixOS? What if a package wants to run at login? What if it uses its own systemd rules?
[1] https://github.com/Jovian-Experiments/Jovian-NixOS/ https://github.com/Jovian-Experiments/Jovian-NixOS/
[2] https://news.ycombinator.com/item?id=42991513 https://news.ycombinator.com/item?id=42991513
- saghm 2y agoYou definitely can easily run anything from outside Steam that you've added to as a "non-Steam game" from game mode like you describe; I use this a few mod management apps for various games I play, as well as for launching Battle.net on my Steam deck. Not sure if I'm misunderstanding what you mean by systemd rules, but from what I understand, enabling a systemd service (either at the system or user level) is the most reliable way to make sure that something starts up in game mode as well as desktop mode. Because I find it useful to ssh into my Steam deck for a lot of things rather than trying to do it all via desktop mode (e.g. managing config files for Baldur's Gate 3 mods that aren't from the in-game mod installer), and I always turn off wifi on it whenever I leave my apartment with it to save battery, I enabled the sshd systemd service, and it's available even if I boot up directly into game mode. I haven't actually been able to find any other way outside of an enabled systemd service to make things start up automatically in game mode, which ended up being an issue for me when I wanted to autostart something through Wine that didn't have an option to avoid trying (and failing) to open a window.
- bsimpson 2y agoSo you can add Nix packages as non-Steam games and use Nix to setup persistent systemd rules/daemons, even though this isn't NixOS?
- Rikudou 2y agoHaven't tried adding Nix packages as non-Steam games, but you can use Home Manager to create user systemd rules.
- saghm 2y agoI haven't tried it personally, but from what I can tell, if you have a binary you can give a path to (and setting up env vars if needed in the "launch arguments"), you should be able to add it as a "non-Steam" game, and anything set up to start automatically via systemd seems to be properly started up in game mode, so I don't see why this wouldn't work!