diff options
Diffstat (limited to 'gui-wm')
-rw-r--r-- | gui-wm/gamescope/Manifest | 1 | ||||
-rw-r--r-- | gui-wm/gamescope/gamescope-3.14.18.ebuild | 141 |
2 files changed, 142 insertions, 0 deletions
diff --git a/gui-wm/gamescope/Manifest b/gui-wm/gamescope/Manifest index 7fbb3b58d062..1f2c9fad8b57 100644 --- a/gui-wm/gamescope/Manifest +++ b/gui-wm/gamescope/Manifest @@ -1,3 +1,4 @@ DIST gamescope-3.14.14.tar.gz 512146 BLAKE2B 908c8e02a55c454d4442c135769b59287568121c60e4e7a95266e09b42cdd78db5676dd691d0c58a2430d046de93947d2ef8b54ed93ea6820240ab7a21599ac4 SHA512 dfafa32ac736c50bf146bffbbe8288827047ae87a6f0d55038f5bd6705096133f384d940dfa5adf2bdd70991bd6469f4a083eb88273df447d253676cb3f2726c +DIST gamescope-3.14.18.tar.gz 520343 BLAKE2B 098dc152980c62a7386528378a5c0ad48923324dead15a2ed4be77d34a711065388c96edf8c9707ff13e595b82ca5f5463b489a9b521960f9be3eb744948cc6f SHA512 9b6774665b29fd84884ec057f66218e1e1810bc099d6a2e100a814fbc6250f8de9857b53e75400044b3cd77a958d6f03fcf9b8e65cb4a42e769ad0f9cda7394b DIST reshade-9fdbea6892f9959fdc18095d035976c574b268b7.tar.gz 1543894 BLAKE2B 5e2b643ffbbda3ad078deb075a6fada1d0a560c6d865b7febee6a8eaade83ec90db3c5a8f4130d27b6dfaa8ee7b899edd214c23c947678eed28fb8e7165d9bd2 SHA512 4565d094e1c2d53d5073b4976874665d38dcf7ca86e982e569cc76923eaa9187fa32a4385fc577a3a867d2917596e6377e5a023a34bc2d389ff899d5b69764fb DIST wlroots-a5c9826e6d7d8b504b07d1c02425e6f62b020791.tar.gz 620424 BLAKE2B 83630b77983009a36fa4f168bbe2eceb73f634f9dd149cc5e6b18fbf647245a32a5d31dc3fbd0d1bed1d0dafc4cbb2fcea3ee4b4f5660a35ca37eff4679b80a2 SHA512 6857ded750fda91d55e53edfc270eb4e7bf44d7330d17c8fcd13c248c71abba685f34260d1e6d20cdb302a8d4f9158fb43421943cca74630fd780a4048aed07b diff --git a/gui-wm/gamescope/gamescope-3.14.18.ebuild b/gui-wm/gamescope/gamescope-3.14.18.ebuild new file mode 100644 index 000000000000..98242c90c0f8 --- /dev/null +++ b/gui-wm/gamescope/gamescope-3.14.18.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit fcaps meson + +RESHADE_COMMIT="9fdbea6892f9959fdc18095d035976c574b268b7" +WLROOTS_COMMIT="a5c9826e6d7d8b504b07d1c02425e6f62b020791" +MY_PV=$(ver_rs 3 -) +MY_PV="${MY_PV//_/-}" + +DESCRIPTION="Efficient micro-compositor for running games" +HOMEPAGE="https://github.com/ValveSoftware/gamescope" +if [[ ${PV} == "9999" ]]; then + EGIT_REPO_URI="https://github.com/ValveSoftware/${PN}.git" + # Prevent wlroots and other submodule from being pull + # Not messing with system packages + EGIT_SUBMODULES=( src/reshade ) + inherit git-r3 +else + SRC_URI=" + https://github.com/ValveSoftware/${PN}/archive/refs/tags/${MY_PV}.tar.gz -> ${P}.tar.gz + https://github.com/Joshua-Ashton/reshade/archive/${RESHADE_COMMIT}.tar.gz -> reshade-${RESHADE_COMMIT}.tar.gz + https://github.com/Joshua-Ashton/wlroots/archive/${WLROOTS_COMMIT}.tar.gz -> wlroots-${WLROOTS_COMMIT}.tar.gz + " + KEYWORDS="~amd64" +fi + +S="${WORKDIR}/${PN}-${MY_PV}" + +LICENSE="BSD-2" +SLOT="0" +IUSE="pipewire +wsi-layer" + +# For when wlroots 0.18 is released. +# =gui-libs/wlroots-0.18*[X,libinput(+)] + +RDEPEND=" + =dev-libs/libliftoff-0.5* + >=dev-libs/wayland-1.21 + gui-libs/libdecor + >=media-libs/libavif-1.0.0:= + >=media-libs/libdisplay-info-0.1.1 + media-libs/libsdl2[video,vulkan] + media-libs/vulkan-loader + sys-apps/hwdata + sys-libs/libcap + >=x11-libs/libdrm-2.4.109 + x11-libs/libX11 + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libxkbcommon + x11-libs/libXmu + x11-libs/libXrender + x11-libs/libXres + x11-libs/libXtst + x11-libs/libXxf86vm + pipewire? ( >=media-video/pipewire-0.3:= ) + wsi-layer? ( x11-libs/libxcb ) + + >=dev-libs/libinput-1.14.0:= + media-libs/libglvnd + media-libs/mesa[egl(+),gles2(+)] + sys-auth/seatd:= + virtual/libudev + x11-base/xwayland + x11-libs/libxcb:= + >=x11-libs/pixman-0.42.0 + x11-libs/xcb-util-wm +" +DEPEND=" + ${RDEPEND} + >=dev-libs/wayland-protocols-1.34 + >=dev-libs/stb-20240201-r1 + dev-util/vulkan-headers + media-libs/glm + dev-util/spirv-headers + wsi-layer? ( >=media-libs/vkroots-0_p20240430 ) +" +BDEPEND=" + dev-util/glslang + dev-util/wayland-scanner + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-deprecated-stb.patch +) + +FILECAPS=( + cap_sys_nice usr/bin/${PN} +) + +src_prepare() { + default + + # ReShade is bundled as a git submodule, but it references an unofficial + # fork, so we cannot unbundle it. Symlink to its extracted sources. + # For 9999, use the bundled submodule. + if [[ ${PV} != "9999" ]]; then + rmdir src/reshade || die + ln -snfT ../../reshade-${RESHADE_COMMIT} src/reshade || die + fi + + # SPIRV-Headers is required by ReShade. It is bundled as a git submodule but + # not wrapped with Meson, so we can symlink to our system-wide headers. + # For 9999, this submodule is not included. + mkdir -p thirdparty/SPIRV-Headers/include || die + ln -snf "${ESYSROOT}"/usr/include/spirv thirdparty/SPIRV-Headers/include/ || die + + # Until wlroots 0.18 is released. + rmdir subprojects/wlroots || die + ln -snfT ../../wlroots-${WLROOTS_COMMIT} subprojects/wlroots || die +} + +src_configure() { + local emesonargs=( + --force-fallback-for= + -Dbenchmark=disabled + -Denable_openvr_support=false + $(meson_feature pipewire) + $(meson_use wsi-layer enable_gamescope_wsi_layer) + + -Dwlroots:xcb-errors=disabled + -Dwlroots:examples=false + -Dwlroots:renderers=gles2,vulkan + -Dwlroots:xwayland=enabled + -Dwlroots:backends=libinput + -Dwlroots:session=enabled + ) + meson_src_configure +} + +src_install() { + meson_src_install --skip-subprojects +} |