2017-06-04 10:10:14 +02:00
|
|
|
{ stdenv, fetchgit, cmake, pkgconfig, makeWrapper, python27, retroarch
|
|
|
|
, alsaLib, fluidsynth, curl, hidapi, mesa, gettext, glib, gtk2, portaudio, SDL
|
|
|
|
, ffmpeg, pcre, libevdev, libpng, libjpeg, libudev, libvorbis
|
|
|
|
, miniupnpc, sfml, xorg, zlib }:
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
|
|
|
|
let
|
|
|
|
|
|
|
|
d2u = stdenv.lib.replaceChars ["-"] ["_"];
|
|
|
|
|
|
|
|
mkLibRetroCore = ({ core, src, description, ... }@a:
|
|
|
|
stdenv.lib.makeOverridable stdenv.mkDerivation rec {
|
|
|
|
|
|
|
|
name = "libretro-${core}-${version}";
|
2017-06-04 03:24:18 +02:00
|
|
|
version = "2017-06-04";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
inherit src;
|
|
|
|
|
|
|
|
buildInputs = [ makeWrapper retroarch zlib ] ++ a.extraBuildInputs or [];
|
|
|
|
|
|
|
|
buildPhase = "make -f Makefile.libretro";
|
|
|
|
installPhase = ''
|
|
|
|
COREDIR="$out/lib/retroarch/cores"
|
|
|
|
mkdir -p $out/bin
|
|
|
|
mkdir -p $COREDIR
|
|
|
|
mv ${d2u core}_libretro.so $COREDIR/.
|
|
|
|
makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch-${core} \
|
|
|
|
--add-flags "-L $COREDIR/${d2u core}_libretro.so $@"
|
|
|
|
'';
|
|
|
|
|
2014-10-02 20:09:18 +02:00
|
|
|
passthru = {
|
|
|
|
core = core;
|
|
|
|
libretroCore = "/lib/retroarch/cores";
|
|
|
|
};
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
|
|
inherit description;
|
2017-08-01 22:03:30 +02:00
|
|
|
homepage = http://www.libretro.com/;
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
license = licenses.gpl3Plus;
|
2016-02-26 11:18:02 +01:00
|
|
|
maintainers = with maintainers; [ edwtjo hrdinka MP2E ];
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
platforms = platforms.linux;
|
|
|
|
};
|
|
|
|
} // a);
|
|
|
|
|
|
|
|
fetchRetro = { repo, rev, sha256 }:
|
|
|
|
fetchgit {
|
|
|
|
inherit rev sha256;
|
|
|
|
url = "https://github.com/libretro/${repo}.git";
|
|
|
|
fetchSubmodules = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
in
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
_4do = (mkLibRetroCore rec {
|
|
|
|
core = "4do";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "52d881743dd8614d96b4de8bd153cb725b87d474";
|
|
|
|
sha256 = "1n42f70vni2zavppayaq8xmsyx5cn40qi4zk4pgq1w3hh2q8mj72";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
description = "Port of 4DO/libfreedo to libretro";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make";
|
|
|
|
};
|
|
|
|
|
2017-02-25 16:14:35 +01:00
|
|
|
beetle-pce-fast = (mkLibRetroCore rec {
|
|
|
|
core = "mednafen-pce-fast";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "beetle-pce-fast-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "2954e645d668ee73d93803dc30da4462fc7a459b";
|
|
|
|
sha256 = "0p0k7kqfd6xg1qh6vgzgwp122miprb2bpzljgxd9kvigxihsl6f7";
|
2017-02-25 16:14:35 +01:00
|
|
|
};
|
|
|
|
description = "Port of Mednafen's PC Engine core to libretro";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make";
|
|
|
|
name = "beetle-pce-fast";
|
|
|
|
};
|
|
|
|
|
|
|
|
beetle-psx = (mkLibRetroCore rec {
|
|
|
|
core = "mednafen-psx";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "beetle-psx-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "76862abefdde9097561e2b795e75b49247deff17";
|
|
|
|
sha256 = "1k4b7g50ajzchjrm6d3v68hvri4k3hzvacn2l99i5yq3hxp7vs7x";
|
2017-02-25 16:14:35 +01:00
|
|
|
};
|
|
|
|
description = "Port of Mednafen's PSX Engine core to libretro";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make";
|
|
|
|
name = "beetle-psx";
|
|
|
|
};
|
|
|
|
|
|
|
|
beetle-saturn = (mkLibRetroCore rec {
|
|
|
|
core = "mednafen-saturn";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "beetle-saturn-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "3f1661b39ef249e105e6e2e655854ad0c87cd497";
|
|
|
|
sha256 = "1d1brysynwr6inlwfgv7gwkl3i9mf4lsaxd9wm2szw86g4diyn4c";
|
2017-02-25 16:14:35 +01:00
|
|
|
};
|
|
|
|
description = "Port of Mednafen's Saturn core to libretro";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make";
|
|
|
|
name = "beetle-saturn";
|
2017-02-28 15:15:54 +01:00
|
|
|
meta.platforms = [ "x86_64-linux" ];
|
2017-02-25 16:14:35 +01:00
|
|
|
};
|
|
|
|
|
2015-11-20 15:49:45 +01:00
|
|
|
bsnes-mercury = let bname = "bsnes-mercury"; in (mkLibRetroCore rec {
|
|
|
|
core = bname + "-accuracy";
|
2014-09-19 22:42:41 +02:00
|
|
|
src = fetchRetro {
|
2015-11-20 15:49:45 +01:00
|
|
|
repo = bname;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "e89c9a2e0a12d588366ee4f5c76b7d75139d938b";
|
|
|
|
sha256 = "0vkn1f38vwazpp3kbvvv8c467ghak6yfx00s48wkxwvhmak74a3s";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
description = "Fork of bsnes with HLE DSP emulation restored";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make && cd out";
|
|
|
|
};
|
|
|
|
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
desmume = (mkLibRetroCore rec {
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
core = "desmume";
|
|
|
|
src = fetchRetro {
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "ce1f93abb4c3aa55099f56298e5438a03a3c2bbd";
|
|
|
|
sha256 = "064gzfbr7yizmvi91ry5y6bzikj633kdqhvzycb9f1g6kspf8yyl";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
description = "libretro wrapper for desmume NDS emulator";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
}).override {
|
|
|
|
configurePhase = "cd desmume";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
|
2017-06-04 10:10:14 +02:00
|
|
|
dolphin = (mkLibRetroCore {
|
|
|
|
core = "dolphin";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "dolphin";
|
|
|
|
rev = "a6ad451fdd4ac8753fd1a8e2234ec34674677754";
|
|
|
|
sha256 = "1cshlfmhph8dl3vgvn37imvp2b7xs2cx1r1ifp5js5psvhycrbz3";
|
|
|
|
};
|
|
|
|
description = "Port of Dolphin to libretro";
|
|
|
|
|
|
|
|
extraBuildInputs = [
|
|
|
|
cmake curl mesa pcre pkgconfig sfml miniupnpc
|
|
|
|
gettext glib gtk2 hidapi
|
|
|
|
libevdev libudev
|
|
|
|
] ++ (with xorg; [ libSM libX11 libXi libpthreadstubs libxcb xcbutil ]);
|
|
|
|
}).override {
|
|
|
|
cmakeFlags = [
|
|
|
|
"-DLINUX_LOCAL_DEV=true"
|
|
|
|
"-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2.out}/lib/gtk-2.0/include"
|
|
|
|
"-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include"
|
|
|
|
"-DGTK2_INCLUDE_DIRS=${gtk2.dev}/include/gtk-2.0"
|
|
|
|
];
|
|
|
|
dontUseCmakeBuildDir = "yes";
|
|
|
|
buildPhase = ''
|
|
|
|
cd Source/Core/DolphinLibretro
|
|
|
|
make
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
2014-09-19 22:42:41 +02:00
|
|
|
fba = (mkLibRetroCore rec {
|
|
|
|
core = "fba";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "9146c18ac989c619256d1cb8954d49e728e44ea3";
|
|
|
|
sha256 = "159dww8mxi95xz4ypw38vsn1g4k6z8sv415qqf0qriydwhw6mh2m";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
description = "Port of Final Burn Alpha to libretro";
|
|
|
|
}).override {
|
|
|
|
buildPhase = ''
|
|
|
|
cd svn-current/trunk \
|
|
|
|
&& make -f makefile.libretro \
|
2017-06-04 03:24:18 +02:00
|
|
|
&& mv fbalpha2012_libretro.so fba_libretro.so
|
2014-09-19 22:42:41 +02:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
2015-11-20 15:49:45 +01:00
|
|
|
fceumm = mkLibRetroCore rec {
|
|
|
|
core = "fceumm";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "libretro-" + core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "45f773a1c221121746bbe2680e3aaaf92776a87e";
|
|
|
|
sha256 = "0jnwh1338q710x47bzrx319g5xbq9ipv35kyjlbkrzhqjq1blz0b";
|
2015-11-20 15:49:45 +01:00
|
|
|
};
|
|
|
|
description = "FCEUmm libretro port";
|
|
|
|
};
|
|
|
|
|
2017-06-04 03:24:18 +02:00
|
|
|
gambatte = mkLibRetroCore rec {
|
2014-09-19 22:42:41 +02:00
|
|
|
core = "gambatte";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "db7af6cf6ea39fd5e39eea137ff752649599a4e4";
|
|
|
|
sha256 = "0h7hyj630nk1s32wx02y4q9x2lp6wbnh6nkc9ihf4pygcsignmwr";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
description = "Gambatte libretro port";
|
|
|
|
};
|
|
|
|
|
|
|
|
genesis-plus-gx = mkLibRetroCore rec {
|
|
|
|
core = "genesis-plus-gx";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "Genesis-Plus-GX";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "365a28c7349b691e6aaa3ad59b055261c42bd130";
|
|
|
|
sha256 = "0s11ddpnb44q4xjkl7dylldhi9y5zqywqavpk0bbwyj84r1cbz3c";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
description = "Enhanced Genesis Plus libretro port";
|
|
|
|
};
|
|
|
|
|
2016-02-26 11:18:02 +01:00
|
|
|
mame = mkLibRetroCore {
|
|
|
|
core = "mame";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "mame";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "9f8a36adeb4dc54ec2ecac992ce91bcdb377519e";
|
|
|
|
sha256 = "0blfvq28hgv9kkpijd8c9d9sa5g2qr448clwi7wrj8kqfdnrr8m1";
|
2016-02-26 11:18:02 +01:00
|
|
|
};
|
|
|
|
description = "Port of MAME to libretro";
|
|
|
|
|
2017-06-04 03:24:18 +02:00
|
|
|
extraBuildInputs = [ alsaLib mesa portaudio python27 xorg.libX11 ];
|
2017-02-11 13:49:33 +01:00
|
|
|
};
|
|
|
|
|
2017-02-10 12:03:14 +01:00
|
|
|
mgba = mkLibRetroCore rec {
|
|
|
|
core = "mgba";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "fdaaaee661e59f28c94c7cfa4e82e70b71e24a9d";
|
|
|
|
sha256 = "1b30sa861r4bhbqkx6vkklh4iy625bpzki2ks4ivvjns1ijczvc7";
|
2017-02-10 12:03:14 +01:00
|
|
|
};
|
|
|
|
description = "Port of mGBA to libretro";
|
|
|
|
};
|
|
|
|
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
mupen64plus = (mkLibRetroCore rec {
|
|
|
|
core = "mupen64plus";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "407bcd40b3a42bff6b856a6d6f88a7d5d670bf9e";
|
|
|
|
sha256 = "0q5kvjz7rpk7mp75cdywqjgmy10c0h7ky26hh1x90d39y94idcd8";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
description = "Libretro port of Mupen64 Plus, GL only";
|
|
|
|
|
2017-06-04 03:24:18 +02:00
|
|
|
extraBuildInputs = [ mesa libpng ];
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
}).override {
|
|
|
|
buildPhase = "make WITH_DYNAREC=${if stdenv.system == "x86_64-linux" then "x86_64" else "x86"}";
|
|
|
|
};
|
|
|
|
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
nestopia = (mkLibRetroCore rec {
|
|
|
|
core = "nestopia";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "ecfa170a582e5b8ec11225ca645843fa064955ca";
|
|
|
|
sha256 = "17ac7dhasch6f4lpill8c5scsvaix0jvbf1cp797qbll4hk84f2q";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
};
|
|
|
|
description = "nestopia undead libretro port";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "cd libretro && make";
|
|
|
|
};
|
|
|
|
|
2017-06-07 23:30:40 +02:00
|
|
|
parallel-n64 = (mkLibRetroCore rec {
|
|
|
|
core = "parallel-n64";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
|
|
|
rev = "3276db27547bf7ca85896427f0b82d4658694d88";
|
|
|
|
sha256 = "19396v50azrb52ifjk298zgcbxn8dvfvp6zwrnzsk6mp8ff7qcqw";
|
|
|
|
};
|
|
|
|
description = "Parallel Mupen64plus rewrite for libretro.";
|
|
|
|
|
|
|
|
extraBuildInputs = [ mesa libpng ];
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make WITH_DYNAREC=${if stdenv.system == "x86_64-linux" then "x86_64" else "x86"}";
|
|
|
|
};
|
|
|
|
|
2014-09-19 22:42:41 +02:00
|
|
|
picodrive = (mkLibRetroCore rec {
|
|
|
|
core = "picodrive";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "cbc93b68dca1d72882d07b54bbe1ef25b980558a";
|
|
|
|
sha256 = "0fl9r6jj2x9231md5zc4scra79j5hfn1n2z67scff1375xg1k64h";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
description = "Fast MegaDrive/MegaCD/32X emulator";
|
|
|
|
|
|
|
|
extraBuildInputs = [ libpng SDL ];
|
|
|
|
}).override {
|
2015-10-11 16:21:43 +02:00
|
|
|
patchPhase = "sed -i -e 's,SDL_CONFIG=\".*\",SDL_CONFIG=\"${SDL.dev}/bin/sdl-config\",' configure";
|
2014-09-19 22:42:41 +02:00
|
|
|
configurePhase = "./configure";
|
|
|
|
};
|
|
|
|
|
2015-11-20 15:49:45 +01:00
|
|
|
ppsspp = (mkLibRetroCore rec {
|
|
|
|
core = "ppsspp";
|
2014-09-19 22:42:41 +02:00
|
|
|
src = fetchRetro {
|
|
|
|
repo = "libretro-" + core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "5f7bcf7bfc15f83d405bcecd7a163a55ad1e7573";
|
|
|
|
sha256 = "06k1gzmypz61dslynrw4b5i161rhj43y6wnr2nhbzvwcv5bw8w8r";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
2015-11-20 15:49:45 +01:00
|
|
|
description = "ppsspp libretro port";
|
|
|
|
extraBuildInputs = [ mesa ffmpeg ];
|
2014-09-19 22:42:41 +02:00
|
|
|
}).override {
|
2015-11-20 15:49:45 +01:00
|
|
|
buildPhase = "cd libretro && make";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
|
2015-11-20 15:49:45 +01:00
|
|
|
prboom = (mkLibRetroCore rec {
|
|
|
|
core = "prboom";
|
2014-09-19 22:42:41 +02:00
|
|
|
src = fetchRetro {
|
|
|
|
repo = "libretro-" + core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "4c690eb6b569a276c5b2a87680718f715477eae2";
|
|
|
|
sha256 = "02vkl3y5dmyzifsviphspqv03a2rdyf36zpjpgfg7x0s226f56ja";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
2015-11-20 15:49:45 +01:00
|
|
|
description = "Prboom libretro port";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
}).override {
|
2015-11-20 15:49:45 +01:00
|
|
|
buildPhase = "make";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
quicknes = (mkLibRetroCore rec {
|
|
|
|
core = "quicknes";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = "QuickNES_Core";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "8613b48cee97f1472145bbafa76e543854b2bbd5";
|
|
|
|
sha256 = "18lizdb9zjlfhh8ibvmcscldlf3mw4aj8nds3pah68cd2lw170w1";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
};
|
|
|
|
description = "QuickNES libretro port";
|
|
|
|
}).override {
|
2015-11-20 15:49:45 +01:00
|
|
|
buildPhase = "make";
|
2014-09-19 22:42:41 +02:00
|
|
|
};
|
|
|
|
|
2017-02-10 12:11:29 +01:00
|
|
|
reicast = (mkLibRetroCore rec {
|
|
|
|
core = "reicast";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-emulator";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "40d4e8af2dd67a3f317c14224873c8ec0e1f9d11";
|
|
|
|
sha256 = "0d8wzpv7pcyh437gmvi439vim26wyrjmi5hj97wvyvggywjwrx8m";
|
2017-02-10 12:11:29 +01:00
|
|
|
};
|
|
|
|
description = "Reicast libretro port";
|
|
|
|
extraBuildInputs = [ mesa ];
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make";
|
|
|
|
};
|
|
|
|
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
scummvm = (mkLibRetroCore rec {
|
|
|
|
core = "scummvm";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "de8d7e58caa23f071ce9d1bc5133f45d16c3ff1c";
|
|
|
|
sha256 = "097i2dq3hw14hicsplrs36j1qa3r45vhzny5v4aw6qw4aj34hksy";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
description = "Libretro port of ScummVM";
|
|
|
|
extraBuildInputs = [ fluidsynth libjpeg libvorbis mesa SDL ];
|
|
|
|
}).override {
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
buildPhase = "cd backends/platform/libretro/build && make";
|
|
|
|
};
|
|
|
|
|
|
|
|
snes9x = (mkLibRetroCore rec {
|
|
|
|
core = "snes9x";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "db4bfaba3b0d5a067fe9aea323503656837a8d9a";
|
|
|
|
sha256 = "02f04ss45km32lp68diyfkix1gryx89qy8cc80189ipwnx80pgip";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
};
|
2015-11-20 15:49:45 +01:00
|
|
|
description = "Port of SNES9x git to libretro";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
}).override {
|
|
|
|
buildPhase = "cd libretro && make";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
|
2017-06-04 03:24:18 +02:00
|
|
|
snes9x-next = (mkLibRetroCore rec {
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
core = "snes9x-next";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "b2a69de0df1eb39ed362806f9c9633f4544272af";
|
|
|
|
sha256 = "1vhgsrg9l562nincfvpj2h2dqkkblg1qmh0v47jqlqgmgl2b1zij";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
}).override {
|
|
|
|
buildPhase = ''
|
|
|
|
make -f Makefile.libretro
|
|
|
|
mv snes9x2010_libretro.so snes9x_next_libretro.so
|
|
|
|
'';
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
stella = (mkLibRetroCore rec {
|
|
|
|
core = "stella";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "bbe65db0e344dcb38905586bd853076b65963e5a";
|
|
|
|
sha256 = "18r1yyfzvjq2hq04d94y37kzsq6aywh1aim69a3imk8kh46gwrh0";
|
libretro-cores:
- adding: 4do, desmume, fceumm, mame, mupen64plus, scummvm,
snes9x, stella, picodrive, ppsspp and vba
retroarch:
- added retroarch wrapper for configured cores
- changed attributes, old retroarch is now retroarchBare*
2014-08-26 19:32:35 +02:00
|
|
|
};
|
|
|
|
description = "Port of Stella to libretro";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "make";
|
|
|
|
};
|
|
|
|
|
2015-11-20 15:49:45 +01:00
|
|
|
vba-next = mkLibRetroCore rec {
|
|
|
|
core = "vba-next";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core;
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "e7734756d228ea604f8fa872cea1bba987780791";
|
|
|
|
sha256 = "03s4rh7dbbhbfc4pfdvr9jcbxrp4ijg8yp49s1xhr7sxsblj2vpv";
|
2015-11-20 15:49:45 +01:00
|
|
|
};
|
|
|
|
description = "VBA-M libretro port with modifications for speed";
|
|
|
|
};
|
|
|
|
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
vba-m = (mkLibRetroCore rec {
|
|
|
|
core = "vbam";
|
|
|
|
src = fetchRetro {
|
|
|
|
repo = core + "-libretro";
|
2017-06-04 03:24:18 +02:00
|
|
|
rev = "1b82fc2d761f027567632692f787482d1e287ec2";
|
|
|
|
sha256 = "043djmqvh2grc25hwjw4b5kfx57b89ryp6fcl8v632sm35l3dd6z";
|
Replaced retroarchBare with retroarchBareMaster, also added a few new libretro cores
retroarchBare was too old for any practical use at this point, so it was removed in favor
of fetching releases from git. RetroArch often recommends checkout out the latest git master
if you are on a desktop platform, so we are conforming with their recommendation. I plan on
bumping the git of retroarch and each core every month, and I plan on adding more libretro
cores in the future.
The libretro cores that were added are nestopia, quicknes, snes9x, and vba-m
planned next are : bsnes-accuracy, bsnes-balanced, bsnes-performance, a few libretro mame ports
Closes #4448
2014-10-10 05:11:54 +02:00
|
|
|
};
|
|
|
|
description = "vanilla VBA-M libretro port";
|
|
|
|
}).override {
|
|
|
|
buildPhase = "cd src/libretro && make";
|
|
|
|
};
|
|
|
|
|
2014-10-28 10:08:43 +01:00
|
|
|
}
|