diff options
author | Merlin Jehli | 2024-06-03 10:08:14 +0200 |
---|---|---|
committer | Merlin Jehli | 2024-06-03 10:08:14 +0200 |
commit | 1513ed9a84b85b31c0529fff9320016d10619094 (patch) | |
tree | 2941cf39332ab06777f026485695139f00c3c499 | |
parent | 01730ef39b4f6b5de8e65b07d552ea0075d1b683 (diff) | |
download | aur-gamescope-fml.tar.gz |
update to 3.14.18
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 15 | ||||
-rw-r--r-- | disable-steam-touch-click-atom.patch | 13 | ||||
-rw-r--r-- | modifiers.patch | 100 |
4 files changed, 11 insertions, 127 deletions
@@ -1,6 +1,6 @@ pkgbase = gamescope-fml pkgdesc = SteamOS session compositing window manager with added patches - pkgver = 3.14.16 + pkgver = 3.14.18 pkgrel = 1 url = https://github.com/ValveSoftware/gamescope arch = x86_64 @@ -47,25 +47,21 @@ pkgbase = gamescope-fml depends = xorg-server-xwayland provides = gamescope conflicts = gamescope - source = git+https://github.com/ValveSoftware/gamescope.git#tag=3.14.16 + source = git+https://github.com/ValveSoftware/gamescope.git#tag=3.14.18 source = git+https://github.com/nothings/stb.git#commit=af1a5bc352164740c1cc1354942b1c6b72eacb8a source = git+https://github.com/Joshua-Ashton/reshade.git source = git+https://github.com/Joshua-Ashton/GamescopeShaders.git#tag=v0.1 source = git+https://github.com/KhronosGroup/SPIRV-Headers.git source = 720p.patch - source = disable-steam-touch-click-atom.patch source = external-rotation.patch source = panel-type.patch - source = modifiers.patch - sha256sums = 024c6e89befd05fe8e15b925adf2a9b435654834036df23a0571843478afb607 + sha256sums = 97aeb6dd4206c2716a063c145d24bde443163e0e13e045359ac7e8a293f2d42e sha256sums = e39e0c91b297bfd707afcda84ecdc15a08c22e2ad4c347fc3533b1ed98fb3f85 sha256sums = SKIP sha256sums = 03726f2fb44ae79e6a398e8f9aaaf8054800dda9b8298726157522fe5f7296b1 sha256sums = SKIP sha256sums = 63a9c78d2871b5f53e037b43929a9db5fac1d464a0026d0d0b207227bbd9dcd5 - sha256sums = b12682ccaf9e0fd25bfed37c16f79d79ce418564b73b2ed1e4a81b2b03dc43cf sha256sums = 86f0832f00f5c4f75df8bd5d2a434a31ae4879b59dbee63239d4035b75c56b02 sha256sums = 5b09480791d07f76df4da2fafc54336ad6806d3eaaf57ab81c651ebd3b56ff51 - sha256sums = ef97afb0fa044fa0e95c38936ce92bdcdfc23080e377fd71f42a2fab9aabf0cb pkgname = gamescope-fml @@ -2,7 +2,7 @@ _pkgname=gamescope pkgname=gamescope-fml -pkgver=3.14.16 +pkgver=3.14.18 pkgrel=1 pkgdesc='SteamOS session compositing window manager with added patches' arch=(x86_64) @@ -61,22 +61,18 @@ source=( git+https://github.com/Joshua-Ashton/GamescopeShaders.git#tag=v0.1 git+https://github.com/KhronosGroup/SPIRV-Headers.git 720p.patch - disable-steam-touch-click-atom.patch external-rotation.patch panel-type.patch - modifiers.patch ) -sha256sums=('024c6e89befd05fe8e15b925adf2a9b435654834036df23a0571843478afb607' +sha256sums=('97aeb6dd4206c2716a063c145d24bde443163e0e13e045359ac7e8a293f2d42e' 'e39e0c91b297bfd707afcda84ecdc15a08c22e2ad4c347fc3533b1ed98fb3f85' 'SKIP' '03726f2fb44ae79e6a398e8f9aaaf8054800dda9b8298726157522fe5f7296b1' 'SKIP' '63a9c78d2871b5f53e037b43929a9db5fac1d464a0026d0d0b207227bbd9dcd5' - 'b12682ccaf9e0fd25bfed37c16f79d79ce418564b73b2ed1e4a81b2b03dc43cf' '86f0832f00f5c4f75df8bd5d2a434a31ae4879b59dbee63239d4035b75c56b02' - '5b09480791d07f76df4da2fafc54336ad6806d3eaaf57ab81c651ebd3b56ff51' - 'ef97afb0fa044fa0e95c38936ce92bdcdfc23080e377fd71f42a2fab9aabf0cb') + '5b09480791d07f76df4da2fafc54336ad6806d3eaaf57ab81c651ebd3b56ff51') prepare() { cd "$srcdir/$_pkgname" @@ -115,6 +111,11 @@ build() { arch-meson gamescope build \ -Dforce_fallback_for=stb,wlroots \ -Dpipewire=enabled \ + -Dinput_emulation=enabled \ + -Ddrm_backend=enabled \ + -Drt_cap=enabled \ + -Davif_screenshots=enabled \ + -Dsdl2_backend=enabled \ -Denable_gamescope=true \ -Denable_gamescope_wsi_layer=true \ -Denable_openvr_support=true diff --git a/disable-steam-touch-click-atom.patch b/disable-steam-touch-click-atom.patch deleted file mode 100644 index 8c980b70cee7..000000000000 --- a/disable-steam-touch-click-atom.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/steamcompmgr.cpp b/src/steamcompmgr.cpp -index 05337c1..d6d883b 100644 ---- a/src/steamcompmgr.cpp -+++ b/src/steamcompmgr.cpp -@@ -4949,7 +4949,7 @@ handle_property_notify(xwayland_ctx_t *ctx, XPropertyEvent *ev) - focusDirty = true; - } - } -- if (ev->atom == ctx->atoms.steamTouchClickModeAtom ) -+ if (ev->atom == ctx->atoms.steamTouchClickModeAtom && !env_to_bool(getenv("GAMESCOPE_DISABLE_TOUCH_CLICK_MODE"))) - { - gamescope::cv_touch_click_mode = (gamescope::TouchClickMode) get_prop(ctx, ctx->root, ctx->atoms.steamTouchClickModeAtom, 0u ); - } diff --git a/modifiers.patch b/modifiers.patch deleted file mode 100644 index a4c7c07e9ec1..000000000000 --- a/modifiers.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 4ca3986582d7a45162da9c99e85044a8b9a0fd65 Mon Sep 17 00:00:00 2001 -From: Joshua Ashton <joshua@froggi.es> -Date: Sat, 18 May 2024 18:47:52 +0100 -Subject: [PATCH] wayland_backend: Hopefully fix GPUs wehere modifiers are not - supported - ---- - src/wayland_backend.cpp | 29 ++++++++++++++++++++++++----- - 1 file changed, 24 insertions(+), 5 deletions(-) - -diff --git a/src/wayland_backend.cpp b/src/wayland_backend.cpp -index a8b067320..ddc6c10df 100644 ---- a/src/wayland_backend.cpp -+++ b/src/wayland_backend.cpp -@@ -73,6 +73,7 @@ namespace gamescope - - gamescope::ConVar<bool> cv_wayland_mouse_warp_without_keyboard_focus( "wayland_mouse_warp_without_keyboard_focus", true, "Should we only forward mouse warps to the app when we have keyboard focus?" ); - gamescope::ConVar<bool> cv_wayland_mouse_relmotion_without_keyboard_focus( "wayland_mouse_relmotion_without_keyboard_focus", false, "Should we only forward mouse relative motion to the app when we have keyboard focus?" ); -+ gamescope::ConVar<bool> cv_wayland_use_modifiers( "wayland_use_modifiers", true, "Use DMA-BUF modifiers?" ); - - class CWaylandConnector; - class CWaylandPlane; -@@ -532,6 +533,8 @@ namespace gamescope - void SetFullscreen( bool bFullscreen ); // Thread safe, can be called from the input thread. - void UpdateFullscreenState(); - -+ bool SupportsFormat( uint32_t uDRMFormat ) const; -+ - void SetHostCompositorIsCurrentlyVRR( bool bActive ) { m_bHostCompositorIsCurrentlyVRR = bActive; } - - bool CurrentDisplaySupportsVRR() const { return m_bHostCompositorIsCurrentlyVRR; } -@@ -598,6 +601,7 @@ namespace gamescope - zwp_relative_pointer_v1 *m_pRelativePointer = nullptr; - - std::unordered_map<uint32_t, std::vector<uint64_t>> m_FormatModifiers; -+ std::unordered_set<uint32_t> m_ModifierlessFormats; - std::unordered_map<uint32_t, wl_buffer *> m_ImportedFbs; - - uint32_t m_uPointerEnterSerial = 0; -@@ -1270,15 +1274,15 @@ namespace gamescope - void CWaylandBackend::GetPreferredOutputFormat( VkFormat *pPrimaryPlaneFormat, VkFormat *pOverlayPlaneFormat ) const - { - VkFormat u8BitFormat = VK_FORMAT_UNDEFINED; -- if ( m_FormatModifiers.contains( DRM_FORMAT_ARGB8888 ) ) -+ if ( SupportsFormat( DRM_FORMAT_ARGB8888 ) ) - u8BitFormat = VK_FORMAT_B8G8R8A8_UNORM; -- else if ( m_FormatModifiers.contains( DRM_FORMAT_ABGR8888 ) ) -+ else if ( SupportsFormat( DRM_FORMAT_ABGR8888 ) ) - u8BitFormat = VK_FORMAT_R8G8B8A8_UNORM; - - VkFormat u10BitFormat = VK_FORMAT_UNDEFINED; -- if ( m_FormatModifiers.contains( DRM_FORMAT_ABGR2101010 ) ) -+ if ( SupportsFormat( DRM_FORMAT_ABGR2101010 ) ) - u10BitFormat = VK_FORMAT_A2B10G10R10_UNORM_PACK32; -- else if ( m_FormatModifiers.contains( DRM_FORMAT_ARGB2101010 ) ) -+ else if ( SupportsFormat( DRM_FORMAT_ARGB2101010 ) ) - u10BitFormat = VK_FORMAT_A2R10G10B10_UNORM_PACK32; - - assert( u8BitFormat != VK_FORMAT_UNDEFINED ); -@@ -1478,10 +1482,16 @@ namespace gamescope - - bool CWaylandBackend::UsesModifiers() const - { -- return true; -+ if ( !cv_wayland_use_modifiers ) -+ return false; -+ -+ return !m_FormatModifiers.empty(); - } - std::span<const uint64_t> CWaylandBackend::GetSupportedModifiers( uint32_t uDrmFormat ) const - { -+ if ( !UsesModifiers() ) -+ return std::span<const uint64_t>{}; -+ - auto iter = m_FormatModifiers.find( uDrmFormat ); - if ( iter == m_FormatModifiers.end() ) - return std::span<const uint64_t>{}; -@@ -1744,6 +1754,13 @@ namespace gamescope - } - } - -+ bool CWaylandBackend::SupportsFormat( uint32_t uDRMFormat ) const -+ { -+ return UsesModifiers() -+ ? m_FormatModifiers.contains( uDRMFormat ) -+ : m_ModifierlessFormats.contains( uDRMFormat ); -+ } -+ - ///////////////////// - // Wayland Callbacks - ///////////////////// -@@ -1831,6 +1848,8 @@ namespace gamescope - //xdg_log.infof( "Modifier: %s (0x%" PRIX32 ") %lx", drmGetFormatName( uFormat ), uFormat, ulModifier ); - if ( ulModifier != DRM_FORMAT_MOD_INVALID ) - m_FormatModifiers[uFormat].emplace_back( ulModifier ); -+ else -+ m_ModifierlessFormats.emplace( uFormat ); - } - - // Output |