commit:     ffa2e9e4b10f0c0120d8a8ba1df35fe45d8a4bf1
Author:     Kai Krakow <kai <AT> kaishome <DOT> de>
AuthorDate: Wed Feb  7 13:55:55 2024 +0000
Commit:     Joonas Niilola <juippis <AT> gentoo <DOT> org>
CommitDate: Wed Feb  7 13:59:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ffa2e9e4

games-util/gamemode: Update 9999

Remove outdated comments about SCHED_ISO: The MuQSS scheduler is mostly
gone from all kernels, and even CK says that the new EEVDF scheduler
implements most of his design ideas.

Also, bump inih requirement to at least v54.

Signed-off-by: Kai Krakow <kai <AT> kaishome.de>
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>

 games-util/gamemode/gamemode-9999.ebuild | 70 +++++++++-----------------------
 1 file changed, 19 insertions(+), 51 deletions(-)

diff --git a/games-util/gamemode/gamemode-9999.ebuild 
b/games-util/gamemode/gamemode-9999.ebuild
index 5807b8187fbf..746c7b5239eb 100644
--- a/games-util/gamemode/gamemode-9999.ebuild
+++ b/games-util/gamemode/gamemode-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
@@ -28,17 +28,13 @@ REQUIRED_USE="^^ ( systemd elogind )"
 
 RDEPEND="
        acct-group/gamemode
-       >=dev-libs/inih-53
+       >=dev-libs/inih-54
        sys-apps/dbus[${MULTILIB_USEDEP},systemd(+)=,elogind(-)=]
        sys-auth/polkit
        sys-libs/libcap
 "
 DEPEND="${RDEPEND}"
 
-PATCHES=(
-       "${FILESDIR}"/${PN}-1.7-static-libs.patch
-)
-
 DOCS=(
        CHANGELOG.md
        LICENSE.txt
@@ -46,42 +42,13 @@ DOCS=(
        example/gamemode.ini
 )
 
-pkg_pretend() {
-       elog
-       elog "GameMode needs a kernel capable of SCHED_ISO to use its soft 
realtime"
-       elog "feature. Example of a kernel providing that is 
sys-kernel/pf-sources."
-       elog
-       elog "Support for soft realtime is completely optional. It may provide 
the"
-       elog "following benefits with systems having at least four CPU cores:"
-       elog
-       elog "  * more CPU shares allocated exclusively to the game"
-       elog "  * reduced input lag and reduced thread latency"
-       elog "  * more consistent frame times resulting in less microstutters"
-       elog
-       elog "You probably won't benefit from soft realtime mode and thus don't 
need"
-       elog "SCHED_ISO if:"
-       elog
-       elog "  * Your CPU has less than four cores because the game may 
experience"
-       elog "    priority inversion with the graphics driver (thus heuristics"
-       elog "    automatically disable SCHED_ISO usage then)"
-       elog "  * Your game uses busy-loops to interface with the graphics 
driver"
-       elog "    but you may still force SCHED_ISO per configuation file, 
YMMV,"
-       elog "    it depends on the graphics driver implementation, i.e. usage 
of"
-       elog "    __GL_THREADED_OPTIMIZATIONS or similar."
-       elog "  * If your game causes more than 70% CPU usage across all cores,"
-       elog "    SCHED_ISO automatically turns off and on depending on usage 
and"
-       elog "    is processed with higher-than-normal priority then (renice)."
-       elog "    This auto-switching may result in a lesser game experience."
-       elog
-       elog "For more info look at:"
-       elog 
"https://github.com/FeralInteractive/gamemode/blob/${GAMEMODE_GIT_PTR}/README.md";
-       elog
-}
-
 multilib_src_configure() {
        local emesonargs=(
-               -Dwith-systemd-user-unit-dir="$(systemd_get_userunitdir)"
+               -Dwith-examples=false
                -Dwith-pam-limits-dir="${EPREFIX}"/etc/security/limits.d
+               -Dwith-pam-renicing=true
+               -Dwith-privileged-group=gamemode
+               -Dwith-systemd-user-unit-dir="$(systemd_get_userunitdir)"
        )
        if multilib_is_native_abi; then
                emesonargs+=(
@@ -91,8 +58,6 @@ multilib_src_configure() {
        else
                emesonargs+=(
                        -Dwith-sd-bus-provider=no-daemon
-                       -Dwith-pam-renicing=false
-                       -Dwith-examples=false
                        -Dwith-util=false
                )
        fi
@@ -102,9 +67,9 @@ multilib_src_configure() {
 
 pkg_postinst() {
        elog
-       elog "GameMode has optional support for adjusting nice and ioprio of 
games"
-       elog "running with it. You may need to adjust your PAM limits to make 
use"
-       elog "of this. You need to be in the gamemode group for this to work."
+       elog "GameMode requires permissions to adjust your PAM limits and 
change system"
+       elog "performance settings (overclocking, scheduling, L2 cache usage, 
mitigations"
+       elog "etc). This permission is granted via the gamemode group."
        elog
        elog "Run the following command as root to add your user:"
        elog "# gpasswd -a USER gamemode  # with USER = your user name"
@@ -113,16 +78,19 @@ pkg_postinst() {
        elog
        elog "# gamemoded -t"
        elog
-       elog "GameMode supports GPU optimizations. It defaults to OFF. Any"
-       elog "damage resulting from usage of this is your own responsibility."
+       elog "GameMode supports GPU optimizations. It defaults to OFF. Any 
damage"
+       elog "resulting from usage of this is your own responsibility.  For 
safety"
+       elog "reasons, GPU settings are not allowed from \$HOME but only from"
+       elog "administrative directories."
        elog
-       elog "systemd user sessions will automatically run the daemon on 
demand,"
-       elog "it does not need to be enabled explicitly. Games not supporting"
-       elog "GameMode natively can still make use of it, just add"
+       elog "systemd user sessions will automatically run the daemon on 
demand, it does"
+       elog "not need to be enabled explicitly. Games not supporting GameMode 
natively"
+       elog "can still make use of it, just add"
        elog
        elog "gamemoderun %command%"
        elog
-       elog "to the start options of any steam game to enable optimizations"
-       elog "automatically as you start the game."
+       elog "to the start options of any Steam game to enable optimizations 
automatically"
+       elog "as you start the game. Similar options exist for other launchers 
like"
+       elog "Bottles or Lutris."
        elog
 }

Reply via email to