nixcitizen/gamescope.nix

59 lines
1.1 KiB
Nix

{ stdenv, lib, fetchFromGitHub, meson, pkg-config, xorg, libdrm, pipewire
, vulkan-loader, wayland, wayland-protocols, libxkbcommon, libcap, SDL2, glslang, udev, pixman, libinput
, stb, mesa, libseat, xwayland, ninja }:
stdenv.mkDerivation rec {
pname = "gamescope";
version = "3.11.30";
src = fetchFromGitHub {
owner = "Plagman";
repo = pname;
rev = version;
sha256 = "sha256-dSQrOlQfUZkA8Vrc/Tj9dAWIIBOeb+tAen21fZe3Gto=";
fetchSubmodules = true;
};
nativeBuildInputs = [
meson
pkg-config
ninja
];
buildInputs = [
libdrm
pipewire
vulkan-loader
wayland
wayland-protocols
libxkbcommon
xorg.libX11
xorg.libXdamage
xorg.libXcomposite
xorg.libXrender
xorg.libXext
xorg.libXxf86vm
xorg.libXtst
xorg.libXres
xorg.libXi
xorg.xcbutilwm
xorg.xcbutilerrors
libcap
SDL2
glslang
udev
pixman
libinput
mesa # libgbm
libseat
xwayland
];
preConfigure = ''
# Use packaged stb.
cp -R --no-preserve=mode,ownership ${stb}/include/stb subprojects/stb
cp subprojects/packagefiles/stb/* subprojects/stb
'';
}