diff options
Diffstat (limited to 'pkgs/misc/emulators')
-rw-r--r-- | pkgs/misc/emulators/blastem/default.nix | 2 | ||||
-rw-r--r-- | pkgs/misc/emulators/citra/default.nix | 8 | ||||
-rw-r--r-- | pkgs/misc/emulators/desmume/default.nix | 4 | ||||
-rw-r--r-- | pkgs/misc/emulators/dlx/default.nix | 2 | ||||
-rw-r--r-- | pkgs/misc/emulators/emulationstation/default.nix | 17 | ||||
-rw-r--r-- | pkgs/misc/emulators/hatari/default.nix | 2 | ||||
-rw-r--r-- | pkgs/misc/emulators/mame/default.nix | 42 | ||||
-rw-r--r-- | pkgs/misc/emulators/mame/emuopts.patch | 29 | ||||
-rw-r--r-- | pkgs/misc/emulators/mupen64plus/default.nix | 16 | ||||
-rw-r--r-- | pkgs/misc/emulators/pcsx2/default.nix | 78 | ||||
-rw-r--r-- | pkgs/misc/emulators/ppsspp/default.nix | 66 | ||||
-rw-r--r-- | pkgs/misc/emulators/retroarch/cores.nix | 2 | ||||
-rw-r--r-- | pkgs/misc/emulators/retroarch/default.nix | 4 | ||||
-rw-r--r-- | pkgs/misc/emulators/wine/base.nix | 4 |
14 files changed, 180 insertions, 96 deletions
diff --git a/pkgs/misc/emulators/blastem/default.nix b/pkgs/misc/emulators/blastem/default.nix index 39a7e38e034..0d4c7ab7216 100644 --- a/pkgs/misc/emulators/blastem/default.nix +++ b/pkgs/misc/emulators/blastem/default.nix @@ -11,7 +11,7 @@ let rev = "244f8bbbdf64ae603f9f6c09a3067943837459ec"; sha256 = "0x4y5q7ygxfjfy2wxijkps9khsjjfb169sbda410vaw0m88wqj5p"; }; - makeFlags = "CPU=m68k SYNTAX=mot"; + makeFlags = [ "CPU=m68k" "SYNTAX=mot" ]; installPhase = '' mkdir -p $out/bin cp vasmm68k_mot $out/bin diff --git a/pkgs/misc/emulators/citra/default.nix b/pkgs/misc/emulators/citra/default.nix index d8717b46eef..ca6ad37b5aa 100644 --- a/pkgs/misc/emulators/citra/default.nix +++ b/pkgs/misc/emulators/citra/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchgit, cmake, SDL2, qtbase, qtmultimedia, boost }: -stdenv.mkDerivation { +stdenv.mkDerivation { pname = "citra"; - version = "2019-05-25"; + version = "2019-10-05"; # Submodules src = fetchgit { url = "https://github.com/citra-emu/citra"; - rev = "186ffc235f744dad315a603a98cce4597ef0f65f"; - sha256 = "0w24an80yjmkfcxjzdvsbpahx46bmd90liq5m6qva5pgnpmxx7pn"; + rev = "35690e3ac7a340d941d3bf56080cf5aa6187c5c3"; + sha256 = "11a4mdjabn3qrh0nn4pjl5fxs9nhf1k27wd486csfx88q2q9jvq8"; }; enableParallelBuilding = true; diff --git a/pkgs/misc/emulators/desmume/default.nix b/pkgs/misc/emulators/desmume/default.nix index 67fb3b4d24b..d5d63cc2694 100644 --- a/pkgs/misc/emulators/desmume/default.nix +++ b/pkgs/misc/emulators/desmume/default.nix @@ -5,7 +5,7 @@ , tinyxml , agg, alsaLib, soundtouch, openal , desktop-file-utils -, gtk2, gtkglext, libglade, pangox_compat +, gtk2, gtkglext, libglade , libGLU, libpcap, SDL, zziplib }: with stdenv.lib; @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig libtool intltool libXmu lua agg alsaLib soundtouch - openal desktop-file-utils gtk2 gtkglext libglade pangox_compat + openal desktop-file-utils gtk2 gtkglext libglade libGLU libpcap SDL zziplib tinyxml ]; configureFlags = [ diff --git a/pkgs/misc/emulators/dlx/default.nix b/pkgs/misc/emulators/dlx/default.nix index 358cc59d3db..ad111a61514 100644 --- a/pkgs/misc/emulators/dlx/default.nix +++ b/pkgs/misc/emulators/dlx/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation { buildInputs = [ unzip ]; - makeFlags = "LINK=gcc CFLAGS=-O2"; + makeFlags = [ "LINK=gcc" "CFLAGS=-O2" ]; hardeningDisable = [ "format" ]; diff --git a/pkgs/misc/emulators/emulationstation/default.nix b/pkgs/misc/emulators/emulationstation/default.nix index 668d1804544..722f6b25429 100644 --- a/pkgs/misc/emulators/emulationstation/default.nix +++ b/pkgs/misc/emulators/emulationstation/default.nix @@ -1,5 +1,6 @@ { stdenv, fetchFromGitHub, pkgconfig, cmake, curl, boost, eigen -, freeimage, freetype, libGLU, libGL, SDL2, alsaLib, libarchive }: +, freeimage, freetype, libGLU, libGL, SDL2, alsaLib, libarchive +, fetchpatch }: stdenv.mkDerivation { pname = "emulationstation"; @@ -12,14 +13,22 @@ stdenv.mkDerivation { sha256 = "0cm0sq2wri2l9cvab1l0g02za59q7klj0h3p028vr96n6njj4w9v"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ cmake alsaLib boost curl eigen freeimage freetype libarchive libGLU libGL SDL2 ]; + patches = [ + (fetchpatch { + url = "https://github.com/Aloshi/EmulationStation/commit/49ccd8fc7a7b1dfd974fc57eb13317c42842f22c.patch"; + sha256 = "1v5d81l7bav0k5z4vybrc3rjcysph6lkm5pcfr6m42wlz7jmjw0p"; + }) + ]; + + nativeBuildInputs = [ pkgconfig cmake ]; + buildInputs = [ alsaLib boost curl eigen freeimage freetype libarchive libGLU libGL SDL2 ]; - buildPhase = "cmake . && make"; installPhase = '' install -D ../emulationstation $out/bin/emulationstation ''; + enableParallelBuilding = true; + meta = { description = "A flexible emulator front-end supporting keyboardless navigation and custom system themes"; homepage = https://emulationstation.org; diff --git a/pkgs/misc/emulators/hatari/default.nix b/pkgs/misc/emulators/hatari/default.nix index 74e35379137..278d8d8dc5f 100644 --- a/pkgs/misc/emulators/hatari/default.nix +++ b/pkgs/misc/emulators/hatari/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation rec { }; # For pthread_cancel - cmakeFlags = "-DCMAKE_EXE_LINKER_FLAGS=-lgcc_s"; + cmakeFlags = [ "-DCMAKE_EXE_LINKER_FLAGS=-lgcc_s" ]; buildInputs = [ zlib SDL cmake ]; diff --git a/pkgs/misc/emulators/mame/default.nix b/pkgs/misc/emulators/mame/default.nix index 499d7dd6c4a..3c205a70375 100644 --- a/pkgs/misc/emulators/mame/default.nix +++ b/pkgs/misc/emulators/mame/default.nix @@ -1,9 +1,10 @@ -{ stdenv, mkDerivation, fetchFromGitHub, makeDesktopItem -, python, pkgconfig, SDL2, SDL2_ttf, alsaLib, which, qtbase, libXinerama }: +{ stdenv, mkDerivation, fetchFromGitHub, makeDesktopItem, makeWrapper +, python, pkgconfig, SDL2, SDL2_ttf, alsaLib, which, qtbase, libXinerama +, installShellFiles }: let majorVersion = "0"; - minorVersion = "215"; + minorVersion = "217"; desktopItem = makeDesktopItem { name = "MAME"; @@ -12,6 +13,8 @@ let genericName = "MAME is a multi-purpose emulation framework"; categories = "System;Emulator;"; }; + + dest = "$out/opt/mame"; in mkDerivation { pname = "mame"; version = "${majorVersion}.${minorVersion}"; @@ -20,7 +23,7 @@ in mkDerivation { owner = "mamedev"; repo = "mame"; rev = "mame${majorVersion}${minorVersion}"; - sha256 = "1phz846p3zzgzrbfiq2vn79iqar2dbf7iv6wfkrp32sdkkvp7l3h"; + sha256 = "0yzn29fp72k2g5xgv47ss6fr3sk9wdxw9f52nwld1baxr2adc0qx"; }; hardeningDisable = [ "fortify" ]; @@ -28,22 +31,33 @@ in mkDerivation { makeFlags = [ "TOOLS=1" ]; + dontWrapQtApps = true; + buildInputs = [ SDL2 SDL2_ttf alsaLib qtbase libXinerama ]; - nativeBuildInputs = [ python pkgconfig which ]; + nativeBuildInputs = [ python pkgconfig which makeWrapper installShellFiles ]; - installPhase = '' - dest=$out/opt/mame + # by default MAME assumes that paths with stock resources + # are relative and that you run MAME changing to + # install directory, so we add absolute paths here + patches = [ ./emuopts.patch ]; - make -f dist.mak PTR64=${if stdenv.is64bit then "1" else "0"} - mkdir -p $dest - mv build/release/${if stdenv.is64bit then "x64" else "x32"}/Release/mame/* $dest + postPatch = '' + substituteInPlace src/emu/emuopts.cpp \ + --subst-var-by mame ${dest} + ''; + + installPhase = '' + make -f dist.mak PTR64=${stdenv.lib.optionalString stdenv.is64bit "1"} + mkdir -p ${dest} + mv build/release/*/Release/mame/* ${dest} mkdir -p $out/bin - find $dest -maxdepth 1 -executable -type f -exec mv -t $out/bin {} \; + find ${dest} -maxdepth 1 -executable -type f -exec mv -t $out/bin {} \; + install -Dm755 src/osd/sdl/taputil.sh $out/bin/taputil.sh + + installManPage ${dest}/docs/man/*.1 ${dest}/docs/man/*.6 - mkdir -p $out/share/man/man{1,6} - mv $dest/docs/man/*.1 $out/share/man/man1 - mv $dest/docs/man/*.6 $out/share/man/man6 + mv artwork plugins samples ${dest} mkdir -p $out/share ln -s ${desktopItem}/share/applications $out/share diff --git a/pkgs/misc/emulators/mame/emuopts.patch b/pkgs/misc/emulators/mame/emuopts.patch new file mode 100644 index 00000000000..b85291f52f7 --- /dev/null +++ b/pkgs/misc/emulators/mame/emuopts.patch @@ -0,0 +1,29 @@ +diff --git a/src/emu/emuopts.cpp b/src/emu/emuopts.cpp +index c42fcef848..d1bddae060 100644 +--- a/src/emu/emuopts.cpp ++++ b/src/emu/emuopts.cpp +@@ -36,16 +36,16 @@ const options_entry emu_options::s_option_entries[] = + { nullptr, nullptr, OPTION_HEADER, "CORE SEARCH PATH OPTIONS" }, + { OPTION_HOMEPATH, ".", OPTION_STRING, "path to base folder for plugin data (read/write)" }, + { OPTION_MEDIAPATH ";rp;biospath;bp", "roms", OPTION_STRING, "path to ROM sets and hard disk images" }, +- { OPTION_HASHPATH ";hash_directory;hash", "hash", OPTION_STRING, "path to software definition files" }, +- { OPTION_SAMPLEPATH ";sp", "samples", OPTION_STRING, "path to audio sample sets" }, +- { OPTION_ARTPATH, "artwork", OPTION_STRING, "path to artwork files" }, +- { OPTION_CTRLRPATH, "ctrlr", OPTION_STRING, "path to controller definitions" }, +- { OPTION_INIPATH, ".;ini;ini/presets", OPTION_STRING, "path to ini files" }, +- { OPTION_FONTPATH, ".", OPTION_STRING, "path to font files" }, ++ { OPTION_HASHPATH ";hash_directory;hash", "hash;@mame@/hash", OPTION_STRING, "path to software definition files" }, ++ { OPTION_SAMPLEPATH ";sp", "samples;@mame@/samples", OPTION_STRING, "path to audio sample sets" }, ++ { OPTION_ARTPATH, "artwork;@mame@/artwork", OPTION_STRING, "path to artwork files" }, ++ { OPTION_CTRLRPATH, "ctrlr;@mame@/ctrlr", OPTION_STRING, "path to controller definitions" }, ++ { OPTION_INIPATH, ".;ini;ini/presets;@mame@/ini/presets", OPTION_STRING, "path to ini files" }, ++ { OPTION_FONTPATH, ".;@mame@", OPTION_STRING, "path to font files" }, + { OPTION_CHEATPATH, "cheat", OPTION_STRING, "path to cheat files" }, + { OPTION_CROSSHAIRPATH, "crosshair", OPTION_STRING, "path to crosshair files" }, +- { OPTION_PLUGINSPATH, "plugins", OPTION_STRING, "path to plugin files" }, +- { OPTION_LANGUAGEPATH, "language", OPTION_STRING, "path to UI translation files" }, ++ { OPTION_PLUGINSPATH, "plugins;@mame@/plugins", OPTION_STRING, "path to plugin files" }, ++ { OPTION_LANGUAGEPATH, "language;@mame@/language", OPTION_STRING, "path to UI translation files" }, + { OPTION_SWPATH, "software", OPTION_STRING, "path to loose software" }, + + // output directory options diff --git a/pkgs/misc/emulators/mupen64plus/default.nix b/pkgs/misc/emulators/mupen64plus/default.nix index 460dd7ad5fb..ee3aab1834a 100644 --- a/pkgs/misc/emulators/mupen64plus/default.nix +++ b/pkgs/misc/emulators/mupen64plus/default.nix @@ -1,15 +1,15 @@ -{stdenv, fetchurl, boost, dash, freetype, libpng, pkgconfig, SDL, which, zlib }: +{stdenv, fetchurl, boost, dash, freetype, libpng, pkgconfig, SDL, which, zlib, nasm }: stdenv.mkDerivation rec { pname = "mupen64plus"; - version = "2.5"; + version = "2.5.9"; src = fetchurl { url = "https://github.com/mupen64plus/mupen64plus-core/releases/download/${version}/mupen64plus-bundle-src-${version}.tar.gz"; - sha256 = "0rmsvfn4zfvbhz6gf1xkb7hnwflv6sbklwjz2xk4dlpj4vcbjxcw"; + sha256 = "1a21n4gqdvag6krwcjm5bnyw5phrlxw6m0mk73jy53iq03f3s96m"; }; - nativeBuildInputs = [ pkgconfig ]; + nativeBuildInputs = [ pkgconfig nasm ]; buildInputs = [ boost dash freetype libpng SDL which zlib ]; buildPhase = '' @@ -19,11 +19,11 @@ stdenv.mkDerivation rec { dash m64p_install.sh DESTDIR="$out" PREFIX="" ''; - meta = { + meta = with stdenv.lib; { description = "A Nintendo 64 Emulator"; - license = stdenv.lib.licenses.gpl2Plus; + license = licenses.gpl2Plus; homepage = http://www.mupen64plus.org/; - maintainers = [ stdenv.lib.maintainers.sander ]; - platforms = stdenv.lib.platforms.linux; + maintainers = [ maintainers.sander ]; + platforms = [ "x86_64-linux" ]; }; } diff --git a/pkgs/misc/emulators/pcsx2/default.nix b/pkgs/misc/emulators/pcsx2/default.nix index 1924452e2ab..6f28c5777ca 100644 --- a/pkgs/misc/emulators/pcsx2/default.nix +++ b/pkgs/misc/emulators/pcsx2/default.nix @@ -1,58 +1,66 @@ -{ alsaLib, cmake, fetchFromGitHub, glib, gtk2, gettext, libaio, libpng -, makeWrapper, perl, pkgconfig, portaudio, SDL2, soundtouch, stdenv -, wxGTK30, zlib }: +{ alsaLib, cmake, fetchFromGitHub, glib, gettext, gtk2, harfbuzz, lib, libaio +, libpng, libpcap, libxml2, makeWrapper, perl, pkgconfig, portaudio +, SDL2, soundtouch, stdenv, udev, wxGTK, zlib +}: stdenv.mkDerivation rec { pname = "pcsx2"; - version = "1.4.0"; + version = "unstable-2020-01-05"; src = fetchFromGitHub { owner = "PCSX2"; repo = "pcsx2"; - rev = "v${version}"; - sha256 = "0s7mxq2cgzwjfsq0vhpz6ljk7wr725nxg48128iyirf85585l691"; + rev = "9c12937351c51b921e1f28d44b019bc52e747c51"; + sha256 = "0y1f5v99a6njmf6hyvl4z5xnrm7351rkyw2fn4f09hqn92r7zmi5"; }; postPatch = "sed '1i#include \"x86intrin.h\"' -i common/src/x86emitter/cpudetect.cpp"; - configurePhase = '' - mkdir -p build - cd build - - cmake \ - -DBIN_DIR="$out/bin" \ - -DCMAKE_BUILD_PO=TRUE \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_INSTALL_PREFIX="$out" \ - -DDISABLE_ADVANCE_SIMD=TRUE \ - -DDISABLE_PCSX2_WRAPPER=TRUE \ - -DDOC_DIR="$out/share/doc/pcsx2" \ - -DGAMEINDEX_DIR="$out/share/pcsx2" \ - -DGLSL_SHADER_DIR="$out/share/pcsx2" \ - -DGTK2_GLIBCONFIG_INCLUDE_DIR='${glib.out}/lib/glib-2.0/include' \ - -DGTK2_GDKCONFIG_INCLUDE_DIR='${gtk2.out}/lib/gtk-2.0/include' \ - -DGTK2_INCLUDE_DIRS='${gtk2.dev}/include/gtk-2.0' \ - -DPACKAGE_MODE=TRUE \ - -DPLUGIN_DIR="$out/lib/pcsx2" \ - -DREBUILD_SHADER=TRUE \ - -DXDG_STD=TRUE \ - .. - ''; + cmakeFlags = [ + "-DCMAKE_INSTALL_PREFIX=${placeholder "out"}" + "-DDISABLE_ADVANCE_SIMD=TRUE" + "-DDISABLE_PCSX2_WRAPPER=TRUE" + "-DDOC_DIR=${placeholder "out"}/share/doc/pcsx2" + "-DGAMEINDEX_DIR=${placeholder "out"}/share/pcsx2" + "-DGLSL_SHADER_DIR=${placeholder "out"}/share/pcsx2" + "-DwxWidgets_LIBRARIES=${wxGTK}/lib" + "-DwxWidgets_INCLUDE_DIRS=${wxGTK}/include" + "-DwxWidgets_CONFIG_EXECUTABLE=${wxGTK}/bin/wx-config" + "-DPACKAGE_MODE=TRUE" + "-DPLUGIN_DIR=${placeholder "out"}/lib/pcsx2" + "-DREBUILD_SHADER=TRUE" + "-DXDG_STD=TRUE" + "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include" + "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2.out}/lib/gtk-2.0/include" + "-DGTK2_INCLUDE_DIRS=${gtk2.dev}/include/gtk-2.0" + "-DGTK3_API=FALSE" + ]; postFixup = '' wrapProgram $out/bin/PCSX2 \ --set __GL_THREADED_OPTIMIZATIONS 1 ''; - nativeBuildInputs = [ cmake perl pkgconfig ]; + nativeBuildInputs = [ cmake makeWrapper perl pkgconfig ]; buildInputs = [ - alsaLib glib gettext gtk2 libaio libpng makeWrapper portaudio SDL2 - soundtouch wxGTK30 zlib + alsaLib + glib + gettext + gtk2 + harfbuzz + libaio + libpcap + libpng + libxml2 + portaudio + SDL2 + soundtouch + udev + wxGTK + zlib ]; - enableParallelBuilding = true; - meta = with stdenv.lib; { description = "Playstation 2 emulator"; longDescription= '' @@ -62,7 +70,7 @@ stdenv.mkDerivation rec { states and PS2 system memory. This allows you to play PS2 games on your PC, with many additional features and benefits. ''; - homepage = https://pcsx2.net; + homepage = "https://pcsx2.net"; maintainers = with maintainers; [ hrdinka ]; # PCSX2's source code is released under LGPLv3+. It However ships diff --git a/pkgs/misc/emulators/ppsspp/default.nix b/pkgs/misc/emulators/ppsspp/default.nix index 98ea02cd897..b976c1e8c27 100644 --- a/pkgs/misc/emulators/ppsspp/default.nix +++ b/pkgs/misc/emulators/ppsspp/default.nix @@ -1,45 +1,69 @@ -{ stdenv, mkDerivation, fetchFromGitHub, cmake, pkgconfig, qtbase, qtmultimedia -, glew, libzip, snappy, zlib, withGamepads ? true, SDL2 }: - -assert withGamepads -> (SDL2 != null); -with stdenv.lib; +{ SDL2 +, cmake +, fetchFromGitHub +, ffmpeg +, glew +, lib +, libzip +, mkDerivation +, pkgconfig +, python3 +, qtbase +, qtmultimedia +, snappy +, zlib +}: mkDerivation rec { pname = "ppsspp"; - version = "1.4.2"; + version = "1.9.3"; src = fetchFromGitHub { owner = "hrydgard"; repo = "ppsspp"; rev = "v${version}"; fetchSubmodules = true; - sha256 = "0m4qkhx7q496sm7ibg2n7rm3npxzfr93iraxgndk0vhfk8vy8w75"; + sha256 = "17sym0vk72lzbh9a1501mhw98c78x1gq7k1fpy69nvvb119j37wa"; }; - patchPhase = '' - echo 'const char *PPSSPP_GIT_VERSION = "${src.rev}";' >> git-version.cpp - substituteInPlace UI/NativeApp.cpp --replace /usr/share $out/share + postPatch = '' + substituteInPlace git-version.cmake \ + --replace unknown ${src.rev} + substituteInPlace UI/NativeApp.cpp \ + --replace /usr/share $out/share ''; - nativeBuildInputs = [ cmake pkgconfig ]; - buildInputs = [ qtbase qtmultimedia glew libzip snappy zlib ] - ++ optionals withGamepads [ SDL2 SDL2.dev ]; + nativeBuildInputs = [ cmake pkgconfig python3 ]; + + buildInputs = [ + SDL2 + ffmpeg + glew + libzip + qtbase + qtmultimedia + snappy + zlib + ]; - cmakeFlags = [ "-DCMAKE_BUILD_TYPE=Release" "-DUSING_QT_UI=ON" ]; + cmakeFlags = [ + "-DOpenGL_GL_PREFERENCE=GLVND" + "-DUSE_SYSTEM_FFMPEG=ON" + "-DUSE_SYSTEM_LIBZIP=ON" + "-DUSE_SYSTEM_SNAPPY=ON" + "-DUSING_QT_UI=ON" + ]; installPhase = '' - mkdir -p $out/bin $out/share/ppsspp - mv PPSSPPQt $out/bin/ppsspp + mkdir -p $out/share/ppsspp + install -Dm555 PPSSPPQt $out/bin/ppsspp mv assets $out/share/ppsspp ''; - enableParallelBuilding = true; - - meta = { - homepage = https://www.ppsspp.org/; + meta = with lib; { description = "A PSP emulator for Android, Windows, Mac and Linux, written in C++"; + homepage = "https://www.ppsspp.org/"; license = licenses.gpl2Plus; maintainers = with maintainers; [ AndersonTorres ]; - platforms = platforms.linux ++ platforms.darwin ++ platforms.cygwin; }; } diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix index c8171f6c233..45ed31168f0 100644 --- a/pkgs/misc/emulators/retroarch/cores.nix +++ b/pkgs/misc/emulators/retroarch/cores.nix @@ -720,7 +720,7 @@ in with stdenv.lib.licenses; license = gpl2; extraBuildInputs = [ cmake libGLU libGL ffmpeg python37 xorg.libX11 ]; }).override { - cmakeFlags = "-DLIBRETRO=ON"; + cmakeFlags = [ "-DLIBRETRO=ON" ]; makefile = "Makefile"; buildPhase = '' make \ diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix index 34e3961250c..3f14258b0c0 100644 --- a/pkgs/misc/emulators/retroarch/default.nix +++ b/pkgs/misc/emulators/retroarch/default.nix @@ -39,11 +39,11 @@ in stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkgconfig ] - ++ optional withVulkan [ makeWrapper ]; + ++ optional withVulkan makeWrapper; buildInputs = [ ffmpeg freetype libxml2 libGLU libGL python3 SDL2 which ] ++ optional enableNvidiaCgToolkit nvidia_cg_toolkit - ++ optional withVulkan [ vulkan-loader ] + ++ optional withVulkan vulkan-loader ++ optionals stdenv.isDarwin [ libobjc AppKit Foundation ] ++ optionals stdenv.isLinux [ alsaLib libdrm libpulseaudio libv4l libX11 libXdmcp libXext libXxf86vm mesa udev ]; diff --git a/pkgs/misc/emulators/wine/base.nix b/pkgs/misc/emulators/wine/base.nix index 057615a79a1..0b6eab70263 100644 --- a/pkgs/misc/emulators/wine/base.nix +++ b/pkgs/misc/emulators/wine/base.nix @@ -71,12 +71,12 @@ stdenv.mkDerivation ((lib.optionalAttrs (buildScript != null) { # Wine locates a lot of libraries dynamically through dlopen(). Add # them to the RPATH so that the user doesn't have to set them in # LD_LIBRARY_PATH. - NIX_LDFLAGS = map (path: "-rpath " + path) ( + NIX_LDFLAGS = toString (map (path: "-rpath " + path) ( map (x: "${lib.getLib x}/lib") ([ stdenv.cc.cc ] ++ buildInputs) # libpulsecommon.so is linked but not found otherwise ++ lib.optionals supportFlags.pulseaudioSupport (map (x: "${lib.getLib x}/lib/pulseaudio") (toBuildInputs pkgArches (pkgs: [ pkgs.libpulseaudio ]))) - ); + )); # Don't shrink the ELF RPATHs in order to keep the extra RPATH # elements specified above. |