diff options
author | Vladimír Čunát <vcunat@gmail.com> | 2018-03-05 12:49:52 +0100 |
---|---|---|
committer | Vladimír Čunát <vcunat@gmail.com> | 2018-03-05 14:53:27 +0100 |
commit | 565bd805e6aea9258ead5449b46c5e56ae0568fb (patch) | |
tree | 81a23c558823fc865d180bb8b6318d24ec38729d /pkgs/misc/emulators | |
parent | 25a78f7234ced8840610178a695078b5b08d9e6b (diff) | |
parent | 97693915e1d31478528ee72e8d1fea5aa384577b (diff) | |
download | nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.tar nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.tar.gz nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.tar.bz2 nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.tar.lz nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.tar.xz nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.tar.zst nixlib-565bd805e6aea9258ead5449b46c5e56ae0568fb.zip |
Merge branch 'master'
Diffstat (limited to 'pkgs/misc/emulators')
-rw-r--r-- | pkgs/misc/emulators/caprice32/default.nix | 29 | ||||
-rw-r--r-- | pkgs/misc/emulators/citra/default.nix | 6 | ||||
-rw-r--r-- | pkgs/misc/emulators/desmume/default.nix | 6 | ||||
-rw-r--r-- | pkgs/misc/emulators/fceux/default.nix | 6 | ||||
-rw-r--r-- | pkgs/misc/emulators/hatari/default.nix | 6 | ||||
-rw-r--r-- | pkgs/misc/emulators/libdsk/default.nix | 19 | ||||
-rw-r--r-- | pkgs/misc/emulators/nestopia/default.nix | 5 | ||||
-rw-r--r-- | pkgs/misc/emulators/retroarch/cores.nix | 50 | ||||
-rw-r--r-- | pkgs/misc/emulators/retroarch/default.nix | 63 | ||||
-rw-r--r-- | pkgs/misc/emulators/rpcs3/default.nix | 41 | ||||
-rw-r--r-- | pkgs/misc/emulators/xcpc/default.nix | 22 |
11 files changed, 199 insertions, 54 deletions
diff --git a/pkgs/misc/emulators/caprice32/default.nix b/pkgs/misc/emulators/caprice32/default.nix new file mode 100644 index 000000000000..5928d53d5422 --- /dev/null +++ b/pkgs/misc/emulators/caprice32/default.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchFromGitHub, libpng, pkgconfig, SDL, freetype, zlib, mesa }: + +stdenv.mkDerivation rec { + + repo = "caprice32"; + version = "unstable-2018-02-10"; + rev = "53de69543300f81af85df32cbd21bb5c68cab61e"; + name = "${repo}-${version}"; + + src = fetchFromGitHub { + inherit rev repo; + owner = "ColinPitrat"; + sha256 = "12yv56blm49qmshpk4mgc802bs51wv2ra87hmcbf2wxma39c45fy"; + }; + + postPatch = "substituteInPlace cap32.cfg --replace /usr/local $out"; + + meta = with stdenv.lib; { + description = "A complete emulation of CPC464, CPC664 and CPC6128"; + homepage = https://github.com/ColinPitrat/caprice32 ; + license = licenses.gpl2; + maintainers = [ maintainers.genesis ]; + platforms = platforms.linux; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ libpng SDL freetype zlib ]; + makeFlags = [ "GIT_HASH=${src.rev}" "DESTDIR=$(out)" "prefix=/"]; +} diff --git a/pkgs/misc/emulators/citra/default.nix b/pkgs/misc/emulators/citra/default.nix index 2eebe089de32..db1de37da962 100644 --- a/pkgs/misc/emulators/citra/default.nix +++ b/pkgs/misc/emulators/citra/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchgit, cmake, SDL2, qtbase, boost, curl, gtest }: stdenv.mkDerivation rec { - name = "citra-2018-01-24"; + name = "citra-2018-02-23"; # Submodules src = fetchgit { url = "https://github.com/citra-emu/citra"; - rev = "33b0b5163fdb08bc8aa1d7eb83e0931a14ed3046"; - sha256 = "07z32d8lj84yy3l5iqpk37mnmvzjmppqhyqr64kbx14dh5hb6cbj"; + rev = "e51a642a13b9c2eda43d875fe318f627e11d480f"; + sha256 = "0cw9cqbljc87rjyr2alfryp04mxpvd5mdlyrmnp9yis3xr8g9sa1"; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/misc/emulators/desmume/default.nix b/pkgs/misc/emulators/desmume/default.nix index 54ad4bee3cd4..d177012546e9 100644 --- a/pkgs/misc/emulators/desmume/default.nix +++ b/pkgs/misc/emulators/desmume/default.nix @@ -3,7 +3,7 @@ , libXmu , lua , agg, alsaLib, soundtouch, openal -, desktop_file_utils +, desktop-file-utils , gtk2, gtkglext, libglade, pangox_compat , libGLU, libpcap, SDL, zziplib }: @@ -26,9 +26,11 @@ stdenv.mkDerivation rec { }) ]; + CXXFLAGS = "-fpermissive"; + 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 pangox_compat libGLU libpcap SDL zziplib ]; configureFlags = [ diff --git a/pkgs/misc/emulators/fceux/default.nix b/pkgs/misc/emulators/fceux/default.nix index ce8f8e030e30..70cf32d54cc2 100644 --- a/pkgs/misc/emulators/fceux/default.nix +++ b/pkgs/misc/emulators/fceux/default.nix @@ -1,11 +1,11 @@ {stdenv, fetchurl, scons, zlib, SDL, lua5_1, pkgconfig}: stdenv.mkDerivation { - name = "fceux-2.2.2"; + name = "fceux-2.2.3"; src = fetchurl { - url = mirror://sourceforge/fceultra/Source%20Code/2.2.2%20src/fceux-2.2.2.src.tar.gz; - sha256 = "1qg5bygla8ka30b7wqvq6dv84xc7pq0jspffh2jz75d1njyi2kc0"; + url = mirror://sourceforge/fceultra/Source%20Code/2.2.3%20src/fceux-2.2.3.src.tar.gz; + sha256 = "0gl2i3qdmcm7v9m5kpfz98w05d8m33990jiwka043ya7lflxvrjb"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/misc/emulators/hatari/default.nix b/pkgs/misc/emulators/hatari/default.nix index ed241de5b273..440eb681eb38 100644 --- a/pkgs/misc/emulators/hatari/default.nix +++ b/pkgs/misc/emulators/hatari/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, zlib, SDL, cmake }: stdenv.mkDerivation rec { - name = "hatari-1.8.0"; + name = "hatari-2.1.0"; src = fetchurl { - url = "http://download.tuxfamily.org/hatari/1.8.0/${name}.tar.bz2"; - sha256 = "1szznnndmbyc71751hir3dhybmbrx3rnxs6klgbv9qvqlmmlikvy"; + url = "http://download.tuxfamily.org/hatari/2.1.0/${name}.tar.bz2"; + sha256 = "0909l9fq20ninf8xgv5qf0a5y64cpk5ja1rsk2iaid1dx5h98agb"; }; # For pthread_cancel diff --git a/pkgs/misc/emulators/libdsk/default.nix b/pkgs/misc/emulators/libdsk/default.nix new file mode 100644 index 000000000000..c2103938accc --- /dev/null +++ b/pkgs/misc/emulators/libdsk/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchurl }: + +stdenv.mkDerivation rec { + name = "libdsk-${version}"; + version = "1.5.8"; + + src = fetchurl { + url = "http://www.seasip.info/Unix/LibDsk/${name}.tar.gz"; + sha256 = "1fdypk6gjkb4i2ghnbn3va50y69pdym51jx3iz9jns4636z4sfqd"; + }; + + meta = with stdenv.lib; { + description = "A library for accessing discs and disc image files"; + homepage = http://www.seasip.info/Unix/LibDsk/; + license = licenses.gpl2Plus; + maintainers = [ maintainers.genesis ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/misc/emulators/nestopia/default.nix b/pkgs/misc/emulators/nestopia/default.nix index 6bb91b2213a5..8a366ba737f3 100644 --- a/pkgs/misc/emulators/nestopia/default.nix +++ b/pkgs/misc/emulators/nestopia/default.nix @@ -1,5 +1,5 @@ -{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, SDL2, alsaLib, gtk3, libGLU -, makeWrapper, libGLU_combined, libarchive, libao, unzip, xdg_utils, gsettings_desktop_schemas +{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, SDL2, alsaLib, gtk3 +, makeWrapper, libGLU_combined, libarchive, libao, unzip, xdg_utils, gsettings-desktop-schemas , epoxy, gdk_pixbuf, gnome3, wrapGAppsHook }: @@ -25,7 +25,6 @@ stdenv.mkDerivation rec { epoxy gtk3 gdk_pixbuf - libGLU libGLU_combined libarchive libao diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix index ec7c55171714..d6b3b6a98706 100644 --- a/pkgs/misc/emulators/retroarch/cores.nix +++ b/pkgs/misc/emulators/retroarch/cores.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchgit, cmake, pkgconfig, makeWrapper, python27, retroarch +{ stdenv, fetchgit, fetchFromGitLab, cmake, pkgconfig, makeWrapper, python27, retroarch , alsaLib, fluidsynth, curl, hidapi, libGLU_combined, gettext, glib, gtk2, portaudio, SDL , ffmpeg, pcre, libevdev, libpng, libjpeg, libudev, libvorbis , miniupnpc, sfml, xorg, zlib }: @@ -7,7 +7,7 @@ let d2u = stdenv.lib.replaceChars ["-"] ["_"]; - mkLibRetroCore = ({ core, src, description, ... }@a: + mkLibRetroCore = ({ core, src, description, license, ... }@a: stdenv.lib.makeOverridable stdenv.mkDerivation rec { name = "libretro-${core}-${version}"; @@ -37,7 +37,7 @@ let meta = with stdenv.lib; { inherit description; homepage = https://www.libretro.com/; - license = licenses.gpl3Plus; + inherit license; maintainers = with maintainers; [ edwtjo hrdinka MP2E ]; platforms = platforms.linux; }; @@ -50,7 +50,7 @@ let fetchSubmodules = true; }; -in +in with stdenv.lib.licenses; { @@ -62,6 +62,7 @@ in sha256 = "1n42f70vni2zavppayaq8xmsyx5cn40qi4zk4pgq1w3hh2q8mj72"; }; description = "Port of 4DO/libfreedo to libretro"; + license = "Non-commercial"; }).override { buildPhase = "make"; }; @@ -74,6 +75,7 @@ in sha256 = "0p0k7kqfd6xg1qh6vgzgwp122miprb2bpzljgxd9kvigxihsl6f7"; }; description = "Port of Mednafen's PC Engine core to libretro"; + license = gpl2; }).override { buildPhase = "make"; name = "beetle-pce-fast"; @@ -87,6 +89,7 @@ in sha256 = "1k4b7g50ajzchjrm6d3v68hvri4k3hzvacn2l99i5yq3hxp7vs7x"; }; description = "Port of Mednafen's PSX Engine core to libretro"; + license = gpl2; }).override { buildPhase = "make"; name = "beetle-psx"; @@ -100,6 +103,7 @@ in sha256 = "1d1brysynwr6inlwfgv7gwkl3i9mf4lsaxd9wm2szw86g4diyn4c"; }; description = "Port of Mednafen's Saturn core to libretro"; + license = gpl2; }).override { buildPhase = "make"; name = "beetle-saturn"; @@ -114,6 +118,7 @@ in sha256 = "0vkn1f38vwazpp3kbvvv8c467ghak6yfx00s48wkxwvhmak74a3s"; }; description = "Fork of bsnes with HLE DSP emulation restored"; + license = gpl3; }).override { buildPhase = "make && cd out"; }; @@ -126,6 +131,7 @@ in sha256 = "064gzfbr7yizmvi91ry5y6bzikj633kdqhvzycb9f1g6kspf8yyl"; }; description = "libretro wrapper for desmume NDS emulator"; + license = gpl2; }).override { configurePhase = "cd desmume"; }; @@ -138,6 +144,7 @@ in sha256 = "1cshlfmhph8dl3vgvn37imvp2b7xs2cx1r1ifp5js5psvhycrbz3"; }; description = "Port of Dolphin to libretro"; + license = gpl2Plus; extraBuildInputs = [ cmake curl libGLU_combined pcre pkgconfig sfml miniupnpc @@ -166,6 +173,7 @@ in sha256 = "159dww8mxi95xz4ypw38vsn1g4k6z8sv415qqf0qriydwhw6mh2m"; }; description = "Port of Final Burn Alpha to libretro"; + license = "Non-commercial"; }).override { buildPhase = '' cd svn-current/trunk \ @@ -182,6 +190,7 @@ in sha256 = "0jnwh1338q710x47bzrx319g5xbq9ipv35kyjlbkrzhqjq1blz0b"; }; description = "FCEUmm libretro port"; + license = gpl2; }; gambatte = mkLibRetroCore rec { @@ -192,6 +201,7 @@ in sha256 = "0h7hyj630nk1s32wx02y4q9x2lp6wbnh6nkc9ihf4pygcsignmwr"; }; description = "Gambatte libretro port"; + license = gpl2; }; genesis-plus-gx = mkLibRetroCore rec { @@ -202,6 +212,22 @@ in sha256 = "0s11ddpnb44q4xjkl7dylldhi9y5zqywqavpk0bbwyj84r1cbz3c"; }; description = "Enhanced Genesis Plus libretro port"; + license = "Non-commercial"; + }; + + higan-sfc = (mkLibRetroCore rec { + core = "higan-sfc"; + src = fetchFromGitLab { + owner = "higan"; + repo = "higan"; + rev = "d3f592013a27cb78f17d84f90a6be6cf6f6af1d1"; + sha256 = "19d4cbwg8d085xq5lmql4v5l4ckgwqzc59ha5yfgv3w4qfp4dmij"; + }; + description = "Accurate SNES / Super Famicom emulator"; + license = gpl3; + }).override { + makefile = "GNUmakefile"; + buildPhase = "cd higan && make compiler=g++ target=libretro binary=library && cd out"; }; mame = (mkLibRetroCore { @@ -212,6 +238,7 @@ in sha256 = "0blfvq28hgv9kkpijd8c9d9sa5g2qr448clwi7wrj8kqfdnrr8m1"; }; description = "Port of MAME to libretro"; + license = gpl2Plus; extraBuildInputs = [ alsaLib libGLU_combined portaudio python27 xorg.libX11 ]; }).override { @@ -230,6 +257,7 @@ in sha256 = "1b30sa861r4bhbqkx6vkklh4iy625bpzki2ks4ivvjns1ijczvc7"; }; description = "Port of mGBA to libretro"; + license = mpl20; }; mupen64plus = (mkLibRetroCore rec { @@ -240,6 +268,7 @@ in sha256 = "0q5kvjz7rpk7mp75cdywqjgmy10c0h7ky26hh1x90d39y94idcd8"; }; description = "Libretro port of Mupen64 Plus, GL only"; + license = gpl2; extraBuildInputs = [ libGLU_combined libpng ]; }).override { @@ -254,6 +283,7 @@ in sha256 = "17ac7dhasch6f4lpill8c5scsvaix0jvbf1cp797qbll4hk84f2q"; }; description = "nestopia undead libretro port"; + license = gpl2; }).override { buildPhase = "cd libretro && make"; }; @@ -266,6 +296,7 @@ in sha256 = "19396v50azrb52ifjk298zgcbxn8dvfvp6zwrnzsk6mp8ff7qcqw"; }; description = "Parallel Mupen64plus rewrite for libretro."; + license = gpl2; extraBuildInputs = [ libGLU_combined libpng ]; }).override { @@ -280,6 +311,7 @@ in sha256 = "0fl9r6jj2x9231md5zc4scra79j5hfn1n2z67scff1375xg1k64h"; }; description = "Fast MegaDrive/MegaCD/32X emulator"; + license = "MAME"; extraBuildInputs = [ libpng SDL ]; }).override { @@ -295,6 +327,7 @@ in sha256 = "06k1gzmypz61dslynrw4b5i161rhj43y6wnr2nhbzvwcv5bw8w8r"; }; description = "ppsspp libretro port"; + license = gpl2; extraBuildInputs = [ libGLU_combined ffmpeg ]; }).override { buildPhase = "cd libretro && make"; @@ -308,6 +341,7 @@ in sha256 = "02vkl3y5dmyzifsviphspqv03a2rdyf36zpjpgfg7x0s226f56ja"; }; description = "Prboom libretro port"; + license = gpl2; }).override { buildPhase = "make"; }; @@ -320,6 +354,7 @@ in sha256 = "18lizdb9zjlfhh8ibvmcscldlf3mw4aj8nds3pah68cd2lw170w1"; }; description = "QuickNES libretro port"; + license = lgpl21Plus; }).override { buildPhase = "make"; }; @@ -332,6 +367,7 @@ in sha256 = "0d8wzpv7pcyh437gmvi439vim26wyrjmi5hj97wvyvggywjwrx8m"; }; description = "Reicast libretro port"; + license = gpl2; extraBuildInputs = [ libGLU_combined ]; }).override { buildPhase = "make"; @@ -345,6 +381,7 @@ in sha256 = "097i2dq3hw14hicsplrs36j1qa3r45vhzny5v4aw6qw4aj34hksy"; }; description = "Libretro port of ScummVM"; + license = gpl2; extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU_combined SDL ]; }).override { buildPhase = "cd backends/platform/libretro/build && make"; @@ -358,6 +395,7 @@ in sha256 = "02f04ss45km32lp68diyfkix1gryx89qy8cc80189ipwnx80pgip"; }; description = "Port of SNES9x git to libretro"; + license = "Non-commercial"; }).override { buildPhase = "cd libretro && make"; }; @@ -370,6 +408,7 @@ in sha256 = "1vhgsrg9l562nincfvpj2h2dqkkblg1qmh0v47jqlqgmgl2b1zij"; }; description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro"; + license = "Non-commercial"; }).override { buildPhase = '' make -f Makefile.libretro @@ -385,6 +424,7 @@ in sha256 = "18r1yyfzvjq2hq04d94y37kzsq6aywh1aim69a3imk8kh46gwrh0"; }; description = "Port of Stella to libretro"; + license = gpl2; }).override { buildPhase = "make"; }; @@ -397,6 +437,7 @@ in sha256 = "03s4rh7dbbhbfc4pfdvr9jcbxrp4ijg8yp49s1xhr7sxsblj2vpv"; }; description = "VBA-M libretro port with modifications for speed"; + license = gpl2; }; vba-m = (mkLibRetroCore rec { @@ -407,6 +448,7 @@ in sha256 = "043djmqvh2grc25hwjw4b5kfx57b89ryp6fcl8v632sm35l3dd6z"; }; description = "vanilla VBA-M libretro port"; + license = gpl2; }).override { buildPhase = "cd src/libretro && make"; }; diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix index f30d50ef4d0c..e898a5804b06 100644 --- a/pkgs/misc/emulators/retroarch/default.nix +++ b/pkgs/misc/emulators/retroarch/default.nix @@ -1,61 +1,52 @@ -{ stdenv, fetchFromGitHub, makeDesktopItem, coreutils, which, pkgconfig +{ stdenv, fetchFromGitHub, which, pkgconfig, makeWrapper , ffmpeg, libGLU_combined, freetype, libxml2, python34 +, libobjc, AppKit, Foundation +, alsaLib ? null +, libpulseaudio ? null +, libv4l ? null +, libX11 ? null +, libXdmcp ? null +, libXext ? null +, libXxf86vm ? null +, SDL2 ? null +, udev ? null , enableNvidiaCgToolkit ? false, nvidia_cg_toolkit ? null -, alsaLib ? null, libv4l ? null -, udev ? null, libX11 ? null, libXext ? null, libXxf86vm ? null -, libXdmcp ? null, SDL ? null, libpulseaudio ? null +, withVulkan ? stdenv.isLinux, vulkan-loader ? null }: with stdenv.lib; -let - desktopItem = makeDesktopItem { - name = "retroarch"; - exec = "retroarch"; - icon = "retroarch"; - comment = "Multi-Engine Platform"; - desktopName = "RetroArch"; - genericName = "Libretro Frontend"; - categories = "Game;Emulator;"; - #keywords = "multi;engine;emulator;xmb;"; - }; -in - stdenv.mkDerivation rec { name = "retroarch-bare-${version}"; - version = "1.6.0"; + version = "1.7.1"; src = fetchFromGitHub { owner = "libretro"; repo = "RetroArch"; - sha256 = "1ym2kws58fbavkc3giz5xqaqiqqdbf7wrz7y7iw53p1bnkc3l8yi"; + sha256 = "0qv8ci76f5kwv5b49ijgpc6jdfp6sm21fw5hq06mq6ygyiy9vdzf"; rev = "v${version}"; }; - nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ ffmpeg libGLU_combined freetype libxml2 coreutils python34 which SDL ] - ++ optional enableNvidiaCgToolkit nvidia_cg_toolkit - ++ optionals stdenv.isLinux [ udev alsaLib libX11 libXext libXxf86vm libXdmcp libv4l libpulseaudio ]; - - configureScript = "sh configure"; + nativeBuildInputs = [ pkgconfig ] + ++ optional withVulkan [ makeWrapper ]; - patchPhase = '' - export GLOBAL_CONFIG_DIR=$out/etc - sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh - ''; + buildInputs = [ ffmpeg freetype libxml2 libGLU_combined python34 SDL2 which ] + ++ optional enableNvidiaCgToolkit nvidia_cg_toolkit + ++ optional withVulkan [ vulkan-loader ] + ++ optionals stdenv.isDarwin [ libobjc AppKit Foundation ] + ++ optionals stdenv.isLinux [ alsaLib libpulseaudio libv4l libX11 + libXdmcp libXext libXxf86vm udev ]; - postInstall = '' - mkdir -p $out/share/icons/hicolor/scalable/apps - cp -p -T ./media/retroarch.svg $out/share/icons/hicolor/scalable/apps/retroarch.svg + enableParallelBuilding = true; - mkdir -p "$out/share/applications" - cp ${desktopItem}/share/applications/* $out/share/applications + postInstall = optional withVulkan '' + wrapProgram $out/bin/retroarch --prefix LD_LIBRARY_PATH ':' ${vulkan-loader}/lib ''; - enableParallelBuilding = true; + preFixup = "rm $out/bin/retroarch-cg2glsl"; meta = { - homepage = http://libretro.org/; + homepage = https://libretro.com; description = "Multi-platform emulator frontend for libretro cores"; license = licenses.gpl3; platforms = platforms.all; diff --git a/pkgs/misc/emulators/rpcs3/default.nix b/pkgs/misc/emulators/rpcs3/default.nix new file mode 100644 index 000000000000..140149bde495 --- /dev/null +++ b/pkgs/misc/emulators/rpcs3/default.nix @@ -0,0 +1,41 @@ +{ stdenv, lib, fetchgit, cmake, pkgconfig +, qtbase, openal, glew, llvm_4, vulkan-loader, libpng, ffmpeg, libevdev +, pulseaudioSupport ? true, libpulseaudio +, waylandSupport ? true, wayland +, alsaSupport ? true, alsaLib +}: + +stdenv.mkDerivation rec { + name = "rpcs3-${version}"; + version = "2018-02-23"; + + src = fetchgit { + url = "https://github.com/RPCS3/rpcs3"; + rev = "41bd07274f15b8f1be2475d73c3c75ada913dabb"; + sha256 = "1v28m64ahakzj4jzjkmdd7y8q75pn9wjs03vprbnl0z6wqavqn0x"; + }; + + cmakeFlags = [ + "-DUSE_SYSTEM_LIBPNG=ON" + "-DUSE_SYSTEM_FFMPEG=ON" + "-DUSE_NATIVE_INSTRUCTIONS=OFF" + ]; + + nativeBuildInputs = [ cmake pkgconfig ]; + + buildInputs = [ + qtbase openal glew llvm_4 vulkan-loader libpng ffmpeg libevdev + ] ++ lib.optional pulseaudioSupport libpulseaudio + ++ lib.optional alsaSupport alsaLib + ++ lib.optional waylandSupport wayland; + + enableParallelBuilding = true; + + meta = with stdenv.lib; { + description = "PS3 emulator/debugger"; + homepage = "https://rpcs3.net/"; + maintainers = with maintainers; [ abbradar ]; + license = licenses.gpl2; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/misc/emulators/xcpc/default.nix b/pkgs/misc/emulators/xcpc/default.nix new file mode 100644 index 000000000000..5eb6e3b160ef --- /dev/null +++ b/pkgs/misc/emulators/xcpc/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchurl, libdsk, pkgconfig, glib, libXaw, libX11, libXext, lesstif }: + +stdenv.mkDerivation rec { + version = "20070122"; + name = "xcpc-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/xcpc/${name}.tar.gz"; + sha256 = "0hxsbhmyzyyrlidgg0q8izw55q0z40xrynw5a1c3frdnihj9jf7n"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ glib libdsk libXaw libX11 libXext lesstif ]; + + meta = with stdenv.lib; { + description = "A portable Amstrad CPC 464/664/6128 emulator written in C"; + homepage = https://www.xcpc-emulator.net; + license = licenses.gpl2Plus; + maintainers = [ maintainers.genesis ]; + platforms = platforms.linux; + }; +} |