{ config, lib, pkgs, inputs, ... }: let np = config.nathan.programs; in with lib; { config = mkIf np.games { environment.systemPackages = let # https://github.com/Admicos/minecraft-wayland glfw-patched = pkgs.glfw-wayland.overrideAttrs (attrs: { patches = attrs.patches ++ [ ../../../patches/minecraft/0003-Don-t-crash-on-calls-to-focus-or-icon.patch ../../../patches/minecraft/0004-wayland-fix-broken-opengl-screenshots-on-mutter.patch ]; }); stable-packages = with pkgs; [ # Dwarf fortress (dwarf-fortress-packages.dwarf-fortress-full.override { enableFPS = true; }) # Prism Launcher minecraft stuff inputs.prismlauncher.packages."${system}".prismlauncher glfw-patched gamescope ]; unstable-packages = with inputs.nixpkgs-unstable.legacyPackages."${pkgs.system}"; [ # Packwiz for maintaing modpacks packwiz ]; in stable-packages ++ unstable-packages; # Install steam programs.steam.enable = true; # Make steam work with gamescope nixpkgs.config.packageOverrides = pkgs: { steam = pkgs.steam.override { extraPkgs = pkgs: with pkgs; [ xorg.libXcursor xorg.libXi xorg.libXinerama xorg.libXScrnSaver libpng libpulseaudio libvorbis stdenv.cc.cc.lib libkrb5 keyutils gtk3 ]; }; }; }; }