summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-util')
-rw-r--r--games-util/gamemode/gamemode-9999.ebuild70
1 files 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
}