git.iko.soy/typeable/nixpkgs
on master help sign in
Merge pull request #129492 from IvarWithoutBones/bump/switch-emu
commit81f368aad8117fae6cf76d9ba4795487a4320660 authorSandro <sandro.jaeckel@gmail.com> dateFri 9 Jul 2021, 02:59 (5 years ago) parentc45bbacb017750
4 files changed+34−29
pkgs/misc/emulators/ryujinx/default.nix+10−5 pkgs/misc/emulators/ryujinx/deps.nix+10−5 pkgs/misc/emulators/yuzu/base.nix+10−15 pkgs/misc/emulators/yuzu/default.nix+4−4
pkgs/misc/emulators/ryujinx/default.nix+10−5
@@ -1,7 +1,7 @@
11{ lib, stdenv, fetchFromGitHub, fetchurl, makeWrapper, makeDesktopItem, linkFarmFromDrvs
22, dotnet-sdk_5, dotnetPackages, dotnetCorePackages, cacert
33, libX11, libgdiplus, ffmpeg
4−, SDL2_mixer, openal, libsoundio, sndio
4+, SDL2_mixer, openal, libsoundio, sndio, pulseaudio
55, gtk3, gobject-introspection, gdk-pixbuf, wrapGAppsHook
66}:
77
@@ -15,16 +15,17 @@ let
1515 openal
1616 libsoundio
1717 sndio
18+ pulseaudio
1819 ];
1920in stdenv.mkDerivation rec {
2021 pname = "ryujinx";
21− version = "1.0.6893"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
22+ version = "1.0.6954"; # Versioning is based off of the official appveyor builds: https://ci.appveyor.com/project/gdkchan/ryujinx
2223
2324 src = fetchFromGitHub {
2425 owner = "Ryujinx";
2526 repo = "Ryujinx";
26− rev = "fb65f392d1c4b0e01f22b6ddebcc8317ba9769c3";
27− sha256 = "0ncrcbwyirz21j81vc6yvcjc2fn8nc5ilrfczclq6f8cpy09c3y8";
27+ rev = "31cbd09a75a9d5f4814c3907a060e0961eb2bb15";
28+ sha256 = "00qql0wmlzs722s0igip3v0yjlqhc31jcr7nghwibcqrmx031azk";
2829 };
2930
3031 nativeBuildInputs = [ dotnet-sdk_5 dotnetPackages.Nuget cacert makeWrapper wrapGAppsHook gobject-introspection gdk-pixbuf ];
@@ -79,9 +80,13 @@ in stdenv.mkDerivation rec {
7980 --output $out/lib/ryujinx
8081 shopt -s extglob
8182
83+ # TODO: fix this hack https://github.com/Ryujinx/Ryujinx/issues/2349
84+ mkdir -p $out/lib/sndio-6
85+ ln -s ${sndio}/lib/libsndio.so $out/lib/sndio-6/libsndio.so.6
86+
8287 makeWrapper $out/lib/ryujinx/Ryujinx $out/bin/Ryujinx \
8388 --set DOTNET_ROOT "${dotnetCorePackages.net_5_0}" \
84− --suffix LD_LIBRARY_PATH : "${lib.makeLibraryPath runtimeDeps}" \
89+ --suffix LD_LIBRARY_PATH : "${builtins.concatStringsSep ":" [ (lib.makeLibraryPath runtimeDeps) "$out/lib/sndio-6" ]}" \
8590 ''${gappsWrapperArgs[@]}
8691
8792 for i in 16 32 48 64 96 128 256 512 1024; do
pkgs/misc/emulators/ryujinx/deps.nix+10−5
@@ -9,6 +9,11 @@
99 version = "3.22.25.128";
1010 sha256 = "1rjdxd4fq5z3n51qx8vrcaf4i277ccc62jxk88xzbsxapdmjjdf9";
1111 })
12+ (fetchNuGet {
13+ name = "CommandLineParser";
14+ version = "2.8.0";
15+ sha256 = "1m32xyilv2b7k55jy8ddg08c20glbcj2yi545kxs9hj2ahanhrbb";
16+ })
1217 (fetchNuGet {
1318 name = "Concentus";
1419 version = "1.1.7";
@@ -259,11 +264,6 @@
259264 version = "3.22.25.128";
260265 sha256 = "0dkl9j0yd65s5ds9xj5z6yb7yca7wlycqz25m8dng20d13sqr1zp";
261266 })
262− (fetchNuGet {
263− name = "ppy.SDL2-CS";
264− version = "1.0.225-alpha";
265− sha256 = "1x8hvk9kikwi7wrvwxdxk3pkbs491iss2mvqgiw844zld5izihqc";
266− })
267267 (fetchNuGet {
268268 name = "runtime.any.System.Collections";
269269 version = "4.3.0";
@@ -514,6 +514,11 @@
514514 version = "4.4.0-build7";
515515 sha256 = "0g1l3lgs0ffxp64ka81v6q1cgsdirl1qlf73255v29r3v337074m";
516516 })
517+ (fetchNuGet {
518+ name = "Ryujinx.SDL2-CS";
519+ version = "2.0.15-build11";
520+ sha256 = "0s4h69l2b508l5wxp4v4ip8k83k78p3963xxv8bfamin9517przi";
521+ })
517522 (fetchNuGet {
518523 name = "SharpZipLib";
519524 version = "1.3.0";
pkgs/misc/emulators/yuzu/base.nix+10−15
@@ -1,5 +1,5 @@
11{ pname, version, src, branchName
2−, stdenv, lib, fetchFromGitHub, fetchpatch, wrapQtAppsHook
2+, stdenv, lib, wrapQtAppsHook
33, cmake, pkg-config
44, libpulseaudio, libjack2, alsa-lib, sndio
55, vulkan-loader, vulkan-headers
@@ -9,7 +9,7 @@
99, glslang
1010, boost173
1111, catch2
12−, fmt
12+, fmt_8
1313, SDL2
1414, udev
1515, libusb1
@@ -29,20 +29,13 @@ stdenv.mkDerivation rec {
2929 glslang
3030 boost173
3131 catch2
32− fmt
32+ fmt_8
3333 SDL2
3434 udev
3535 libusb1
3636 ffmpeg
3737 ];
3838
39− patches = [
40− (fetchpatch { # Without this, yuzu tries to read version info from .git which is not present.
41− url = "https://raw.githubusercontent.com/pineappleEA/Pineapple-Linux/28cbf656e3188b80eda0031d0b2713708ecd630f/inject-git-info.patch";
42− sha256 = "1zxh5fwdr7jl0aagb3yfwd0995vyyk54f0f748f7c4rqvg6867fd";
43− })
44− ];
45−
4639 cmakeFlags = [
4740 "-DYUZU_USE_BUNDLED_QT=OFF"
4841 "-DYUZU_USE_BUNDLED_SDL2=OFF"
@@ -50,19 +43,20 @@ stdenv.mkDerivation rec {
5043 "-DENABLE_QT_TRANSLATION=ON"
5144 "-DYUZU_USE_QT_WEB_ENGINE=ON"
5245 "-DUSE_DISCORD_PRESENCE=ON"
53− # Shows errors about not being able to find .git at runtime if you do not set these
54− "-DGIT_BRANCH=\"\""
55− "-DGIT_DESC=\"\""
5646 ];
5747
48+ # This changes `ir/opt` to `ir/var/empty` in `externals/dynarmic/src/dynarmic/CMakeLists.txt`
49+ # making the build fail, as that path does not exist
50+ dontFixCmake = true;
51+
5852 preConfigure = ''
5953 # Trick the configure system. This prevents a check for submodule directories.
6054 rm -f .gitmodules
6155
6256 # see https://github.com/NixOS/nixpkgs/issues/114044, setting this through cmakeFlags does not work.
6357 cmakeFlagsArray+=(
64− "-DTITLE_BAR_FORMAT_IDLE=\"yuzu ${branchName} ${version}\""
65− "-DTITLE_BAR_FORMAT_RUNNING=\"yuzu ${branchName} ${version} \| \{3\}\""
58+ "-DTITLE_BAR_FORMAT_IDLE=yuzu ${branchName} ${version}"
59+ "-DTITLE_BAR_FORMAT_RUNNING=yuzu ${branchName} ${version} | {3}"
6660 )
6761 '';
6862
@@ -87,5 +81,6 @@ stdenv.mkDerivation rec {
8781 ];
8882 maintainers = with maintainers; [ ivar joshuafern ];
8983 platforms = platforms.linux;
84+ broken = stdenv.isAarch64; # Currently aarch64 is not supported.
9085 };
9186}
pkgs/misc/emulators/yuzu/default.nix+4−4
@@ -4,25 +4,25 @@ let
44in {
55 mainline = libsForQt5.callPackage ./base.nix rec {
66 pname = "yuzu-mainline";
7− version = "633";
7+ version = "679";
88 branchName = branch;
99 src = fetchFromGitHub {
1010 owner = "yuzu-emu";
1111 repo = "yuzu-mainline";
1212 rev = "mainline-0-${version}";
13− sha256 = "1zq20dd6x3kk179ls7y3mc5rj9vr73qs12bdj52bl3kscphxybf1";
13+ sha256 = "1wkxkgfff5nn30mn2pqcrlsr7fja6bgaallsx1ainlcbamfyspcz";
1414 fetchSubmodules = true;
1515 };
1616 };
1717 early-access = libsForQt5.callPackage ./base.nix rec {
1818 pname = "yuzu-ea";
19− version = "1704";
19+ version = "1855";
2020 branchName = branch;
2121 src = fetchFromGitHub {
2222 owner = "pineappleEA";
2323 repo = "pineapple-src";
2424 rev = "EA-${version}";
25− sha256 = "07pcldcmn8ammzbnxki6by7hgacr6z0548dvhv2p5lp9qcf3xz22";
25+ sha256 = "0civ63zi23cym3kii4v3aiqrsg2zzj0w6sp6sa14ixysagqxsd4a";
2626 };
2727 };
2828}.${branch}