Package Details: gamescope-git 3.14.0.r6.g9e46c89-1

Git Clone URL: https://aur.archlinux.org/gamescope-git.git (read-only, click to copy)
Package Base: gamescope-git
Description: SteamOS session compositing window manager
Upstream URL: https://github.com/ValveSoftware/gamescope
Keywords: gamescope session steamcompmgr steamos
Licenses: BSD
Conflicts: gamescope
Provides: gamescope
Submitter: Scrumplex
Maintainer: Samsagax (bouhaa, alkazar, ruineka, pastaq, Sid127)
Last Packager: Sid127
Votes: 24
Popularity: 0.40
First Submitted: 2020-05-20 11:19 (UTC)
Last Updated: 2024-04-10 19:06 (UTC)

Dependencies (40)

Required by (25)

Sources (1)

Pinned Comments

Scrumplex commented on 2022-06-14 10:44 (UTC)

Please do not flag this package as out-of-date if it still builds fine and isn't missing any dependencies or anything

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 8 Next › Last »

joolsrulez commented on 2024-02-05 18:41 (UTC) (edited on 2024-02-05 18:44 (UTC) by joolsrulez)

PGKBUILD does build <--delme
Maintainer: Sefa Eyeoglu contact@scrumplex.net <--delme

_pkgname=gamescope pkgname=${_pkgname}-git pkgver=3.14.0.r6.g9e46c89 pkgrel=1 pkgdesc="Micro-compositor formerly known as steamcompmgr" arch=(x86_64) url="https://github.com/ValveSoftware/gamescope" license=("custom:BSD-2-Clause") depends=( # gamescope "libxcomposite" "libxtst" "libxres" "sdl2" "pipewire" "libxmu" "glm" "benchmark" # wlroots "libdrm" "libxkbcommon" "libinput" "pixman" "xorg-xwayland" "xcb-util-renderutil" "xcb-util-wm" "xcb-util-errors" "seatd" ) makedepends=("git" "meson" "ninja" "vulkan-headers" "glslang" "wayland-protocols" "cmake" )

gs_handle_newer_wlroot.patch

provides=($_pkgname "steamcompmgr") conflicts=($_pkgname "steamcompmgr") source=( "$_pkgname::git+https://github.com/ValveSoftware/gamescope.git"
"git+https://gitlab.freedesktop.org/wlroots/wlroots.git" "git+https://gitlab.freedesktop.org/emersion/libliftoff.git" "git+https://gitlab.freedesktop.org/emersion/libdisplay-info.git" "git+https://github.com/ValveSoftware/openvr.git" "git+https://github.com/Joshua-Ashton/vkroots.git" "git+https://github.com/nothings/stb.git" )

sha512sums=( 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' 'SKIP' )

options=(!strip)

pkgver() {
cd "$srcdir/$_pkgname"
git describe --long --tags | sed 's/([^-]*-g)/r\1/;s/-/./g'
}

prepare() { cd "$srcdir/$_pkgname"

for src in "${source[@]}"; do
    src="${src%%::*}"
    src="${src##*/}"
    [[ $src = *.patch && -z "$(echo $src)" ]] || continue
    echo "Applying patch $src..."
    git apply "../$src"
done

#git add *
#git am -3 --rerere-autoupdate $srcdir/revert-nvidia-breaking-commit.patch
git checkout 04eb72b5f519c2ed1b13edf843754583b92bf8d6
git submodule init
git config submodule.subprojects/wlroots.url "$srcdir/wlroots"
git config submodule.subprojects/libliftoff.url "$srcdir/libliftoff"
git config submodule.subprojects/libdisplay-info.url "$srcdir/libdisplay-info"
git config submodule.subprojects/openvr.url "$srcdir/openvr"
git config submodule.subprojects/vkroots.url "$srcdir/vkroots"
git -c protocol.file.allow=always submodule update

# make stb.wrap use our local clone
sed -i "s|https://github.com/nothings/stb.git|$srcdir/stb|" "subprojects/stb.wrap"
meson subprojects download

}

build() { cd "${_pkgname}"

params2=($CXXFLAGS) FLAGS="" for flag in ${params2[@]}; do if [[ -z $(echo " $flag" | grep -E "[-]fomit-frame-pointer|[-]fno-omit-frame-pointer|-O|-fuse-ld") && -n '$FLAGS' ]]; then FLAGS="$FLAGS $flag" echo "if branch: $flag" elif [[ -z $(echo " $flag" | grep -E "[-]fomit-frame-pointer|[-]fno-omit-frame-pointer|-O|-fuse-ld") ]]; then FLAGS="$flag" echo "elif branch: $flag" fi done export CFLAGS="-g2 -fno-semantic-interposition -falign-functions=32 -falign-jumps -falign-loops -falign-labels -Wno-maybe-uninitialized -march=native -Wno-uninitialized -fno-common -fno-semantic-interposition -falign-functions=32 -fweb -ftree-slp-vectorize -fivopts -ftree-vectorize -fno-plt -ftree-slp-vectorize -ftree-vectorize -fmerge-all-constants -ffast-math -mrecip=all -fno-common -fno-semantic-interposition -ftree-vectorize -fmerge-all-constants -fmerge-all-constants -fgcse-sm -fgcse-las -fgcse-after-reload -fdevirtualize-speculatively --param=vect-max-layout-candidates=8192 --param=sra-max-propagations=1024 --param=max-stores-to-track=1048576 --param=max-stores-to-sink=16 --param=max-stores-to-merge=8192 --param=max-store-chains-to-track=65536 --param=max-reload-search-insns=512 --param=max-hoist-depth=0 --param=max-gcse-memory=8000000 --param=loop-invariant-max-bbs-in-loop=100000 --param=max-cse-insns=10000 --param=max-dse-active-local-stores=5000 --param=max-cselib-memory-locations=5000 --param=max-cse-path-length=10000 --param=max-inline-insns-recursive=300 --param=loop-max-datarefs-for-datadeps=200000 --param=iv-max-considered-uses=50000 --param=max-peeled-insns=64 --param=iv-always-prune-cand-set-bound=100 --param=ira-max-conflict-table-size=80000 --param=ira-consider-dup-in-all-alts=1 --param=ipa-max-param-expr-ops=512 --param=ipa-max-loop-predicates=320 --param=ipa-max-agg-items=3200 --param=ipa-max-aa-steps=250000 --param=ipa-jump-function-lookups=32768 --param=dse-max-alias-queries-per-store=20480 --param=dse-max-object-size=2048 --param=max-tail-merge-iterations=10 --param=max-tail-merge-comparisons=1000 --param=loop-versioning-max-inner-insns=100 --param=loop-versioning-max-outer-insns=64" export CXXFLAGS="-fstrict-enums -g2 -fno-semantic-interposition -falign-functions=32 -falign-jumps -falign-loops -Wno-maybe-uninitialized -march=native -Wno-uninitialized -fno-common -fno-semantic-interposition -falign-functions=32 -fweb -ftree-slp-vectorize -fivopts -ftree-vectorize -fno-plt -ftree-slp-vectorize -ftree-vectorize -fmerge-all-constants -ffast-math -mrecip=all -fvisibility-inlines-hidden -fno-common -fno-semantic-interposition -ftree-vectorize -fmerge-all-constants -fmerge-all-constants -fgcse-sm -fgcse-las -fgcse-after-reload -fdevirtualize-speculatively --param=vect-max-layout-candidates=8192 --param=sra-max-propagations=1024 --param=max-stores-to-track=1048576 --param=max-stores-to-sink=16 --param=max-stores-to-merge=8192 --param=max-store-chains-to-track=65536 --param=max-reload-search-insns=512 --param=max-hoist-depth=0 --param=max-gcse-memory=8000000 --param=loop-invariant-max-bbs-in-loop=100000 --param=max-cse-insns=10000 --param=max-dse-active-local-stores=5000 --param=max-cselib-memory-locations=5000 --param=max-cse-path-length=10000 --param=max-inline-insns-recursive=300 --param=loop-max-datarefs-for-datadeps=200000 --param=iv-max-considered-uses=50000 --param=max-peeled-insns=64 --param=iv-always-prune-cand-set-bound=100 --param=ira-max-conflict-table-size=80000 --param=ira-consider-dup-in-all-alts=1 --param=ipa-max-param-expr-ops=512 --param=ipa-max-loop-predicates=320 --param=ipa-max-agg-items=3200 --param=ipa-max-aa-steps=250000 --param=ipa-jump-function-lookups=32768 --param=dse-max-alias-queries-per-store=20480 --param=dse-max-object-size=2048 --param=max-tail-merge-iterations=10 --param=max-tail-merge-comparisons=1000 --param=loop-versioning-max-inner-insns=100 --param=loop-versioning-max-outer-insns=64"

unset FLAGS params3=($LDFLAGS) FLAGS2="" for flag in ${params3[@]}; do if [[ -z $(echo " $flag" | grep -E "[-]fuse-ld|[-]fno-omit-frame-pointer|-fomit-frame-pointer|-fuse-ld" ) && -n '$FLAGS2' ]]; then FLAGS2="$FLAGS2 $flag" echo "if branch: $flag" elif [[ -z $(echo " $flag" | grep -E "[-]fuse-ld|[-]fno-omit-frame-pointer|-fomit-frame-pointer|-fuse-ld") ]]; then FLAGS2="$flag" echo "elif branch: $flag" fi done echo "FLAGS: ${FLAGS[@]}" export LDFLAGS="-lrt "

sed -i "s/if get_option[(]'enable_openvr_support'[)]/if false/" "$srcdir/$_pkgname/meson.build"



 arch-meson "$srcdir/$_pkgname" build \
    --buildtype release \
    --force-fallback-for=wlroots,libliftoff,stb \
    -Dpipewire=enabled \
    -Dwlroots:backends=drm,libinput,x11 \
    -Dwlroots:renderers=gles2,vulkan \
    -Db_pch=false \
    -Dcpp_args="$CXXFLAGS" \
    -Db_lto=true
sed -i "s/if get_option[(]'enable_openvr_support'[)]/if false/" "$srcdir/$_pkgname/meson.build"


cd "$srcdir/$_pkgname"

ninja -C build

}

package() { cd "${_pkgname}"

meson install -C build --skip-subprojects --destdir "$pkgdir"

cd "$srcdir/$_pkgname"

install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
install -Dm644 "README.md" "${pkgdir}/usr/share/doc/${_pkgname}/README.md"

}

patlefort commented on 2024-02-02 18:29 (UTC)

It's missing the following dependencies: hwdata, libavif, seatd, libinput and xcb-util-wm in depends and cmake in makedepends.

Sid127 commented on 2024-01-29 16:39 (UTC) (edited on 2024-01-29 16:39 (UTC) by Sid127)

could you please fix the conflict this package has with libdisplay-info and libliftoff. Including those libs in this package is not the correct way to do it and it breaks compatibility with other wayland compositors

gamescope-git: /usr/bin/di-edid-decode exists in filesystem (owned by libdisplay-info)
gamescope-git: /usr/lib/libdisplay-info.so exists in filesystem (owned by libdisplay-info)
gamescope-git: /usr/lib/libdisplay-info.so.0.1.1 exists in filesystem (owned by libdisplay-info)
gamescope-git: /usr/lib/libdisplay-info.so.1 exists in filesystem (owned by libdisplay-info)
gamescope-git: /usr/lib/libliftoff.so exists in filesystem (owned by libliftoff)
gamescope-git: /usr/lib/libliftoff.so.0 exists in filesystem (owned by libliftoff)
gamescope-git: /usr/lib/pkgconfig/libdisplay-info.pc exists in filesystem (owned by libdisplay-info)
gamescope-git: /usr/lib/pkgconfig/libliftoff.pc exists in filesystem (owned by libliftoff)

mkopec commented on 2024-01-29 16:06 (UTC)

Since commit https://github.com/ValveSoftware/gamescope/commit/d61dba14be618384a9f824c5d91f81dcc614725d gamescope requires OpenVR 2, which is not yet provided by the openvr package, so until the package gets updated, building gamescope-git requires installing openvr-git.

This package itself is not out of date, so it should not be marked as such.

muhgoslav_klose commented on 2024-01-27 10:54 (UTC)

Since it did not compile for me for a few days now and it threw

error "GLM: GLM_GTX_matrix_operation is an experimental extension and may change in the future.

I looked into it and this simple patch fixes the build when added to $source

diff --git a/gamescope/src/color_helpers.h b/gamescope/src/color_helpers.h
index 51aaedc..3278354 100644
--- a/src/color_helpers.h
+++ b/src/color_helpers.h
@@ -1,3 +1,5 @@
+#define GLM_ENABLE_EXPERIMENTAL
+
 #pragma once

 #include <algorithm>

hashworks commented on 2024-01-04 19:21 (UTC)

Needs "libavif" dep. And as others have said, builds with a dependency on "libdisplay-info", not with the included libdisplay-info.git.

slimb commented on 2023-12-14 00:40 (UTC)

@Vash63 yeah I got the issue too. Also not sure why gamescope-git has libliftoff in the sources instead of depends. I see in the gamescope PKGBUILD they just add a normal dependency to libliftoff.so

patlefort commented on 2023-12-10 14:13 (UTC)

../subprojects/wlroots/backend/drm/util.c:6:10: fatal error: libdisplay-info/cvt.h: No such file or directory
    6 | #include <libdisplay-info/cvt.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~

libdisplay-info is found by meson but something is missing so it can find its include files. This is in clean chroot.

Vash63 commented on 2023-11-25 09:18 (UTC)

Anyone else getting this when launching?

gamescope: error while loading shared libraries: libliftoff.so.0: cannot open shared object file: No such file or directory

libliftoff appears to be included in the PKGBUILD so I don't see why I would need to install it separately, and it's not in the depends.

Kagukara commented on 2023-11-09 20:06 (UTC) (edited on 2023-11-19 01:05 (UTC) by Kagukara)

EDIT: The cause was openvr-git, I was able to build the package without problem with openvr.

I'm getting this when trying to build:

ninja: Entering directory `build'                                                                                                                                                            
[391/408] Compiling C++ object layer/libVkLayer_FROG_gamescope_wsi_x86_64.so.p/VkLayer_FROG_gamescope_wsi.cpp.o
FAILED: layer/libVkLayer_FROG_gamescope_wsi_x86_64.so.p/VkLayer_FROG_gamescope_wsi.cpp.o 
c++ -Ilayer/libVkLayer_FROG_gamescope_wsi_x86_64.so.p -Ilayer -I../layer -Iprotocol -flto=auto -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=c++20 -O3 -DWLR_USE_UNSTABLE -Wno-unused-parameter -Wno-missing-field-initializers -Wno-invalid-offsetof -Wno-unused-const-variable -Wno-volatile -Wno-ignored-qualifiers -Wno-missing-braces -ffast-math -DHAVE_PIPEWIRE=1 -DHAVE_OPENVR=1 '-DHWDATA_PNP_IDS="//usr/share/hwdata/pnp.ids"' -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -fPIC -MD -MQ layer/libVkLayer_FROG_gamescope_wsi_x86_64.so.p/VkLayer_FROG_gamescope_wsi.cpp.o -MF layer/libVkLayer_FROG_gamescope_wsi_x86_64.so.p/VkLayer_FROG_gamescope_wsi.cpp.o.d -o layer/libVkLayer_FROG_gamescope_wsi_x86_64.so.p/VkLayer_FROG_gamescope_wsi.cpp.o -c ../layer/VkLayer_FROG_gamescope_wsi.cpp
../layer/VkLayer_FROG_gamescope_wsi.cpp: In static member function ‘static void GamescopeWSILayer::VkInstanceOverrides::GetPhysicalDeviceFeatures2(const vkroots::VkInstanceDispatch*, VkPhysicalDevice, VkPhysicalDeviceFeatures2*)’:
../layer/VkLayer_FROG_gamescope_wsi.cpp:504:54: error: ‘FindInChainMutable’ is not a member of ‘vkroots’
  504 |       auto pSwapchainMaintenance1Features = vkroots::FindInChainMutable<VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT, VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT>(pFeatures);
      |                                                      ^~~~~~~~~~~~~~~~~~
../layer/VkLayer_FROG_gamescope_wsi.cpp: In function ‘uint32_t GamescopeWSILayer::gamescopeFrameLimiterOverride()’:
../layer/VkLayer_FROG_gamescope_wsi.cpp:128:10: warning: ignoring return value of ‘ssize_t pread(int, void*, size_t, __off64_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  128 |     pread(fd, &overrideValue, sizeof(overrideValue), 0);
      |     ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[393/408] Compiling C++ object src/gamescope.p/vr_session.cpp.o
FAILED: src/gamescope.p/vr_session.cpp.o 
c++ -Isrc/gamescope.p -Isrc -I../src -I../src/reshade/source -I../src/reshade/include -I../thirdparty/SPIRV-Headers/include/spirv/unified1 -Isubprojects/wlroots/include -I../subprojects/wlroots/include -I../subprojects/libliftoff/include -Isubprojects/stb -I../subprojects/stb -Iprotocol -I/usr/include/libdrm -I/usr/include/SDL2 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/pipewire-0.3 -I/usr/include/spa-0.2 -I/usr/include/openvr -flto=auto -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -std=c++20 -O3 -DWLR_USE_UNSTABLE -Wno-unused-parameter -Wno-missing-field-initializers -Wno-invalid-offsetof -Wno-unused-const-variable -Wno-volatile -Wno-ignored-qualifiers -Wno-missing-braces -ffast-math -DHAVE_PIPEWIRE=1 -DHAVE_OPENVR=1 '-DHWDATA_PNP_IDS="//usr/share/hwdata/pnp.ids"' -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -fPIE -isystem/usr/include/libdrm -D_REENTRANT -pthread -MD -MQ src/gamescope.p/vr_session.cpp.o -MF src/gamescope.p/vr_session.cpp.o.d -o src/gamescope.p/vr_session.cpp.o -c ../src/vr_session.cpp
../src/vr_session.cpp:119:26: error: ‘const vr::VROverlayFlags vr::VROverlayFlags_EnableControlBar’ redeclared as different kind of entity
  119 |     const VROverlayFlags VROverlayFlags_EnableControlBar = (VROverlayFlags)(1 << 23);
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/vr_session.hpp:10,
                 from ../src/vr_session.cpp:1:
/usr/include/openvr/openvr.h:3889:17: note: previous declaration ‘vr::VROverlayFlags vr::VROverlayFlags_EnableControlBar’
 3889 |                 VROverlayFlags_EnableControlBar = 1 << 23,
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/vr_session.cpp:120:26: error: ‘const vr::VROverlayFlags vr::VROverlayFlags_EnableControlBarKeyboard’ redeclared as different kind of entity
  120 |     const VROverlayFlags VROverlayFlags_EnableControlBarKeyboard = (VROverlayFlags)(1 << 24);
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/openvr/openvr.h:3892:17: note: previous declaration ‘vr::VROverlayFlags vr::VROverlayFlags_EnableControlBarKeyboard’
 3892 |                 VROverlayFlags_EnableControlBarKeyboard = 1 << 24,
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/vr_session.cpp:121:26: error: ‘const vr::VROverlayFlags vr::VROverlayFlags_EnableControlBarClose’ redeclared as different kind of entity
  121 |     const VROverlayFlags VROverlayFlags_EnableControlBarClose = (VROverlayFlags)(1 << 25);
      |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/openvr/openvr.h:3898:17: note: previous declaration ‘vr::VROverlayFlags vr::VROverlayFlags_EnableControlBarClose’
 3898 |                 VROverlayFlags_EnableControlBarClose = 1 << 25,
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[406/408] Compiling C++ object src/gamescope.p/steamcompmgr.cpp.o
../src/steamcompmgr.cpp: In function ‘bool set_color_3dlut_override(const char*)’:
../src/steamcompmgr.cpp:585:14: warning: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  585 |         fread(g_ColorMgmtLutsOverride[nLutIndex].lut3d, elems, sizeof(uint16_t), f);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/steamcompmgr.cpp: In function ‘bool set_color_shaperlut_override(const char*)’:
../src/steamcompmgr.cpp:612:14: warning: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
  612 |         fread(g_ColorMgmtLutsOverride[nLutIndex].lut1d, elems, sizeof(uint16_t), f);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/steamcompmgr.cpp: In function ‘void update_runtime_info()’:
../src/steamcompmgr.cpp:5208:15: warning: ignoring return value of ‘ssize_t pwrite(int, const void*, size_t, __off64_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 5208 |         pwrite( g_nRuntimeInfoFd, &limiter_enabled, sizeof( limiter_enabled ), 0 );
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/steamcompmgr.cpp: In function ‘void spawn_client(char**)’:
../src/steamcompmgr.cpp:6710:29: warning: ignoring return value of ‘int nice(int)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 6710 |                         nice( g_nOldNice - g_nNewNice );
      |                         ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/steamcompmgr.cpp: In function ‘void determine_and_apply_focus(xwayland_ctx_t*, std::vector<steamcompmgr_win_t*>&)’:
../src/steamcompmgr.cpp:3687:31: warning: ignoring return value of ‘int system(const char*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
 3687 |                         system( buf );
      |                         ~~~~~~^~~~~~~
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
    Aborting...
error: failed to build 'gamescope-git-3.12.0.beta8.r13.g1b9b736-1': 
error: packages failed to build: gamescope-git-3.12.0.beta8.r13.g1b9b736-1

I'm using paru as my AUR helper to build the package.

Is this a problem with my system or the package, please let me know how I can go about fixing the problem and get the package to installed. Thank you.