diff options
Diffstat (limited to 'pkgs/applications/emulators')
-rw-r--r-- | pkgs/applications/emulators/bsnes/ares/002-fix-ruby.diff | 19 | ||||
-rw-r--r-- | pkgs/applications/emulators/bsnes/ares/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/emulators/bsnes/bsnes-hd/default.nix | 10 | ||||
-rw-r--r-- | pkgs/applications/emulators/ccemux/default.nix | 2 | ||||
-rw-r--r-- | pkgs/applications/emulators/cemu/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/emulators/melonDS/default.nix | 58 | ||||
-rw-r--r-- | pkgs/applications/emulators/mgba/default.nix | 47 | ||||
-rw-r--r-- | pkgs/applications/emulators/nuked-md/default.nix | 10 | ||||
-rw-r--r-- | pkgs/applications/emulators/pcsx2/default.nix | 27 | ||||
-rw-r--r-- | pkgs/applications/emulators/pcsx2/define-rev.patch | 12 | ||||
-rw-r--r-- | pkgs/applications/emulators/retroarch/cores.nix | 5 | ||||
-rw-r--r-- | pkgs/applications/emulators/sameboy/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/emulators/stella/default.nix | 45 | ||||
-rw-r--r-- | pkgs/applications/emulators/yuzu/compat-list.nix | 6 | ||||
-rw-r--r-- | pkgs/applications/emulators/yuzu/early-access/sources.nix | 8 | ||||
-rw-r--r-- | pkgs/applications/emulators/yuzu/mainline.nix | 4 |
16 files changed, 146 insertions, 119 deletions
diff --git a/pkgs/applications/emulators/bsnes/ares/002-fix-ruby.diff b/pkgs/applications/emulators/bsnes/ares/002-fix-ruby.diff index 86f548389259c..ff9bda0d04b65 100644 --- a/pkgs/applications/emulators/bsnes/ares/002-fix-ruby.diff +++ b/pkgs/applications/emulators/bsnes/ares/002-fix-ruby.diff @@ -1,11 +1,11 @@ diff -Naur source-old/ruby/GNUmakefile source-new/ruby/GNUmakefile ---- source-old/ruby/GNUmakefile 1969-12-31 21:00:01.000000000 -0300 -+++ source-new/ruby/GNUmakefile 2022-11-13 22:43:09.700197748 -0300 -@@ -11,17 +11,9 @@ - ruby += audio.openal - ruby += input.quartz #input.carbon +--- source-old/ruby/GNUmakefile 2024-01-23 16:12:41.009951705 +0000 ++++ source-new/ruby/GNUmakefile 2024-01-23 16:13:54.619174062 +0000 +@@ -29,20 +29,9 @@ + ruby += input.sdl + endif else ifeq ($(platform),linux) -- pkg_check = $(if $(shell pkg-config $1 && echo 1),$2) +- pkg_check = $(if $(shell $(pkg_config) $1 && echo 1),$2) - ruby += video.glx video.glx2 video.xshm - ruby += $(call pkg_check,xv,video.xvideo) - ruby += audio.oss audio.alsa @@ -15,10 +15,13 @@ diff -Naur source-old/ruby/GNUmakefile source-new/ruby/GNUmakefile - ruby += $(call pkg_check,ao,audio.ao) - ruby += input.xlib - ruby += $(call pkg_check,libudev,input.udev) -- ruby += $(call pkg_check,sdl2,input.sdl) +- ifeq ($(sdl2),true) +- ruby += $(call pkg_check,sdl2,input.sdl) +- ruby += $(call pkg_check,sdl2,audio.sdl) +- endif + ruby += video.glx video.glx2 video.xshm video.xvideo + ruby += audio.oss audio.alsa audio.openal audio.pulseaudio audio.pulseaudiosimple audio.ao + ruby += input.xlib input.udev input.sdl else ifeq ($(platform),bsd) - pkg_check = $(if $(shell pkg-config $1 && echo 1),$2) + pkg_check = $(if $(shell $(pkg_config) $1 && echo 1),$2) ruby += video.glx video.glx2 video.xshm diff --git a/pkgs/applications/emulators/bsnes/ares/default.nix b/pkgs/applications/emulators/bsnes/ares/default.nix index 4f0e97d55f4ab..25d2126ac34c0 100644 --- a/pkgs/applications/emulators/bsnes/ares/default.nix +++ b/pkgs/applications/emulators/bsnes/ares/default.nix @@ -22,13 +22,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "ares"; - version = "133"; + version = "135"; src = fetchFromGitHub { owner = "ares-emulator"; repo = "ares"; rev = "v${finalAttrs.version}"; - hash = "sha256-KCpHiIdid5h5CU2uyMOo+p5h50h3Ki5/4mUpdTAPKQA="; + hash = "sha256-SZhsMKjNxmT2eHsXAZcyMGoMhwWGgvXpDeZGGVn58Sc="; }; patches = [ diff --git a/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix b/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix index b6d158a7a7c83..5ac2100425384 100644 --- a/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix +++ b/pkgs/applications/emulators/bsnes/bsnes-hd/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub +{ lib, stdenv, fetchFromGitHub, fetchpatch , pkg-config , wrapGAppsHook , libX11, libXv @@ -36,6 +36,14 @@ stdenv.mkDerivation { # be set to $out, so this will result in the .app ending up in the # Applications directory in the current nix profile. ./macos-copy-app-to-prefix.patch + + # Fix build against gcc-13: + # https://github.com/DerKoun/bsnes-hd/pull/124 + (fetchpatch { + name = "gcc-13.patch"; + url = "https://github.com/DerKoun/bsnes-hd/commit/587e496f667970d60b6ea29976c171da1681388e.patch"; + hash = "sha256-7KBXh8b4xGTzgV2Pt8B1eFZHOaXcCKXKzqGOf0rFG0c="; + }) ]; nativeBuildInputs = [ pkg-config ] diff --git a/pkgs/applications/emulators/ccemux/default.nix b/pkgs/applications/emulators/ccemux/default.nix index 15fb0f88593f0..9464c1f4575f7 100644 --- a/pkgs/applications/emulators/ccemux/default.nix +++ b/pkgs/applications/emulators/ccemux/default.nix @@ -11,7 +11,7 @@ let if useCCTweaked then fetchurl { url = "${baseUrl}-cct.jar"; - hash = "sha256-B9Zan6wpYnUtaNbUIrXvkchPiEquMs9R2Kiqg85/VdY="; + hash = "sha256-nna5KRp6jVLkbWKOHGtQqaPr3Zl05mVkCf/8X9C5lRY="; } else fetchurl { url = "${baseUrl}-cc.jar"; diff --git a/pkgs/applications/emulators/cemu/default.nix b/pkgs/applications/emulators/cemu/default.nix index 7bc25ab058ab8..c6ae93b980548 100644 --- a/pkgs/applications/emulators/cemu/default.nix +++ b/pkgs/applications/emulators/cemu/default.nix @@ -33,13 +33,13 @@ stdenv.mkDerivation rec { pname = "cemu"; - version = "2.0-61"; + version = "2.0-65"; src = fetchFromGitHub { owner = "cemu-project"; repo = "Cemu"; rev = "v${version}"; - hash = "sha256-oKVVBie3Q3VtsHbh0wJfdlx1YnF424hib8mFRYnbgXY="; + hash = "sha256-jsDmxol3zZMmpo4whDeUXTzfO+QVK/h6lItXTyJyoak="; }; patches = [ diff --git a/pkgs/applications/emulators/melonDS/default.nix b/pkgs/applications/emulators/melonDS/default.nix index 50389db2b45e6..0603373dfedd5 100644 --- a/pkgs/applications/emulators/melonDS/default.nix +++ b/pkgs/applications/emulators/melonDS/default.nix @@ -1,54 +1,72 @@ { lib -, fetchFromGitHub -, stdenv +, SDL2 , cmake , extra-cmake-modules +, fetchFromGitHub , libarchive , libpcap +, libsForQt5 , libslirp +, libGL , pkg-config -, qtbase -, qtmultimedia -, SDL2 +, stdenv , wayland -, wrapQtAppsHook +, zstd }: -stdenv.mkDerivation rec { +let + inherit (libsForQt5) + qtbase + qtmultimedia + wrapQtAppsHook; +in +stdenv.mkDerivation (finalAttrs: { pname = "melonDS"; - version = "0.9.5"; + version = "0.9.5-unstable-2024-01-17"; src = fetchFromGitHub { - owner = "Arisotura"; - repo = pname; - rev = version; - sha256 = "sha256-n4Vkxb/7fr214PgB6VFNgH1tMDgTBS/UHUQ6V4uGkDA="; + owner = "melonDS-emu"; + repo = "melonDS"; + rev = "7897bd387bfd37615a049eba28d02dc23cfa5194"; + hash = "sha256-7BrUa8QJnudJkiCtuBdfar+FeeJSrdMGJdhXrPP6uww="; }; nativeBuildInputs = [ cmake - extra-cmake-modules pkg-config wrapQtAppsHook ]; buildInputs = [ + SDL2 + extra-cmake-modules libarchive libslirp + libGL qtbase qtmultimedia - SDL2 wayland + zstd ]; - qtWrapperArgs = [ "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libpcap ]}" ]; + strictDeps = true; + + qtWrapperArgs = [ + "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ libpcap ]}" + ]; - meta = with lib; { + meta = { homepage = "https://melonds.kuribo64.net/"; description = "Work in progress Nintendo DS emulator"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ artemist benley shamilton xfix ]; - platforms = platforms.linux; + license = with lib.licenses; [ gpl3Plus ]; mainProgram = "melonDS"; + maintainers = with lib.maintainers; [ + AndersonTorres + artemist + benley + shamilton + xfix + ]; + platforms = lib.platforms.linux; }; -} +}) diff --git a/pkgs/applications/emulators/mgba/default.nix b/pkgs/applications/emulators/mgba/default.nix index a52ee7ca30ce5..4e0e8687b61e2 100644 --- a/pkgs/applications/emulators/mgba/default.nix +++ b/pkgs/applications/emulators/mgba/default.nix @@ -1,22 +1,23 @@ { lib -, stdenv -, fetchFromGitHub , SDL2 , cmake +, fetchFromGitHub , ffmpeg +, discord-rpc , libedit , libelf , libepoxy +, libsForQt5 , libzip -, lua5_4 +, lua , minizip , pkg-config -, libsForQt5 +, stdenv , wrapGAppsHook +, enableDiscordRpc ? false }: let - lua = lua5_4; inherit (libsForQt5) qtbase qtmultimedia @@ -25,27 +26,25 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "mgba"; - version = "0.10.2"; + version = "0.10.3"; src = fetchFromGitHub { owner = "mgba-emu"; repo = "mgba"; rev = finalAttrs.version; - hash = "sha256-+AwIYhnqp984Banwb7zmB5yzenExfLLU1oGJSxeTl/M="; + hash = "sha256-wSt3kyjRxKBnDOVY10jq4cpv7uIaBUIcsZr6aU7XnMA="; }; + outputs = [ "out" "dev" "doc" "lib" "man" ]; + nativeBuildInputs = [ + SDL2 cmake pkg-config wrapGAppsHook wrapQtAppsHook ]; - dontWrapGApps = true; - preFixup = '' - qtWrapperArgs+=("''${gappsWrapperArgs[@]}") - ''; - buildInputs = [ SDL2 ffmpeg @@ -58,9 +57,22 @@ stdenv.mkDerivation (finalAttrs: { qtbase qtmultimedia qttools + ] + ++ lib.optionals enableDiscordRpc [ discord-rpc ]; + + cmakeFlags = [ + (lib.cmakeBool "USE_DISCORD_RPC" enableDiscordRpc) ]; - meta = with lib; { + strictDeps = true; + + dontWrapGApps = true; + + preFixup = '' + qtWrapperArgs+=("''${gappsWrapperArgs[@]}") + ''; + + meta = { homepage = "https://mgba.io"; description = "A modern GBA emulator with a focus on accuracy"; longDescription = '' @@ -77,10 +89,11 @@ stdenv.mkDerivation (finalAttrs: { runners, and a modern feature set for emulators that older emulators may not support. ''; - changelog = "https://github.com/mgba-emu/mgba/blob/${finalAttrs.version}/CHANGES"; - license = licenses.mpl20; - maintainers = with maintainers; [ MP2E AndersonTorres ]; - platforms = platforms.linux; + changelog = "https://raw.githubusercontent.com/mgba-emu/mgba/${finalAttrs.src.rev}/CHANGES"; + license = with lib.licenses; [ mpl20 ]; mainProgram = "mgba"; + maintainers = with lib.maintainers; [ MP2E AndersonTorres ]; + platforms = lib.platforms.linux; + broken = enableDiscordRpc; # Some obscure `ld` error }; }) diff --git a/pkgs/applications/emulators/nuked-md/default.nix b/pkgs/applications/emulators/nuked-md/default.nix index 883d62b89832d..3f42ce6d2d077 100644 --- a/pkgs/applications/emulators/nuked-md/default.nix +++ b/pkgs/applications/emulators/nuked-md/default.nix @@ -1,6 +1,7 @@ { stdenv , lib , fetchFromGitHub +, fetchpatch , gitUpdater , cmake , SDL2 @@ -17,6 +18,15 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-Pe+TSu9FBUhxtACq+6jMbrUxiwKLOJgQbEcmUrcrjMs="; }; + patches = [ + # Remove when version > 1.2 + (fetchpatch { + name = "0001-nuked-md-Fix-missing-string-h-include.patch"; + url = "https://github.com/nukeykt/Nuked-MD/commit/b875cd79104217af581131b22f4111409273617a.patch"; + hash = "sha256-Mx3jmrlBbxdz3ZBr4XhmBk1S04xB0uaxzPXpXSlipV4="; + }) + ]; + # Interesting detail about our SDL2 packaging: # Because we build it with the configure script instead of CMake, we ship sdl2-config.cmake instead of SDL2Config.cmake # The former doesn't set SDL2_FOUND while the latter does (like CMake config scripts should), which causes this issue: diff --git a/pkgs/applications/emulators/pcsx2/default.nix b/pkgs/applications/emulators/pcsx2/default.nix index 36bcae4196549..6f7d0a6a7d6a7 100644 --- a/pkgs/applications/emulators/pcsx2/default.nix +++ b/pkgs/applications/emulators/pcsx2/default.nix @@ -6,14 +6,13 @@ , curl , extra-cmake-modules , ffmpeg -, gettext -, harfbuzz , libaio , libbacktrace , libpcap -, libsamplerate +, libwebp , libXrandr , libzip +, lz4 , makeWrapper , pkg-config , qtbase @@ -29,6 +28,7 @@ , wrapQtAppsHook , xz , zip +, zstd }: let @@ -36,26 +36,30 @@ let pcsx2_patches = fetchFromGitHub { owner = "PCSX2"; repo = "pcsx2_patches"; - rev = "42d7ee72b66955e3bbd2caaeaa855f605b463722"; - sha256 = "sha256-Zd+Aeps2IWVX2fS1Vyczv/wAX8Z89XnCH1eqSPdYEw8="; + rev = "619e75bb8db50325b44863f2ccf3c39470c3d5a3"; + sha256 = "sha256-2KE0W3WwBJCLe8DosyDVsFtEofKgBsChpQEQe+3O+Hg="; }; in llvmPackages_17.stdenv.mkDerivation rec { pname = "pcsx2"; - version = "1.7.5318"; + version = "1.7.5474"; src = fetchFromGitHub { owner = "PCSX2"; repo = "pcsx2"; fetchSubmodules = true; rev = "v${version}"; - sha256 = "sha256-5SUlq3HQAzROG1yncA4u4XGVv+1I+s9FQ6LgJkiLSD0="; + sha256 = "sha256-5ZCXw6PEQ6Ed6kEP27m9O0U79uVGEFR/vwee6/dZBD8="; }; + patches = [ + ./define-rev.patch + ]; + cmakeFlags = [ "-DDISABLE_ADVANCE_SIMD=ON" "-DUSE_LINKED_FFMPEG=ON" - "-DDISABLE_BUILD_DATE=ON" + "-DPCSX2_GIT_REV=v${version}" ]; nativeBuildInputs = [ @@ -70,14 +74,13 @@ llvmPackages_17.stdenv.mkDerivation rec { buildInputs = [ curl ffmpeg - gettext - harfbuzz libaio libbacktrace libpcap - libsamplerate + libwebp libXrandr libzip + lz4 qtbase qtsvg qttools @@ -85,9 +88,9 @@ llvmPackages_17.stdenv.mkDerivation rec { SDL2 soundtouch vulkan-headers - vulkan-loader wayland xz + zstd ] ++ cubeb.passthru.backendLibs; diff --git a/pkgs/applications/emulators/pcsx2/define-rev.patch b/pkgs/applications/emulators/pcsx2/define-rev.patch new file mode 100644 index 0000000000000..1f970b1a073be --- /dev/null +++ b/pkgs/applications/emulators/pcsx2/define-rev.patch @@ -0,0 +1,12 @@ +diff --git a/cmake/Pcsx2Utils.cmake b/cmake/Pcsx2Utils.cmake +index 87f012c..052f1be 100644 +--- a/cmake/Pcsx2Utils.cmake ++++ b/cmake/Pcsx2Utils.cmake +@@ -44,7 +44,6 @@ function(detect_compiler) + endfunction() + + function(get_git_version_info) +- set(PCSX2_GIT_REV "") + set(PCSX2_GIT_TAG "") + set(PCSX2_GIT_HASH "") + if (GIT_FOUND AND EXISTS ${PROJECT_SOURCE_DIR}/.git) diff --git a/pkgs/applications/emulators/retroarch/cores.nix b/pkgs/applications/emulators/retroarch/cores.nix index 185187a9e3b06..c9f97b61e6803 100644 --- a/pkgs/applications/emulators/retroarch/cores.nix +++ b/pkgs/applications/emulators/retroarch/cores.nix @@ -653,6 +653,11 @@ in "LLE=1" "WITH_DYNAREC=${stdenv.hostPlatform.parsed.cpu.name}" ]; + # This CXXFLAGS hack works around the GCC 13 error: + # 'uint32_t' was not declared in this scope + # It can be removed if the issue filed upstream is resolved: + # https://github.com/libretro/mupen64plus-libretro-nx/issues/515 + env.CXXFLAGS = "-include cstdint"; meta = { description = "Libretro port of Mupen64 Plus, GL only"; license = lib.licenses.gpl3Only; diff --git a/pkgs/applications/emulators/sameboy/default.nix b/pkgs/applications/emulators/sameboy/default.nix index 9d0eb1570287f..94c9b95628647 100644 --- a/pkgs/applications/emulators/sameboy/default.nix +++ b/pkgs/applications/emulators/sameboy/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "sameboy"; - version = "0.16"; + version = "0.16.2"; src = fetchFromGitHub { owner = "LIJI32"; repo = "SameBoy"; rev = "v${version}"; - sha256 = "sha256-sQVTCHOSc2N+Qs/rl0DfsUzg7P5Egws2UuNBQ9fpkoQ="; + sha256 = "sha256-KEbwug/cwGLS/uhY1rKasLJWaKtiYYzdZvbAU2orfbI="; }; enableParallelBuilding = true; diff --git a/pkgs/applications/emulators/stella/default.nix b/pkgs/applications/emulators/stella/default.nix deleted file mode 100644 index 593845cca61ca..0000000000000 --- a/pkgs/applications/emulators/stella/default.nix +++ /dev/null @@ -1,45 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, pkg-config -, SDL2 -}: - -stdenv.mkDerivation rec { - pname = "stella"; - version = "6.7"; - - src = fetchFromGitHub { - owner = "stella-emu"; - repo = pname; - rev = version; - hash = "sha256-E8vbBbsVMOSY3iSSE+UCwBwmfHU7Efmre1cYlexVZ+E="; - }; - - nativeBuildInputs = [ - pkg-config - ]; - - buildInputs = [ - SDL2 - ]; - - meta = with lib;{ - homepage = "https://stella-emu.github.io/"; - description = "An open-source Atari 2600 VCS emulator"; - longDescription = '' - Stella is a multi-platform Atari 2600 VCS emulator released under the GNU - General Public License (GPL). Stella was originally developed for Linux by - Bradford W. Mott, and is currently maintained by Stephen Anthony. Since - its original release several people have joined the development team to - port Stella to other operating systems such as AcornOS, AmigaOS, DOS, - FreeBSD, IRIX, Linux, OS/2, MacOS, Unix, and Windows. The development team - is working hard to perfect the emulator and we hope you enjoy our effort. - - As of its 3.5 release, Stella is officially donationware. - ''; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ AndersonTorres ]; - platforms = platforms.unix; - }; -} diff --git a/pkgs/applications/emulators/yuzu/compat-list.nix b/pkgs/applications/emulators/yuzu/compat-list.nix index 4b8d531163909..d549a17a90647 100644 --- a/pkgs/applications/emulators/yuzu/compat-list.nix +++ b/pkgs/applications/emulators/yuzu/compat-list.nix @@ -1,13 +1,13 @@ { stdenv, fetchFromGitHub, unstableGitUpdater }: stdenv.mkDerivation { pname = "yuzu-compatibility-list"; - version = "unstable-2024-01-08"; + version = "unstable-2024-01-21"; src = fetchFromGitHub { owner = "flathub"; repo = "org.yuzu_emu.yuzu"; - rev = "0f5500f50e2a5ac7e40e6f5f8aeb160d46348828"; - hash = "sha256-0JHl7myoa3MlfucmbKB5tubJ6sQ2IlTIL3i2yveOvaU="; + rev = "a3dd360e8b6e8c0c93d40f00416534c8b4bcd59a"; + hash = "sha256-nXh5cJTS1zCa6GoH+AoisTIohsRruycqosxpmFAsaSw="; }; buildCommand = '' diff --git a/pkgs/applications/emulators/yuzu/early-access/sources.nix b/pkgs/applications/emulators/yuzu/early-access/sources.nix index ec513e7b5e2c1..94f20f5e948cf 100644 --- a/pkgs/applications/emulators/yuzu/early-access/sources.nix +++ b/pkgs/applications/emulators/yuzu/early-access/sources.nix @@ -1,7 +1,7 @@ # Generated by ./update.sh - do not update manually! -# Last updated: 2024-01-10 +# Last updated: 2024-01-22 { - version = "4056"; - distHash = "sha256:14qd5v238pka9axrxjbaawr0kpkkbd95mzri6jdjxjyzbkk03hmb"; - fullHash = "sha256:0fb4i6708q59ql9ffrw2myanqgxpy20z971y6l7yvxm1pqw9qhyx"; + version = "4079"; + distHash = "sha256:12cwzgdnpla9m24cla1596p773zpdgmi0zlyvdypmdx0qzwgwkpp"; + fullHash = "sha256:1zp2nz9blsim2xmwb3pah38nrdysa3yrlqgb051n8b8qp6fp5979"; } diff --git a/pkgs/applications/emulators/yuzu/mainline.nix b/pkgs/applications/emulators/yuzu/mainline.nix index e845603f4cc24..3daed1c7c8c0a 100644 --- a/pkgs/applications/emulators/yuzu/mainline.nix +++ b/pkgs/applications/emulators/yuzu/mainline.nix @@ -47,13 +47,13 @@ }: stdenv.mkDerivation(finalAttrs: { pname = "yuzu"; - version = "1676"; + version = "1689"; src = fetchFromGitHub { owner = "yuzu-emu"; repo = "yuzu-mainline"; rev = "mainline-0-${finalAttrs.version}"; - hash = "sha256-vRrliVuGXI/Dpmdkbj+P5hshzPzB6nijrXQfLXHaGqk="; + hash = "sha256-5ITGFWS0OJLXyNoAleZrJob2jz1He1LEOvQzjIlMmPQ="; fetchSubmodules = true; }; |