diff options
Diffstat (limited to 'pkgs/tools/games')
-rw-r--r-- | pkgs/tools/games/gamemode/default.nix | 50 | ||||
-rw-r--r-- | pkgs/tools/games/gamemode/no-install-systemd-sysusers.patch | 16 | ||||
-rw-r--r-- | pkgs/tools/games/gamemode/preload-nix-workaround.patch | 2 | ||||
-rw-r--r-- | pkgs/tools/games/igir/default.nix | 6 |
4 files changed, 26 insertions, 48 deletions
diff --git a/pkgs/tools/games/gamemode/default.nix b/pkgs/tools/games/gamemode/default.nix index 25acf8cebb1eb..928b9233bccde 100644 --- a/pkgs/tools/games/gamemode/default.nix +++ b/pkgs/tools/games/gamemode/default.nix @@ -1,8 +1,8 @@ { lib , stdenv , fetchFromGitHub -, fetchpatch , libgamemode32 +, makeWrapper , meson , ninja , pkg-config @@ -10,36 +10,28 @@ , inih , systemd , appstream -, makeWrapper , findutils , gawk , procps +, nix-update-script }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "gamemode"; - version = "1.7"; + version = "1.8.1"; src = fetchFromGitHub { owner = "FeralInteractive"; - repo = pname; - rev = version; - sha256 = "sha256-DIFcmWFkoZOklo1keYcCl6n2GJgzWKC8usHFcJmfarU="; + repo = "gamemode"; + rev = "refs/tags/${finalAttrs.version}"; + hash = "sha256-kusb58nGxYA3U9GbZdW3hLjA3NmHc+af0VT4iGRewBw="; }; - outputs = [ "out" "dev" "lib" "man" "static" ]; + outputs = [ "out" "dev" "lib" "man" ]; patches = [ # Add @libraryPath@ template variable to fix loading the PRELOAD library ./preload-nix-workaround.patch - # Do not install systemd sysusers configuration - ./no-install-systemd-sysusers.patch - - # fix build with glibc >=2.36 (declaration of pidfd_open) - (fetchpatch { - url = "https://github.com/FeralInteractive/gamemode/commit/4934191b1928ef695c3e8af21e75781f8591745f.patch"; - sha256 = "sha256-pWf2NGbd3gEJFwVP/EIJRbTD29V7keTQHy388enktsY="; - }) ]; postPatch = '' @@ -66,12 +58,15 @@ stdenv.mkDerivation rec { ]; mesonFlags = [ - # libexec is just a way to package binaries without including them - # in PATH. It doesn't make sense to install them to $lib - # (the default behaviour in the meson hook). - "--libexecdir=${placeholder "out"}/libexec" - + "-Dwith-pam-limits-dir=etc/security/limits.d" "-Dwith-systemd-user-unit-dir=lib/systemd/user" + "-Dwith-systemd-group-dir=lib/sysusers.d" + + # The meson builder installs internal executables to $lib/lib by + # default, but they should be installed to "$out". It's also more + # appropriate to install these executables under a libexec + # directory instead of lib. + "--libexecdir=libexec" ]; doCheck = true; @@ -79,11 +74,6 @@ stdenv.mkDerivation rec { appstream ]; - # Move static libraries to $static so $lib only contains dynamic libraries. - postInstall = '' - moveToOutput lib/*.a "$static" - ''; - postFixup = '' # Add $lib/lib to gamemoded & gamemode-simulate-game's rpath since # they use dlopen to load libgamemode. Can't use makeWrapper since @@ -100,11 +90,15 @@ stdenv.mkDerivation rec { ]} ''; + passthru.updateScript = nix-update-script { }; + meta = with lib; { description = "Optimise Linux system performance on demand"; - homepage = "https://github.com/FeralInteractive/GameMode"; + homepage = "https://github.com/FeralInteractive/gamemode"; + changelog = "https://github.com/FeralInteractive/gamemode/blob/${finalAttrs.version}/CHANGELOG.md"; license = licenses.bsd3; maintainers = with maintainers; [ kira-bruneau ]; platforms = platforms.linux; + mainProgram = "gamemoderun"; # Requires NixOS module to run }; -} +}) diff --git a/pkgs/tools/games/gamemode/no-install-systemd-sysusers.patch b/pkgs/tools/games/gamemode/no-install-systemd-sysusers.patch deleted file mode 100644 index 27aa1d4d710c9..0000000000000 --- a/pkgs/tools/games/gamemode/no-install-systemd-sysusers.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --git i/data/meson.build w/data/meson.build -index 6fb82d8..2e9e170 100644 ---- i/data/meson.build -+++ w/data/meson.build -@@ -21,11 +21,6 @@ if sd_bus_provider == 'systemd' - configuration: data_conf, - install_dir: path_systemd_unit_dir, - ) -- # Install the sysusers.d file -- install_data( -- files('gamemode.conf'), -- install_dir: path_systemd_sysusers_dir, -- ) - endif - - # Install the D-BUS service file diff --git a/pkgs/tools/games/gamemode/preload-nix-workaround.patch b/pkgs/tools/games/gamemode/preload-nix-workaround.patch index 9c8db37f5d91e..06989ff984abd 100644 --- a/pkgs/tools/games/gamemode/preload-nix-workaround.patch +++ b/pkgs/tools/games/gamemode/preload-nix-workaround.patch @@ -6,7 +6,7 @@ index 573b3e4..6f2799e 100755 # ld will find the right path to load the library, including for 32-bit apps. LD_PRELOAD="${GAMEMODEAUTO_NAME}${LD_PRELOAD:+:$LD_PRELOAD}" -+LD_LIBRARY_PATH="@libraryPath@${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH" ++LD_LIBRARY_PATH="@libraryPath@${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" -exec env LD_PRELOAD="${LD_PRELOAD}" $GAMEMODERUNEXEC "$@" +exec env LD_PRELOAD="${LD_PRELOAD}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" $GAMEMODERUNEXEC "$@" diff --git a/pkgs/tools/games/igir/default.nix b/pkgs/tools/games/igir/default.nix index 51b8060d32dcd..6776f894dd70d 100644 --- a/pkgs/tools/games/igir/default.nix +++ b/pkgs/tools/games/igir/default.nix @@ -5,16 +5,16 @@ buildNpmPackage rec { pname = "igir"; - version = "2.0.6"; + version = "2.2.0"; src = fetchFromGitHub { owner = "emmercm"; repo = "igir"; rev = "v${version}"; - hash = "sha256-HIhk60I5VUMHBUp5EQGpE7RZ0KiYwVMl1jEX9zb5ttA="; + hash = "sha256-RHMsLiet3O/4aYLKWtxr1oJDU6sy5kHxr422AUqLzMA="; }; - npmDepsHash = "sha256-P+H6q+jwfJFMb5qtOS3OCVUu9MtZ+Knaog0qyP3FpFo="; + npmDepsHash = "sha256-MvXhSSqHHI3Ofgx+EnKwR5LuHl33h6sjTZ+ErBfjb6s="; # I have no clue why I have to do this postPatch = '' |