git.iko.soy/typeable/nixpkgs
on master help sign in
Merge pull request #84117 from IvarWithoutBones/yuzu

yuzu: init at 482

commit8a801d431937891960421cfef4cf864302bbb58e authorAaron Andersen <aaron@fosslib.net> dateFri 25 Dec 2020, 22:52 (6 years ago) parentb428ceec36ab0c
2 files changed+51
pkgs/misc/emulators/yuzu/default.nix+47 pkgs/top-level/all-packages.nix+4
pkgs/misc/emulators/yuzu/default.nixnew file+47
@@ -0,0 +1,47 @@
1+{ stdenv, fetchFromGitHub
2+, cmake, pkgconfig, wrapQtAppsHook
3+, boost173, catch2, fmt, lz4, nlohmann_json, rapidjson, zlib, zstd, SDL2
4+, udev, libusb1, libzip, qtbase, qtwebengine, qttools, ffmpeg
5+, libpulseaudio, libjack2, alsaLib, sndio, ecasound
6+, useVulkan ? true, vulkan-loader, vulkan-headers
7+}:
8+
9+stdenv.mkDerivation rec {
10+ pname = "yuzu";
11+ version = "482";
12+
13+ src = fetchFromGitHub {
14+ owner = "yuzu-emu";
15+ repo = "yuzu-mainline"; # They use a separate repo for mainline “branch”
16+ rev = "mainline-0-${version}";
17+ sha256 = "1bhkdbhj1dv33qv0np26gzsw65p4z88whjmd6bc7mh2b5lvrjwxm";
18+ fetchSubmodules = true;
19+ };
20+
21+ nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
22+ buildInputs = [ qtbase qtwebengine qttools boost173 catch2 fmt lz4 nlohmann_json rapidjson zlib zstd SDL2 udev libusb1 libpulseaudio alsaLib sndio ecasound libjack2 libzip ffmpeg ]
23+ ++ stdenv.lib.optionals useVulkan [ vulkan-loader vulkan-headers ];
24+ cmakeFlags = [ "-DENABLE_QT_TRANSLATION=ON" "-DYUZU_USE_QT_WEB_ENGINE=ON" "-DUSE_DISCORD_PRESENCE=ON" ]
25+ ++ stdenv.lib.optionals (!useVulkan) [ "-DENABLE_VULKAN=No" ];
26+
27+ # Trick the configure system. This prevents a check for submodule directories.
28+ preConfigure = "rm .gitmodules";
29+
30+ # Fix vulkan detection
31+ postFixup = stdenv.lib.optionals useVulkan ''
32+ wrapProgram $out/bin/yuzu --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib
33+ wrapProgram $out/bin/yuzu-cmd --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib
34+ '';
35+
36+ meta = with stdenv.lib; {
37+ homepage = "https://yuzu-emu.org";
38+ description = "An experimental Nintendo Switch emulator written in C++";
39+ license = with licenses; [
40+ gpl2Plus
41+ # Icons
42+ cc-by-nd-30 cc0
43+ ];
44+ maintainers = with maintainers; [ ivar joshuafern ];
45+ platforms = platforms.linux;
46+ };
47+}
pkgs/top-level/all-packages.nix+4
@@ -28675,6 +28675,10 @@ in
2867528675
2867628676 yaxg = callPackage ../tools/graphics/yaxg {};
2867728677
28678+ yuzu = libsForQt5.callPackage ../misc/emulators/yuzu {
28679+ stdenv = gcc10Stdenv;
28680+ };
28681+
2867828682 zap = callPackage ../tools/networking/zap { };
2867928683
2868028684 zigbee2mqtt = callPackage ../servers/zigbee2mqtt { };