packages: Add gamescope
This commit is contained in:
parent
1d630ebc57
commit
d60892df98
27
packages/applications/wayfire/firedecor/default.nix
Normal file
27
packages/applications/wayfire/firedecor/default.nix
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{
|
||||||
|
lib, stdenv
|
||||||
|
, fetchFromGitHub
|
||||||
|
, wayfire, wf-config, librsvg, boost, wlroots, pango, wayland, libxkbcommon, systemd, libinput
|
||||||
|
, meson, pkg-config, cmake, ninja
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
pname = "firedecor";
|
||||||
|
version = "20220519";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "AhoyISki";
|
||||||
|
repo = "Firedecor";
|
||||||
|
rev = "0170c4df209f0226295a9e2aa3cae782d9861908";
|
||||||
|
sha256 = "0a8vc4l3az14l8piwzqgfqsdv16kakcvcznvw6q1dgb2sf97zdlv";
|
||||||
|
};
|
||||||
|
|
||||||
|
nativeBuildInputs = [ meson pkg-config cmake ninja ];
|
||||||
|
|
||||||
|
buildInputs = [ wayfire librsvg boost wf-config wlroots pango wayland libxkbcommon systemd libinput ];
|
||||||
|
|
||||||
|
patchPhase = ''
|
||||||
|
sed -e "s|wayfire.get_variable(pkgconfig: 'plugindir')|'$out/usr/lib/wayfire'|" --in-place src/meson.build
|
||||||
|
sed -e "s|wayfire.get_variable(pkgconfig: 'metadatadir')|'$out/usr/lib/wayfire'|" --in-place metadata/meson.build
|
||||||
|
'';
|
||||||
|
}
|
@ -10,6 +10,33 @@ let
|
|||||||
extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
|
extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland";
|
||||||
#extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland --enable-features=WebRTCPipeWireCapturer";
|
#extraStartupArgs = "--enable-features=UseOzonePlatform --ozone-platform=wayland --enable-features=WebRTCPipeWireCapturer";
|
||||||
};
|
};
|
||||||
|
wf-config_0_8 = prev.wf-config.overrideAttrs (old: {
|
||||||
|
version = "0.8-git";
|
||||||
|
src = prev.fetchFromGitHub {
|
||||||
|
owner = "wayfirewm";
|
||||||
|
repo = "wf-config";
|
||||||
|
rev = "e42a3870fb194842a505ad5a9671be1aebda0b0b";
|
||||||
|
sha256 = "0n6i3hizbqixxjh33950ya8avwqil5k94jbgff1pimcbh9ahpgrr";
|
||||||
|
};
|
||||||
|
});
|
||||||
|
wayfire-master = (prev.wayfireApplications-unwrapped.wayfire.overrideAttrs (old: {
|
||||||
|
version = "0.8.0-20220526";
|
||||||
|
src = prev.fetchgit {
|
||||||
|
url = "https://github.com/WayfireWM/wayfire.git";
|
||||||
|
rev = "5dbf0d0fd8ec46cf112f05fb63057f5b6d06b10d";
|
||||||
|
sha256 = "sha256-ZeaNSlDHoiLnRlHKk14meDbrizIz+nm3iYl90vvo2Ps=";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = (map
|
||||||
|
# Override wlroots with wlroots_0_15
|
||||||
|
(x: if (prev.lib.getName x) == "wlroots"
|
||||||
|
then prev.wlroots_0_15
|
||||||
|
else x
|
||||||
|
) old.buildInputs) ++ [ prev.pango prev.libevdev prev.nlohmann_json ];
|
||||||
|
})).override {
|
||||||
|
wf-config = wf-config_0_8;
|
||||||
|
};
|
||||||
in {
|
in {
|
||||||
inherit discord-system-electron;
|
inherit discord-system-electron;
|
||||||
|
|
||||||
@ -69,4 +96,10 @@ in {
|
|||||||
zoom-vm = prev.callPackage scripts/zoom-vm {};
|
zoom-vm = prev.callPackage scripts/zoom-vm {};
|
||||||
|
|
||||||
razer-cli = prev.callPackage tools/hardware/razer-cli {};
|
razer-cli = prev.callPackage tools/hardware/razer-cli {};
|
||||||
|
|
||||||
|
gamescope = prev.callPackage tools/games/gamescope {};
|
||||||
|
|
||||||
|
wayfire-firedecor = prev.callPackage applications/wayfire/firedecor {
|
||||||
|
wayfire = wayfire-master;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
60
packages/tools/games/gamescope/default.nix
Normal file
60
packages/tools/games/gamescope/default.nix
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
{ lib, stdenv, fetchFromGitHub, meson, pkgconfig, libdrm, xorg
|
||||||
|
, wayland, wayland-protocols, libxkbcommon, libcap
|
||||||
|
, SDL2, mesa, libinput, pixman, xcbutilerrors, xcbutilwm, glslang
|
||||||
|
, ninja, makeWrapper, xwayland, libuuid, xcbutilrenderutil
|
||||||
|
, pipewire, stb, writeText, wlroots, vulkan-loader, vulkan-headers }:
|
||||||
|
|
||||||
|
let
|
||||||
|
stbpc = writeText "stbpc" ''
|
||||||
|
prefix=${stb}
|
||||||
|
includedir=''${prefix}/include/stb
|
||||||
|
Cflags: -I''${includedir}
|
||||||
|
Name: stb
|
||||||
|
Version: ${stb.version}
|
||||||
|
Description: stb
|
||||||
|
'';
|
||||||
|
stb_ = stb.overrideAttrs (oldAttrs: rec {
|
||||||
|
installPhase = ''
|
||||||
|
${oldAttrs.installPhase}
|
||||||
|
install -Dm644 ${stbpc} $out/lib/pkgconfig/stb.pc
|
||||||
|
'';
|
||||||
|
});
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
pname = "gamescope";
|
||||||
|
version = "3.9.1";
|
||||||
|
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "Plagman";
|
||||||
|
repo = "gamescope";
|
||||||
|
rev = version;
|
||||||
|
sha256 = "05a1sj1fl9wpb9jys515m96958cxmgim8i7zc5mn44rjijkfbfcb";
|
||||||
|
fetchSubmodules = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
preConfigure = ''
|
||||||
|
substituteInPlace meson.build \
|
||||||
|
--replace "'examples=false'" "'examples=false', 'logind-provider=systemd', 'libseat=disabled'"
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
wrapProgram $out/bin/gamescope \
|
||||||
|
--prefix PATH : "${lib.makeBinPath [ xwayland ]}"
|
||||||
|
'';
|
||||||
|
|
||||||
|
buildInputs = with xorg; [
|
||||||
|
libX11 libXdamage libXcomposite libXrender libXext libXxf86vm
|
||||||
|
libXtst libdrm vulkan-loader wayland wayland-protocols
|
||||||
|
libxkbcommon libcap SDL2 mesa libinput pixman xcbutilerrors
|
||||||
|
xcbutilwm libXi libXres libuuid xcbutilrenderutil xwayland
|
||||||
|
pipewire wlroots
|
||||||
|
];
|
||||||
|
nativeBuildInputs = [ meson pkgconfig glslang ninja makeWrapper stb_ ];
|
||||||
|
|
||||||
|
meta = with lib; {
|
||||||
|
description = "The micro-compositor formerly known as steamcompmgr";
|
||||||
|
license = licenses.bsd2;
|
||||||
|
homepage = src.meta.homepage;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = with maintainers; [ ];
|
||||||
|
};
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user