From b124a137763c98044f71d9eefd44f0179bfd67705dff93f46bf822f3ed1659e6 Mon Sep 17 00:00:00 2001 From: llyyr Date: Thu, 18 Jul 2024 20:24:22 +0000 Subject: [PATCH] - Update to version 3.14.24: * WaylandBackend: Run UpdateVRRRefreshRate on Wayland_Surface_Leave * WaylandBackend: Fix picking output refresh for VRR displays. * steamcompmgr: Add adaptive sync convar * steamcompmgr: Add filter appids for relative mouse mode * Utils: Add helpers for std::vector in our Algorithm helpers * convar: Add some helpers for std::string convars and callbacks * steamcompmgr: Only forward relative mouse mode if we have a cursor constraint * Utils: Use Contains in CloseAllFds * Utils: Add small Algorithm helper file * main: Only set no_display if in Steam mode. * openvr: Fix trackpad mode with fps limiter * openvr: Add trackpad stuff for relative mouse mode * steamcompmgr: Don't consider Steam for relative mouse mode * convar: Fix ordering for <=> * convar: Print info if invoked with one arg * steamcompmgr: Use active cursor for setting relative mouse mode * steamcompmgr: Fix relative mouse getting enabled when using a nested cursor * convar: Support for float convars * openvr: Use full output width/height for backing texture for now * main: Defer unlink for mangoapp/limiter configs * main: Set GAMESCOPE_LIMITER_FILE in UpdateCompatEnvVars * steamcompmgr: Add debug_force_repaint command * Utils: Only attempt to close open FDs in CloseAllFds * gamescopereaper: Fix zombie process buildup * utils: make setting/restoring from RT thread work on musl * gamescopereaper: add missing include * utils: Move defer to Utils folder * wlserver: Handle cursor not reaching full length of popup menus * gamescopestream: Hook up to regular log stuff OBS-URL: https://build.opensuse.org/package/show/games:tools/gamescope?expand=0&rev=31 --- .gitattributes | 23 ++ .gitignore | 1 + _service | 16 + gamescope-3.14.22.tar.xz | 3 + gamescope-3.14.24.tar.xz | 3 + gamescope.changes | 707 +++++++++++++++++++++++++++++++++++++++ gamescope.spec | 136 ++++++++ 7 files changed, 889 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _service create mode 100644 gamescope-3.14.22.tar.xz create mode 100644 gamescope-3.14.24.tar.xz create mode 100644 gamescope.changes create mode 100644 gamescope.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_service b/_service new file mode 100644 index 0000000..e4910c9 --- /dev/null +++ b/_service @@ -0,0 +1,16 @@ + + + + https://github.com/Plagman/gamescope.git + @PARENT_TAG@ + git + ([\.\d]+) + \1 + enable + + + *.tar + xz + + + diff --git a/gamescope-3.14.22.tar.xz b/gamescope-3.14.22.tar.xz new file mode 100644 index 0000000..992f712 --- /dev/null +++ b/gamescope-3.14.22.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c6470c1310e7009f696f883c1ba4a520eb485006922f3191672467d18762ea0 +size 103906912 diff --git a/gamescope-3.14.24.tar.xz b/gamescope-3.14.24.tar.xz new file mode 100644 index 0000000..52c61bc --- /dev/null +++ b/gamescope-3.14.24.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5398783027d2c07eda4db6882707627cd25a6e41407dfb74beb7e4b393a6db33 +size 103887988 diff --git a/gamescope.changes b/gamescope.changes new file mode 100644 index 0000000..88d8784 --- /dev/null +++ b/gamescope.changes @@ -0,0 +1,707 @@ +------------------------------------------------------------------- +Thu Jul 18 14:42:51 UTC 2024 - antonio.teixeira@suse.com + +- Update to version 3.14.24: + * WaylandBackend: Run UpdateVRRRefreshRate on Wayland_Surface_Leave + * WaylandBackend: Fix picking output refresh for VRR displays. + * steamcompmgr: Add adaptive sync convar + * steamcompmgr: Add filter appids for relative mouse mode + * Utils: Add helpers for std::vector in our Algorithm helpers + * convar: Add some helpers for std::string convars and callbacks + * steamcompmgr: Only forward relative mouse mode if we have a cursor constraint + * Utils: Use Contains in CloseAllFds + * Utils: Add small Algorithm helper file + * main: Only set no_display if in Steam mode. + * openvr: Fix trackpad mode with fps limiter + * openvr: Add trackpad stuff for relative mouse mode + * steamcompmgr: Don't consider Steam for relative mouse mode + * convar: Fix ordering for <=> + * convar: Print info if invoked with one arg + * steamcompmgr: Use active cursor for setting relative mouse mode + * steamcompmgr: Fix relative mouse getting enabled when using a nested cursor + * convar: Support for float convars + * openvr: Use full output width/height for backing texture for now + * main: Defer unlink for mangoapp/limiter configs + * main: Set GAMESCOPE_LIMITER_FILE in UpdateCompatEnvVars + * steamcompmgr: Add debug_force_repaint command + * Utils: Only attempt to close open FDs in CloseAllFds + * gamescopereaper: Fix zombie process buildup + * utils: make setting/restoring from RT thread work on musl + * gamescopereaper: add missing include + * utils: Move defer to Utils folder + * wlserver: Handle cursor not reaching full length of popup menus + * gamescopestream: Hook up to regular log stuff + * build: Move certain apps to src/Apps + * gamescopereaper: Change name for reaper log + * steamcompmgr: Some console changes + * log: Make logging a bit more colourful + * steamcompmgr: Remove old buffer map variables + * all: Refactor process launching + app waiting + add watchdog reaper thing + * mangoapp: Use existing MANGOHUD_CONFIGFILE if set + * openvr: Remove need for backing if screensize and alpha if backing is transparent + +------------------------------------------------------------------- +Thu Jun 27 14:52:01 UTC 2024 - antonio.teixeira@suse.com + +- Update to version 3.14.22: + * steamcompmgr: Rewrite + split buffer memoizer + * wlserver: Don't pass incorrect wl_resource for gamescope_swapchain on legacy gamescope_xwayland interface + * submodules: Update openvr version requirement + * drm: Add workaround for NV12 scanout on SteamOS 3.6 + * rendervulkan: Fix NV12 colorspace producing washed out colours + * mangoapp: Add extra elements + * steamcompmgr: Fix inverted logic in drawing cursor + * wlserver: Rough basic impl of wlr_layer_shell + * build: Add missing GamescopeVersion.h requirement + * openvr: Add cv_vr_use_window_icons + +------------------------------------------------------------------- +Wed Jun 05 18:57:26 UTC 2024 - opensuse@dstoecker.de + +- Update to version 3.14.18: + * wayland_backend: Fix fractional scale bug + * wayland_backend: Fix cursor position with display scaling + * main: hide disabled backends from user + * Fix `sdl2_backend=disabled` + * layer: Attempt at fixing CI + * steamcompmgr: Handle FIFO stuff for Wayland windows + * layer: Get working with native Wayland applications + * steamcompmgr: Hook up more common stuff to XDG code + * all: Refactor IBackendFb to be owned by CVulkanTexture + * steamcompmgr: Don't re-enable applyOutputColorMgmt when dumping screen buffer for screenshots +- Drop libliftoff-fix-gcc14-calloc-transposed-args.patch + +------------------------------------------------------------------- +Wed May 08 13:35:00 UTC 2024 - antonio.teixeira@suse.com + +- Update to version 3.14.13: + * wlserver: Fix content overrides for reparented windows + * drm: Add drm_debug_disable_in_fence_fd convar + * wlserver: Cursor constraint improvements + * wlserver: Add affirmative log that libei started + * layer: Fix double ptr in RemoveFromChain (and add vkroots checks) + * rendervulkan, shaders: Fix mura correction with FSR + NIS + * InputEmulation: Add missing break to {START,STOP}_EMULATING + * layer: Fix crash with frame limiter aware + * reshade: added helper lambda: matchesAnnotationName + * reshade: prefer ranges + bind_front over custom lambda +- Add upstream patch libliftoff-fix-gcc14-calloc-transposed-args.patch + * Fix libliftoff builds with gcc14 + +------------------------------------------------------------------- +Thu Apr 25 14:16:52 UTC 2024 - antonio.teixeira@suse.com + +- Update to version 3.14.6: + * wlserver: Collection of cursor improvements/fixes + * wlserver: Fix some crashes wrt. Gamescope swapchain lifetime + * Revert "drm: Update AMD color management for Linux 6.8" + * convar: add Split helper + * drm: Only expose explicit sync on > kernel 6.8 + * wayland_backend: comment out assert for now + * build: Add missing input_emulation option + * input: Add support for xtest emulation with libei + * drm: Get backend to close down cleanly + * steamcompmgr: Set PDEATHSIG for launched children + +------------------------------------------------------------------- +Thu Mar 07 20:27:13 UTC 2024 - antonio.teixeira@suse.com + +- Update to version 3.14.2: + * wayland_backend: Use a fake sequential timestamp + * wayland_backend: Implement fullscreening + keybinds + * wayland_backend: Fix 0 refresh in _Presented callback + * src/meson: include protocols_client_src + * Tell git to ignore subprojects from meson that aren't git submodules + * wayland_backend: allow unmapping subsurfaces + * wayland_backend: don't crash because of out of bounds accesses + * wayland_backend: Fix build + * wayland_backend: Handle --hdr-enabled correctly + * wayland_backend: Add new wayland backend + +------------------------------------------------------------------- +Tue Jan 23 21:09:17 UTC 2024 - antonio.teixeira@suse.com + +- Update to version 3.14.0: + * readme: Remove dead shortcut + * main: Pick correct Vulkan device for DRM + * Add configurable mouse sensitivity + * reshade: Make changeset as small using inlining + * reshade: Removed explicit datatype parameter for inferred typename T (of function) + * reshade: Condense to one common lambda function + * reshade: Break function into smaller chunks & common params + * vr_session: update to OpenVR 2 + * steamcompmgr: Limit desired size by drm cursor size + * rendervulkan: Add VkExternalMemoryImageCreateInfo for any flippable surface + +------------------------------------------------------------------- +Fri Dec 22 19:05:28 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.13.19: + * drm: fix other headless NPE + * layer: Fix warning on printf + * waitable: Fix some FD close settings + * waitable: Factor out common ITimerWaitable + * drm: fix NPE while in headless mode + * layer: Print more info about VkHdrMetadata + * layer: Log more about minImageCount + * drm: Port mode and lut tracking to drm_blob + * drm: Introduce a drm_blob abstraction + * drm: Initialize the owned field of blob wrappers properly + +------------------------------------------------------------------- +Mon Dec 04 20:05:27 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.13.16: + * waitable: Set running to false before nudge + * waitable: Fix draining CNudgeWaitable + * steamcompmgr: Handle external overlays better for steamcompmgr_user_has_any_game_open + * drm: Handle rotated screens properly in drm_get_default_refresh + * steamcompmgr: Workaround kernel NULL pointer bug with epoll + dmabuf + close + * waitable: Remove unused func + * steamcompmgr: Remove dmabuf waitable on HUP + * steamcompmgr: Reduce alloc overhead of new xwayland resources + * drm: Reset CTM on layers with applyColorMgmt = false + * mangoapp: Use visible frames for reporting to mangohud if FIFO + +------------------------------------------------------------------- +Wed Nov 15 16:48:15 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.13.3: + * wlserver: Fix removal of gamescope_control resources + * steamcompmgr: Fix pipewire color mgmt luts + * steamcompmgr: Save 11MB of VRAM on images we weren't using + * steamcompmgr: Naiively handle streaming HDR content + * rendervulkan: Fix NV12 capture colors + * drm: Allow reading color primaries from EDID on Galileo + * protocol: Add only_change_refresh_rate flag to target_refresh_cycle_flag + * layer: Disable EXT_swapchain_maintenance1 + * subprojects: Bump vkroots + * layer: Migrate display timing impl to EnumerateDeviceExtensionProperties + +------------------------------------------------------------------- +Mon Oct 09 12:23:30 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.12.7+git0.d1eb70b: + * steamcompmgr: Overwrite SDL_VIDEODRIVER before nested app launch + * main: Make not having presentation time not fatal + * main: Default back to SDL_VIDEODRIVER x11 if not exposing wayland + * wlserver: Enable xwayland force_xrandr_emulation option + * wlserver: Handle pending surfaces in set_wl_id when we already have an existing surface + * wlserver: Add feature bit for pixel filter + * rendervulkan: Add PIXEL filter (band-limited pixel filter) + * rendervulkan: Emulate bilinear sampling when we need to do custom degammas + * wlserver: Fix rare crash on shutdown + * sdlwindow: Fix crash on shutdown with session +- Add arch suffix to VkLayer filename as per recent changes. + +------------------------------------------------------------------- +Wed Sep 13 19:01:13 UTC 2023 - Callum Farmer + +- Tumbleweed now has a pkgconfig file for stb + +------------------------------------------------------------------- +Fri Sep 01 12:43:48 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.12.5+git0.a8471d8: + * steamcompmgr: Fix build (rebase woes) + * steamcompmgr: If we have an override surface, make sure new commits are for it + * Remove reference to non-existent key bind + * steamcompmgr: Fix disable color mgmt leaving some states behind + * Only SetSelectionOwner when syncing selections + * Improve clipboard handling + * Remove unnecessary key bind + * Fix build issue + * Fix documentation + * Update documentation and --help + +------------------------------------------------------------------- +Fri Aug 18 12:25:53 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.12.3+git1.77d9432: + * steamcompmgr: Remove heatmap hard flag when GAMESCOPE_DEBUG_HDR_HEATMAP is set + * wlserver: Filter out garbage HDR metadata + * layer: Handle multiple swapchains in QueuePresentKHR + * steamcompmgr: Force composite when fading + * layer: add missing header after 540323ac37fc + +------------------------------------------------------------------- +Tue Aug 15 19:30:09 UTC 2023 - antonio.teixeira@suse.com + +- Update to version 3.12.1+git1.6fb83bf: + * color: added atom to control chromatic adaptation mode (default of bradford is unchanged) + * [color]: removed errant printf + * [color]: Added support for overriding the apparent (virtual) white point + * fix clang build break (attempt #2) + * fix compilation on clang + * mute format-truncation compile warning + * glslang: check for renamed bin + * layer: Support for frame limiter + * Add info about gamescope packages + * fix null handle for nul surface + +------------------------------------------------------------------- +Sat Jul 29 15:40:27 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0+git2.50eaf75: + * Add info about gamescope packages + * fix null handle for nul surface + * steamcompmgr: When windows get remapped and were our focus, make sure to re-set them as input focus + * wlserver: Handle reassignment of wl_id for x11 windows + * drm: Better fallbacks for external HDR metadata + * steamcompmgr: Don't fill in app frametime to mangoapp + +------------------------------------------------------------------- +Mon Jul 24 01:16:59 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta10+git12.eb42671: + * Fix compilation with GCC13 + * steamcompmgr: fix typo + +------------------------------------------------------------------- +Mon Jul 10 22:17:52 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta10+git10.2dd8236: + * rendervulkan: Use native gamut wideness by default + * steamcompmgr: Disable force composite when we would partial + * steamcompmgr: Disable partial composition (for now until some critera are met) + * drm: Use 10-bit partial composite formats if possible + * main: Fix CI + * rendervulkan: Seamless full -> deferred composition switch + * rendervulkan: Move reset for commandbuffer to main thread for partial composition + * rendervulkan: Pick right first partial composite image + * rendervulkan: Use same memory backing for partial and complete composition + * steamcompmgr, rendervulkan: Implement deferred partial composition + * drm: Fallback displayColorimetry for broken EDIDs + * drm: Free blob in fail path + * steamcompmgr: Fix enabling VRR from commandline + * drm: Handle not having CRTC 3D LUT/Shaper + +------------------------------------------------------------------- +Sat Jun 17 08:26:44 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta8+git11.789cfc9: + * main, steamcompmgr: Add support for --headless + * Added option to set upscaler filter + * Added option to set upscale scaler + +------------------------------------------------------------------- +Wed Jun 07 01:36:42 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta8+git8.8866c02: + * vr_session: Add vrsession_set_dashboard_visible + * steamcompmgr, rendervulkan: Only capture baseplanes in screenshots + * rendervulkan: Fix half-texel offset for blits + * rendervulkan: Fix RGB blits using incorrect colorspace + * rendervulkan: Mark screenshot textures as storage compatible + * mangoapp: report output size to mangoapp + * pipewire: Only create up to 8 buffers + * drm: Don't update internal screen orientation if we don't have one + * wlserver: Disable trackpad on external screen by default + * wlserver, drm: Make touchscreen function as trackpad when using external screen + * drm, wlserver: Always use internal screen rotation for touchscreen orientation + * rendervulkan: Fix screenshots since moving to 10-bit. + * steamcompmgr: Remake output images on res change + * vr_session: Support for trackpad scrolling + +------------------------------------------------------------------- +Fri May 26 10:15:26 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta7+git2.baea00f: + * [color_helpers]: cleanup tonemapping support + * Fallback to regular-priority queue when vkCreateDevice fails + +------------------------------------------------------------------- +Fri May 19 07:01:09 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta7+git0.56a7998: + * steamcompmgr: Fix FSR getting enabled accidentally + * drm, steamcompmgr: Implement edid patching for HDR for debugging + * steamcompmgr: Disable EETF tonemapping by default + * steamcompmgr: Rename atom to GAMESCOPE_COLOR_MANAGEMENT_CHANGING_HINT + * steamcompmgr: Add GAMESCOPE_COLOR_SLIDER_IN_USE + * Revert "rendervulkan: Don't use 10-bit format for VR session" + +------------------------------------------------------------------- +Tue May 16 09:43:48 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta3+git42.6586d5e: + * rendervulkan: Don't use 10-bit format for VR session + * Pass through duplicate commits if there are feedbacks. + * Ensure forward progress on frame callback. + * Ensure that duplicated commits have forward progress. + * Send presentation after handling commits on XDG. + * Don't send frame callback before we have actually committed. + * drm, rendervulkan: Pick a 10-bit format for composite buffer + * rendervulkan: Expose some more formats + +------------------------------------------------------------------- +Sat May 13 08:32:42 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta3+git34.6531d9c: + * color_helpers: added default tonemapping for PQ->G22 + * vklayer: added HdrMetadata printing + +------------------------------------------------------------------- +Fri May 12 07:30:32 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta3+git32.941b22f: + * color_helpers: refactored eetf2390 tonemapping + * color_helpers: added eetf_2390 tonemapping operator (currently unused) + * heatmap: fix typo + * wlserver: Set seat keyboard on keyboard focus + * main: Fix output initialization for OpenVR + * fix lut1d header definition + * dont assume shapers are analytically invertible (uses LUT inverse) + * main: Don't create SDL Vulkan surface if in a VRSession + * color_helper: actually store 1d luts in planar form to allow simpler inversion + * steamcompmgr: Add --framerate-limit + * color-helpers: all lut computation is in float; quantization is separate step + * build: Add glm dep to color microbench + * ci: Add benchmark as a dependency + * color_helpers: Encode source color EOTF edges once per-edge rather than per-element + * color_bench: Add color mgmt microbenchmark + * color_helpers, steamcompmgr: Avoid allocation of LUTs every time we re-setup color mgmt + * steamcompmgr: Profile all of update_color_mgmt and not just calcColorTransform + * color_helpers: Apply shaper per-element of nested loop + * color_helpers: Inline some functions + * steamcompmgr: Color management microbenchmark + * color_helpers: Use rintf instead of roundf + * build: Enable -ffast-math + * color_helpers: Optimize pq_to_nits + nits_to_pq + * layer: Enable KHR_present_wait driconf in the layer + * steamcompmgr: Always send frame callback for any current surface (not just main) + * wlserver, steamcompmgr: Initial presentation time implementation + * protocol: Add presentation-time xml + build + * steamcompmgr: Move send_done to just before latest latch time + * vulkan: Check if selected queue can be used + +------------------------------------------------------------------- +Fri May 05 00:01:48 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta3+git3.1716555: + * main: Expose sdr-gamut-wideness and hdr-sdr-content-nits as launch args + * fix build breakage + * [color_helpers]: initial implementation of COLOR_LOOK atoms + * drm: Reset BLEND_TF + BLEND_LUT + * Avoid out of bounds accesses in drm.cpp + * layer: Fix scRGB surface format definition + +------------------------------------------------------------------- +Mon Apr 24 22:25:36 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.12.0~beta1+git0.e805c9c: + * Replace tabs with spaces in help + * sdlwindow: Gate SDL_GetWindowSizeInPixels behind version check + * drm: drop unused Linux-only header after a90e359fc477 + * steamcompmgr: Ensure members of steamcompmgr_win_t get initialized + * main, steamcompmgr, shaders: Handle lack of LUTs + add debug for disabling color mgmt + * drm: Fix drm_supports_color_mgmt checks + +------------------------------------------------------------------- +Sat Apr 22 18:46:38 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta6+git88.50925d9: + * shaders: Fix RCAS colorspace + * updated heatmap_hard appearance + * added Hard heatmap mode also fixed the heatmap atom parsing + * drm: Disable BLEND_TF + REGAMMA_TF if single plane + * drm: Add some chicken bits for color pipeline + * color_helpers: Remove spaceship operator usage + * build: Enable -Wno-volatile for GLM + * docs: Add Steam Deck Display Pipeline graph + * steamcompmgr: Track needed XFlush across all change properties events + * steamcompmgr: Expose HDR metadata by feedback atom + * steamcompmgr, color_helpers: Added atoms for color gains + * properly map g22 -> g22 luminance when forceHDR is enabled + * rendervulkan: Fix HDR blur intensity + * shaders: Fix horizontal blur output colorspace + * rendervulkan: Fix race when updating LUTs + * shader: Get blur stuff working with HDR and color mgmt + * shaders, rendervulkan: Hook up FSR for HDR + * shaders: Fix scRGBEncodingToPQ + * steamcompmgr: Fix crash on override LUT + * shaders: Tetrahedral 3D LUT implementation + * drm, steamcompmgr: Don't apply color mgmt twice if compositing + * color, shaders: Use color mgmt LUT path in shader compute path + * color_helpers: Clean up EOTF definition + * drm: Fix scRGB handling + * drm: Always use scale_tf + * drm, steamcompmgr: Initial EDID patching stuff + * steamcompmgr: Fix bug where internaldisplaybrightness was not updating when the atom was set + * steamcompmgr: Fix HDR feedback only updating on mode change + * steamcompmgr: Minor ITM changes + * steamcompmgr: Delete GAMESCOPE_DISPLAY_HDR_FORCE_WIDE_GAMMUT_FOR_SDR + * steamcompmgr: GAMESCOPE_SDR_ON_HDR_CONTENT_BRIGHTNESS atom should be float, not int + * steamcompmgr: Renamed GAMESCOPE_HDR_SDR_CONTENT_BRIGHTNESS -> GAMESCOPE_SDR_ON_HDR_CONTENT_BRIGHTNESS + * steamcompmgr: Add GAMESCOPE_COLOR_APP_WANTS_HDR_FEEDBACK + * color_helpers: Refined sdr gamut generation on wide gamut displays + * drm: Added envvar to override internal display colorimetry + * drm: Additional edid logging + * color_helpers, drm: separated eotf from the colorimetry definition + * color_helpers: fix brightness mapping for sdr -> sdr + * drm: Fix disabling HDR on an external HDR display since new color toys + * color_helpers: Alternate (preferred) check for c++ 2020 + * steamcompmgr: Use proper EOTF enums for the 3dlut overrides + * steamcompmgr: Use index 0 for lut overrides + * steamcompmgr: Fix lut3d output override check + * steamcompmgr, drm: Add support for disjoint content and output encoding colorspaces + * color_helpers: Fix undefined EOTF for result + * color_helpers: Don't lerp EOTF + * color_helpers: Fix EOTF of displaycolorimetry_widegamutgeneric_gamma22 + * drm: Don't use DEGAMMA_TF + SHAPER_TF when we don't need scaling + * drm: Hook up BLEND_TF and stuff for proper space for degamma + * color_helpers: WIP on making calcColorTransform PQ aware + * steamcompmgr: Fix setting lut override multiple times + * drm: Fix override LUTs + * color_helpers: Fix scaling SDR content, bodge for PQ + 3D LUT for now + * drm, steamcompmgr: Move color mgmt state out of DRM + * drm, color_helpers: Initial support for mixed HDR + SDR planes on both external HDR and fallback SDR when undocked + * color_helpers: Add pq EOTF math + * drm: Move to per-plane 3D LUT + Shaper + * color_helpers: Update color math + * subprojects: Added glm dependency + * color, drm: Initial work on new color mgmt system + * sdlwindow: set icon_surface to nullptr after free + * sdlwindow: fix HiDPI handling + +------------------------------------------------------------------- +Fri Apr 07 03:06:16 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta6+git26.5d9ecd4: + * drm: Fix issue on kernels without VALVE1_ HDR extensions + * drm: Add g_bForceDisableTransferFunctions debug switch + * shaders: Make blur conditional more obvious + * rendervulkan: Fix blur with HDR content + * steamcompmgr: Don't treat LAYERED windows as dropdowns if they have WS_EX_APPWINDOW + +------------------------------------------------------------------- +Fri Mar 17 09:30:39 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta6+git21.f541527: + * wlserver: Remove accidental debug logging + * wlserver: Clean up content overrides on surface destroy + support multiple servers for it + * wlserver: Be more robust when changing override windows + * steamcompmgr: Fix crash with nested HDR + * drm: Cleanup HDR TF + MULT state + * drm: Support HDR_MULT for SDR surfaces + * drm: Support for HDR with planes with VALVE1_ extension + +------------------------------------------------------------------- +Mon Mar 13 17:42:06 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta6+git14.6f9759a: + * rendervulkan: Add logging to vulkan_acquire_screenshot_texture + * sdlwindow: Fix crash on some icon-less windows + * build: update libdisplay-info pkgconfig filename + * Add support for DSI internally rotated displays (e.g. GPD) + * sdlwindow: Fix icon loading + * vr_session: fix icon loading + * vr_session, vblankmanager: Sleep vr vblank manager thread if invisible + * vr_session: Add g_bOpenVRForceInvisible debug switch + +------------------------------------------------------------------- +Tue Mar 07 05:00:34 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta6+git6.659e550: + * steamcompmgr: Default SDR content brightness to 203 + * drm: add support for headless setup + * drm: fix return values in drm_prepare() + * vr_session: fix openvr include + * build: bump libdisplay-info maximum version + * build: fix openvr dependency name + * drm: Only use SDR metadata blob for HDR enabled screens + +------------------------------------------------------------------- +Fri Mar 03 08:17:15 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta5+git0.297245c: + * steamcompmgr: FSR bodges for HDR + * steamcompmgr: Allow scanout for some HDR cases + * drm,wlserver: Fix lifetime of hdr metadata blobs + * steamcompmgr: Disable tearing if Mangoapp, etc is up (hack) + * HACK: drm: Always send HDR metadata + * steamcompmgr: Fix typo in comment + +------------------------------------------------------------------- +Thu Feb 23 19:11:09 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta2+git2.a3dc37f: + * steamcompmgr: Add workaround for Disgaea PC (405900) + +------------------------------------------------------------------- +Tue Feb 21 09:32:41 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta2+git1.9600bba: + * build: bump libliftoff to 0.4.0 + +------------------------------------------------------------------- +Wed Feb 15 15:42:36 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta2+git0.2a09fbc: + * steamcompmgr: Replicate EDID path to all servers + +------------------------------------------------------------------- +Mon Feb 13 04:36:28 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.52~beta1+git3.b7f5ce9: + * steamcompmgr: return server ID in xwayland server feedback + * steamcompmgr: Add support for growing/destroying xwaylands on the fly + * itm: avoid division by zero for BT.2446 Method A + * Check for nullptr connector in drm_prepare + +------------------------------------------------------------------- +Wed Feb 08 12:33:34 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git135.8a3fa88: + * wlserver: Treat XKB_KEY_XF86PowerOff as a forbidden key + * steamcompmgr: xdg-shell fixes + +------------------------------------------------------------------- +Fri Feb 03 06:53:45 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git133.d3ce381: + * steamcompmgr: Fix get_win_display_name + +------------------------------------------------------------------- +Mon Jan 30 10:51:20 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git132.ecee87b: + * wlserver: Add comment about perf of wlserver_get_xdg_shell_windows + * main: Add --expose-wayland option + * steamcompmgr: Support for xdg-shell windows + * steamcompmgr: Add new shared header + * steamcompmgr: Add std::variant structure for window type + * wlserver: Initial hookup of xdg-shell + * rendervulkan: Fix vulkan_create_texture_from_wlr_buffer for cpu ptr path + * steamcompmgr: Move xwayland-specific window properties to structure + * drm: use libdisplay-info to parse make/model + * wlserver: Fix crash on shutdown + +------------------------------------------------------------------- +Wed Jan 18 13:58:53 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git117.7bd30dd: + * add the ability to use inverse tone mapping on apps that output SDR (#751) + * vr_session: Hook up icon + * steamcompmgr: Only call updatePosition for the active cursor + * sdlwindow: Implement icon passthru + * sdlwindow: Make sure to free cursor surface + * drm: Hook up "content type" property + * steamcompmgr: Implement --cursor-scale-height + * steamcompmgr: Initial groundwork for cursor scale + * Add support for grabbing the keyboard + +------------------------------------------------------------------- +Sun Jan 15 09:35:04 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git108.eff0ac0: + * wlserver: Add some locking assertions + * sdlwindow: Add missing lock around wlserver_touchmotion + * ime: Fix local_ime segfault + * sdlwindow: Use fake timestamp instead of passing thru + * ci: Add libxmu + * sdlwindow: Forward cursor in absolute mode to host compositor + * main: Fix compilation + * sdlwindow: Default to non-relative mouse when a cursor image exists + * sdlwindow: Refactor user events + * steamcompmgr: Load host cursor by default in nested + +------------------------------------------------------------------- +Wed Jan 04 17:12:14 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git74.a1bff9f: + * shaders: Fix primaries for scRGB content + * layer: Remove duplicate largestObscuringWindowSize check + * steamcompmgr: Add GAMESCOPE_HDR_SDR_CONTENT_BRIGHTNESS atom + * shaders: Improved heatmap code frol Lilium + * rendervulkan: Apply tonemapping to HDR content on SDR outputs + * steamcompmgr: Add GAMESCOPE_DEBUG_HDR_HEATMAP + * color_helpers: Handle naughty clients/EDIDs with more grace + * main: Add heatmap debug to help + * subprojects: Update vkroots + * layer: Clean up return logic in QueuePresentKHR + * layer: Return result from QueuePresentKHR when not forcing suboptimal + +------------------------------------------------------------------- +Mon Jan 02 22:36:28 UTC 2023 - llyyr.public@gmail.com + +- Update to version 3.11.51+git63.acbb719: + * layer: Enable VK_KHR_xcb_surface extension + * layer: Add Reply audo-delete helper for XCB replies + * layer: Free reply in getToplevelWindow when root is reached + * layer: Free attributeReply after use + * layer: Add fallback to XCB surface when we cannot safely flip + * layer: Move XCB helpers to header + * main: Add hdr-sdr-content-nits argument + * steamcompmgr: reap children like Linux on some BSDs + * main: don't renice as non-root on non-Linux + * shaders: Fix output scaling of heatmap + * rendervulkan: Framework for configurable SDR on HDR content brightness + * steamcompmgr: Fix cached value of ST2084 support + * rendervulkan: Add Lilium's HDR heatmap + * rendervulkan: Add HDR heatmap debug + way to force support but not PQ output + * rendervulkan: Turn composite debug into flags rather than bool + * rendervulkan: Expose 16161616_UNORM format for surfaces + * layer: Support for x86 and x86_64 builds at the same time + * build: Add options for building layer/executable + * layer: Respect vk_x11_override_min_image_count + * layer: Dump surface state on creation + * layer: Only expose HDR formats when gamescope HDR output is enabled and it isn't blacklisted for this app + * steamcompmgr: Add GAMESCOPE_HDR_OUTPUT_FEEDBACK + * layer: Make getting property values generic + * layer: Expose scRGB surface format + * steamcompmgr, rendervulkan: Add force wide gammut option + * drm: Respect connector HDR capabilities + * drm: Respect app's HDR metadata + * drm: Hook up Colorspace and HDR_OUTPUT_METADATA + * drm, rendervulkan: Hook up composite ST2084 output + * steamcompmgr, main: Add hdr atoms + startup options + * drm: Parse out HDR/colorimetry metadata from EDID + * layer: Use string views + * layer: Log swapchain format + * layer: Respect xserver's id when overriding contents + * protocol, wlserver: Add override_window_content2 + * layer: Hook up SetHDRMetadata + * protocol: Add set_hdr_metadata to gamescope_xwayland + * layer: Refactor SynchronizedMapObject usage + * layer: Minor formatting changes + * layer: Consolidate extra surface format arrays + * subprojects: Add libdisplay-info dependency + * layer: Handle nullptr pApplicationName + * rendervulkan: Expose R8G8B8A8 surfaces + * layer: Log colorspace for Gamescope surfaces + * shaders: Convert primaries for non-HDR10PQ formats when outputting to HDR10PQ + * rendervulkan: Handle manual sRGB->Linear for formats without SRGB views + * layer: Fixup currentExtent surface cap + minImageCount + * layer: Improve logging + * rendervulkan: Hook up colorspace mask + * wlserver, steamcompmgr: Track swapchain feedback per-commit + * wlserver: Use swapchain feedback for tearing + * layer, wlserver: Implement swapchain feedback + * layer: Expose HDR10 formats + * rendervulkan, shaders: Support PQ+scRGB colorspaces + HDR10 output + * shaders: Add colorimetry helpers + * rendervulkan: Expose 16161616F format + * subprojects: Bump vkroots + * rendervulkan: Expose 1010102 formats + * sdlwindow: request HiDPI window + * main: Force disable AMDVLK switchable graphics layer + +------------------------------------------------------------------- +Fri Dec 23 16:11:29 UTC 2022 - llyyr.public@gmail.com + +- Update to version 3.11.51+git3.f863708: + * steamcompmgr: Disable NV12 screenshot hack + * Wait for POLLIN instead of POLLOUT + * rendervulkan: print DRM format name + * wlserver: Fix crash on Steam startup sometimes + * Fixed stride calculation for NV12 pipewire stream + * Make sure we don't set the pipewire state to running if there was an error during startup + * layer: Add gamescope_wsi layer + * steamcompmgr, drm: Add GAMESCOPE_DISPLAY_EDID_PATH atom + * wlserver: Allow late binding of content overrides + +------------------------------------------------------------------- +Wed Jan 22 16:45:18 UTC 2020 - Marcus Rueckert + +- initial package diff --git a/gamescope.spec b/gamescope.spec new file mode 100644 index 0000000..1eb3b95 --- /dev/null +++ b/gamescope.spec @@ -0,0 +1,136 @@ +# +# spec file for package gamescope +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%bcond_without intree_libs +Name: gamescope +Version: 3.14.24 +Release: 0 +Summary: Micro-compositor optimized for running video games on Wayland +License: BSD-2-Clause +Group: Amusements/Games/Other +URL: https://github.com/Plagman/gamescope +Source: %{name}-%{version}.tar.xz +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: glslang-devel +BuildRequires: meson +BuildRequires: pkgconfig +BuildRequires: stb-devel +BuildRequires: pkgconfig(xcursor) +BuildRequires: pkgconfig(xmu) +# for xxd +BuildRequires: vim +%if %{without intree_libs} +BuildRequires: (pkgconfig(libliftoff) >= 0.4.0 with pkgconfig(libliftoff) < 0.5.0) +BuildRequires: (pkgconfig(wlroots) >= 0.17.0 with pkgconfig(wlroots) < 0.18.0) +BuildRequires: pkgconfig(libdisplay-info) +BuildRequires: pkgconfig(libliftoff) +BuildRequires: pkgconfig(openvr) +%endif +BuildRequires: pkgconfig(benchmark) +BuildRequires: pkgconfig(glm) +BuildRequires: pkgconfig(hwdata) +BuildRequires: pkgconfig(libavif) +BuildRequires: pkgconfig(libcap) +BuildRequires: pkgconfig(libdecor-0) +BuildRequires: pkgconfig(libdrm) >= 2.4.113 +BuildRequires: pkgconfig(libeis-1.0) +BuildRequires: pkgconfig(libpipewire-0.3) +BuildRequires: pkgconfig(sdl2) +BuildRequires: pkgconfig(vulkan) +BuildRequires: pkgconfig(wayland-protocols) >= 1.17 +BuildRequires: pkgconfig(x11) +BuildRequires: pkgconfig(xcomposite) +BuildRequires: pkgconfig(xdamage) +BuildRequires: pkgconfig(xext) +BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(xres) +BuildRequires: pkgconfig(xtst) +BuildRequires: pkgconfig(xwayland) +BuildRequires: pkgconfig(xxf86vm) +%if %{with intree_libs} +# from wlroots.spec +BuildRequires: glslang-devel +BuildRequires: xorg-x11-server-wayland +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(freerdp2) +BuildRequires: pkgconfig(gbm) >= 17.1.0 +BuildRequires: pkgconfig(glesv2) +BuildRequires: pkgconfig(libavcodec) +BuildRequires: pkgconfig(libavformat) +BuildRequires: pkgconfig(libavutil) +BuildRequires: pkgconfig(libdrm) >= 2.4.109 +BuildRequires: pkgconfig(libinput) >= 1.14.0 +BuildRequires: pkgconfig(libpng) +BuildRequires: pkgconfig(libseat) +BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(pixman-1) +BuildRequires: pkgconfig(vulkan) >= 1.2.182 +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-egl) +BuildRequires: pkgconfig(wayland-protocols) >= 1.24 +BuildRequires: pkgconfig(wayland-server) >= 1.21 +BuildRequires: pkgconfig(x11-xcb) +BuildRequires: pkgconfig(xcb) +BuildRequires: pkgconfig(xcb-composite) +BuildRequires: pkgconfig(xcb-errors) +BuildRequires: pkgconfig(xcb-icccm) +BuildRequires: pkgconfig(xcb-image) +BuildRequires: pkgconfig(xcb-render) +BuildRequires: pkgconfig(xcb-renderutil) +BuildRequires: pkgconfig(xcb-xfixes) +BuildRequires: pkgconfig(xcb-xkb) +BuildRequires: pkgconfig(xkbcommon) +#/from wlroots.spec +%endif + +%description +%{name} is a micro-compositor optimized for running video games on Wayland + +%prep +%autosetup -p1 + +%build +%if 0%{?suse_version} < 1599 +sed -i "s|dependency('stb')|declare_dependency(include_directories: include_directories('/usr/include/stb'))|g" src/meson.build +%endif +sed -i "s|#include |#include |g" src/InputEmulation.cpp +%meson \ + -Dpipewire=enabled \ +%{nil} + +%meson_build + +%install +%meson_install --skip-subprojects + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig + +%files +%license LICENSE +%doc README.md +%{_bindir}/%{name} +%{_bindir}/%{name}stream +%{_bindir}/%{name}ctl +%{_bindir}/%{name}reaper +%{_libdir}/libVkLayer_FROG_gamescope_wsi_%{_arch}.so +%dir %{_datadir}/vulkan/implicit_layer.d/ +%{_datadir}/vulkan/implicit_layer.d/VkLayer_FROG_gamescope_wsi.%{_arch}.json + +%changelog