# Using clang as the compiler for this package because upstream (FeralInteractive) # designs and tests gamemode primarily with clang, and it provides better # diagnostics for the codebase. %global toolchain clang # debuginfo is disabled because the helper executables (cpucorectl, cpugovctl, # etc.) installed under %%{_libexecdir} are small setuid/setgid programs that # are not useful to debug with debuginfo packages. %global debug_package %{nil} Name: gamemode Version: 1.8.2 Release: 2%{?dist} Summary: Optimize system performance for games on demand License: BSD-3-Clause URL: https://github.com/FeralInteractive/%{name} Source0: %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz BuildRequires: asciidoc BuildRequires: clang BuildRequires: cmake BuildRequires: meson BuildRequires: systemd-rpm-macros BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(inih) >= 49 BuildRequires: pkgconfig(libsystemd) BuildRequires: pkgconfig(polkit-agent-1) BuildRequires: pkgconfig(systemd) Requires: inih%{?_isa} %description GameMode is a daemon/lib combo for Linux that allows games to request a set of optimisations be temporarily applied to the host OS and/or a game process. GameMode was designed primarily as a stop-gap solution to problems with the Intel and AMD CPU powersave or ondemand governors, but is now host to a range of optimisation features and configurations. Currently GameMode includes support for optimisations including: * CPU governor * I/O priority * Process niceness * Kernel scheduler (SCHED_ISO) * Screensaver inhibiting * GPU performance mode (NVIDIA and AMD), GPU overclocking (NVIDIA) * CPU core pinning or parking * Custom scripts. %package devel Summary: Development package for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel Files for development with %{name}. %prep %autosetup %conf %meson %build %meson_build %check %meson_test %install %meson_install %files %license LICENSE.txt %doc README.md %{_bindir}/gamemode-simulate-game %{_bindir}/gamemoded %{_bindir}/gamemodelist %{_bindir}/gamemoderun %config(noreplace) %{_datadir}/%{name}/%{name}.ini %{_datadir}/dbus-1/services/com.feralinteractive.GameMode.service %{_datadir}/polkit-1/actions/com.feralinteractive.GameMode.policy %{_datadir}/polkit-1/rules.d/%{name}.rules %{_prefix}/lib/sysusers.d/%{name}.conf %{_libdir}/libgamemode.so.0 %{_libdir}/libgamemode.so.0.* %{_libdir}/libgamemodeauto.so.0 %{_libdir}/libgamemodeauto.so.0.* %{_libexecdir}/cpucorectl %{_libexecdir}/cpugovctl %{_libexecdir}/gpuclockctl %{_libexecdir}/procsysctl %{_mandir}/man1/gamemode-simulate-game.1* %{_mandir}/man1/gamemodelist.1* %{_mandir}/man1/gamemoderun.1* %{_mandir}/man8/gamemoded.8* %{_metainfodir}/io.github.feralinteractive.gamemode.metainfo.xml %config(noreplace) %{_sysconfdir}/security/limits.d/10-gamemode.conf %{_userunitdir}/gamemoded.service %files devel %{_includedir}/gamemode_client.h %{_libdir}/libgamemode.so %{_libdir}/libgamemodeauto.so %{_libdir}/pkgconfig/gamemode.pc %{_libdir}/pkgconfig/libgamemodeauto.pc %changelog %autochangelog