Hi, I am considering switching to NixOS and I was wondering what level of hassle I should expect for gaming.

I have been using linux for about 10 months so I don’t know a lot yet. I am wondering if it is worth it to try gaming on Nix or if it is going to be way too much of a headache considering my limited knowledge.

I’ve had wildly different experiences trying gaming on different distros, and very differently from what I expected. It went from fine for a weird niche distro (antiX), to really awful for a distro supposedly “easy” and “good for gaming” (Manjaro 😑), to absolutely amazing gaming distro (Nobara), and finally to surprisingly good for a “don’t try unless you are a Level 99 Tech Wizard dual-classed Zen Master you idiot” distro (Arch). So I really have no clue what to expect from Nix.

I really like Arch but my main issue is that I keep forgetting what I have already configured and how and with which settings, or I leave stuff partially configured because adhd then I forget it wasn’t finished and where I was at, so using config files instead sound insanely more convenient and I’ve been wanting to try Nix for a while.

I’d be really glad for anyone willing to share their experience of gaming on Nix 🙂

  • Darohan@lemmy.zip
    link
    fedilink
    English
    arrow-up
    2
    ·
    5 months ago

    I’ve played Stardew with no configuration on my NixOS install a few times before, I think you might have something else going on there?

      • Darohan@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        5 months ago

        Interesting… I’ve just been pressing the “play” button on Steam 🤔 Let me do some digging and see if there’s anything weird I might be doing.

        Edit: Nope, confirmed, just pressing “play” in Steam using GE-Proton-9-9 works fine. Is there any reason you’re running it through nix-shell and steam-run instead of the Steam interface?

        • guttermonk
          link
          fedilink
          English
          arrow-up
          2
          ·
          5 months ago

          Just tried GE-Proton-9-9 and the play button goes to “stop” and then right back to “play”. I tried launching from terminal using nix-shell and steam-run so I could see the error messages when it crashes. Thanks for looking at your setup to see what was going on.

          • Darohan@lemmy.zip
            link
            fedilink
            English
            arrow-up
            2
            ·
            5 months ago

            Interesting, so it just crashes outright? Might I ask what your hardware is like?

            • guttermonk
              link
              fedilink
              English
              arrow-up
              1
              ·
              5 months ago

              It’s a 2013 macbook air, which is weird because when I had OSX installed it played Stardew fine.

              • Darohan@lemmy.zip
                link
                fedilink
                English
                arrow-up
                2
                ·
                5 months ago

                Huh, yeah that’s really weird. Intel device, no Nvidia, capable enough hardware. Unless there’s a hardware module for your device that that you haven’t enabled in your configuration.nix (I had to do one on my Framework for a few things to work properly), I don’t know why that wouldn’t be working for you. Out of interest, how did you install steam? Is it in your environment.systemPackages, or did you enable it with packages.steam.enable = true; (or whatever it is)

                • guttermonk
                  link
                  fedilink
                  English
                  arrow-up
                  2
                  ·
                  5 months ago

                  I did both - I have steam and steam-run in environment.systemPackages and I have packages.steam.enable = true;

                  Here’s my hardware config:

                    hardware = {
                      bluetooth.enable = true; # enables support for Bluetooth
                      bluetooth.powerOnBoot = true; # powers up the default Bluetooth controller on boot
                      opengl = {
                        enable = true;
                        extraPackages = with pkgs; [
                          intel-media-driver # LIBVA_DRIVER_NAME=iHD
                          intel-media-sdk
                          intel-vaapi-driver # For older processors. LIBVA_DRIVER_NAME=i965
                          vaapiIntel
                          vaapiVdpau
                          libvdpau-va-gl
                        ];
                      };
                      pulseaudio = {
                        enable = true;
                        support32Bit = true;
                        extraConfig = "load-module module-combine-sink";
                      };
                      xpadneo.enable = true;
                    };