summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix123
-rw-r--r--pkgs/misc/emulators/retroarch/default.nix40
-rw-r--r--pkgs/misc/emulators/retroarch/master.nix31
-rw-r--r--pkgs/top-level/all-packages.nix10
4 files changed, 112 insertions, 92 deletions
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index db412eb883de..a371e5ab7718 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -9,7 +9,7 @@ let
   stdenv.lib.makeOverridable stdenv.mkDerivation rec {
 
     name = "libretro-${core}-${version}";
-    version = "20140902";
+    version = "20141009";
     inherit src;
 
     buildInputs = [ makeWrapper retroarch zlib ] ++ a.extraBuildInputs or [];
@@ -53,8 +53,8 @@ in
     core = "4do";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "961812bc421f3fbfd83ea211783bb511a0b6d31c";
-      sha256 = "0217iq8sj8gn161c3mj632csl1da8ir2ffxxdillpcddv6ppsayl";
+      rev = "700e5c2b28252ed7d3fb086ab016b3b964a5030a";
+      sha256 = "0wxiapbp6i3r9ir75xgmah0jhrfvy9jgqr6i22grgmnga1qv5pcf";
     };
     description = "Port of 4DO/libfreedo to libretro";
   }).override {
@@ -65,30 +65,32 @@ in
     core = "bsnes-mercury";
     src = fetchRetro {
       repo = core;
-      rev = "cc44e91bfba6f7b3d1d3d51a9fa28b39a579f5e0";
-      sha256 = "0nzwjrbfvzywsimrvp4vbpj7zxf9iwpghd9z7f9f1q027l0vj42f";
+      rev = "5fa7c035a604cd207c5833af0fdd55d7cf68acb0";
+      sha256 = "19drxpspid0y3wi3zp3ls4jlhx1ndqmr51jici7w2vsajk9x9dyg";
     };
     description = "Fork of bsnes with HLE DSP emulation restored";
   }).override {
     buildPhase = "make && cd out";
   };
 
-  desmume = mkLibRetroCore rec {
+  desmume = (mkLibRetroCore rec {
     core = "desmume";
     src = fetchRetro {
-      repo = core + "-libretro";
-      rev = "1dd58e4a9fa375b6909cd8718165a429d4b8bd6d";
-      sha256 = "137bw9316qxm8s6p0bzyvk39dv5b5bn60fgllmyj9z5y8x5lrc9l";
+      repo = core;
+      rev = "57bbabfe71fb8e131fa14ab1504f1959937b8ce5";
+      sha256 = "19kbl361ggzhmmc5alsfwq9gcl0zc9zhz0nx562l6k2lj7fwwr0g";
     };
     description = "libretro wrapper for desmume NDS emulator";
+  }).override {
+    configurePhase = "cd desmume";
   };
 
   fceumm = mkLibRetroCore rec {
     core = "fceumm";
     src = fetchRetro {
       repo = "libretro-" + core;
-      rev = "17e081541c9d36d0658e7139afa5b085aa0316c9";
-      sha256 = "0cn74z976rgjh7hf0yb1sdjlm347157893s2z397rgjvks8xssb0";
+      rev = "1b27f5abafa4ace43badebea82a8374be3a5a96b";
+      sha256 = "04v0in7nazmkfsbvl0wn5klnz4f8rpjsar1v3c07j2qrma42k60w";
     };
     description = "FCEUmm libretro port";
   };
@@ -97,8 +99,8 @@ in
     core = "fba";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "da6355526a9b02a642447994414baababe904c1e";
-      sha256 = "14kba506m9dnldmkpq3vgw416pm7cgc167hgm3f0l59ylp2592ff";
+      rev = "21a78df085a0d964828c5c0940c03e656e2ad808";
+      sha256 = "01ycszinral19ni22a3x8afiz23y9xw6idzx9a22xnc6zqvj0fjm";
     };
     description = "Port of Final Burn Alpha to libretro";
   }).override {
@@ -113,8 +115,8 @@ in
     core = "gambatte";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "267a4e09bf8f0877483abdffde6295f29d7235ee";
-      sha256 = "1swx3mjb6qmlg6grcakhl17vrmy4vdvimxkv5gbv6gnj5riya4vl";
+      rev = "6f3c97d86483368ec446b6b08ae21b1cb644312c";
+      sha256 = "19kbisbl5lqxfsaff4knp2rrl17af21c1kgccxhgp5liqnqk92k5";
     };
     description = "Gambatte libretro port";
   }).override {
@@ -125,8 +127,8 @@ in
     core = "genesis-plus-gx";
     src = fetchRetro {
       repo = "Genesis-Plus-GX";
-      rev = "c0015e27e3ae607ea0490b2accfe31097ef3cbce";
-      sha256 = "1k4b5wib7nqzk53qwvhkh4a70gc4pq7vkrpvmfzp5f2c4vrbw1i7";
+      rev = "d634da83d29d39d293c1aba3c14f6259e13e525e";
+      sha256 = "0mhn2h2wr2kh5rgda5rj7xkmg4b6glg4rnd0f1ak6rp3sh8dfhv1";
     };
     description = "Enhanced Genesis Plus libretro port";
   };
@@ -135,8 +137,8 @@ in
     core = "mupen64plus";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "2251b3aba2a5bb233ff49dd9b6472f2c0feb9b83";
-      sha256 = "04g93kj6n5vddbzfb30d8n711kg0yxfnl5v567aa854misn6gfxd";
+      rev = "021ab383e2ac44533e9babd3e7f5fed97a988225";
+      sha256 = "13hph19b24bbp9d6s8zm4a939dhy96n2fbkcknmsp473kfnm9mf6";
     };
     description = "Libretro port of Mupen64 Plus, GL only";
 
@@ -145,12 +147,24 @@ in
     buildPhase = "make WITH_DYNAREC=${if stdenv.system == "x86_64-linux" then "x86_64" else "x86"}";
   };
 
+  nestopia = (mkLibRetroCore rec {
+    core = "nestopia";
+    src = fetchRetro {
+      repo = core;
+      rev = "3468f3c16c80935e8c4078a5771e9379a981989c";
+      sha256 = "1k9kd25z4hyna48gwxb8rkm9q402xzhw18wmgbzkf8y6zqxn50j0";
+    };
+    description = "nestopia undead libretro port";
+  }).override {
+    buildPhase = "cd libretro && make";
+  };
+
   picodrive = (mkLibRetroCore rec {
     core = "picodrive";
     src = fetchRetro {
       repo = core;
-      rev = "d84817550ac064fbba7ee718fb3baeda7d5546da";
-      sha256 = "17zh9m2v7h1cifzz8dcwqm4wn94zyhz6g85gf0aw6xylxahza627";
+      rev = "3f4b091194d29dd90a3cb88fd6520f677ffece65";
+      sha256 = "0jb89g5xmq7nzx4gm1mam1hym20fcyzp95k9as0k2gnwxrd4ymxv";
     };
     description = "Fast MegaDrive/MegaCD/32X emulator";
 
@@ -164,8 +178,8 @@ in
     core = "prboom";
     src = fetchRetro {
       repo = "libretro-" + core;
-      rev = "de2f0a0fab1a73a28cd501fdb9291ffc7dc357f5";
-      sha256 = "01gxa6hh9vijic2n44q1lndhdyw0kdpmajabs0nizn7bni51b29c";
+      rev = "7c5e74a8f8a973278d46604f2816aae538e9cce7";
+      sha256 = "1mkxc7zcyc2nj7spsrasbnz6k182g8i1snahbbwj4qi41db6cjc9";
     };
     description = "Prboom libretro port";
   }).override {
@@ -176,13 +190,25 @@ in
     core = "ppsspp";
     src = fetchRetro {
       repo = "libretro-" + core;
-      rev = "6ee828171218b26e124c5e8fa7877e6ee1d5ff79";
-      sha256 = "1559d4k3h0a2dv3684j4w924p2dg8z2j1fwhy7w9mhb5z4kddjhk";
+      rev = "af5050be6b421e08be42d4edf0015693ceba1f06";
+      sha256 = "0h4crdq6n6npbv6sidp3bgz5g2z3ws6ikg37f0amshh3rj36p7q0";
     };
     description = "ppsspp libretro port";
 
     extraBuildInputs = [ mesa ffmpeg ];
-  }).override{
+  }).override {
+    buildPhase = "cd libretro && make";
+  };
+
+  quicknes = (mkLibRetroCore rec {
+    core = "quicknes";
+    src = fetchRetro {
+      repo = "QuickNES_Core";
+      rev = "3e8935cc937d3bf64dc44b63cef5d584ec2673fa";
+      sha256 = "003hrxkskrkqv5h39p4gd9mg2k3ki5l1cmm0kxq7c454yliljjxc";
+    };
+    description = "QuickNES libretro port";
+  }).override {
     buildPhase = "cd libretro && make";
   };
 
@@ -190,22 +216,34 @@ in
     core = "scummvm";
     src = fetchRetro {
       repo = core;
-      rev = "c00247171ba8201614e85556c638b8825dc9f225";
-      sha256 = "1wir3x928b37va6gn14bmwsydkpk4afma5hppmbivw4qp8mj25pa";
+      rev = "0a703f6546c5a0d8ef835aa624681f7877c36df6";
+      sha256 = "1v1a6zvc1sjvvnvcarcmdym7qwyqyvl4b6ianjgzbpaxwmw457g0";
     };
     description = "Libretro port of ScummVM";
 
     extraBuildInputs = [ fluidsynth libjpeg libvorbis mesa SDL ];
   }).override {
-    buildPhase = "cd backends/platform/libretro/build/;make";
+    buildPhase = "cd backends/platform/libretro/build && make";
+  };
+
+  snes9x = (mkLibRetroCore rec {
+    core = "snes9x";
+    src = fetchRetro {
+      repo = core;
+      rev = "0724786eb2ed1436946a2e2b42c77cddf8412a63";
+      sha256 = "15wnq12mkfz766dzafhlmmh8a8b463ybssj84fhijj8c1x75scd1";
+    };
+    description = " Port of SNES9x git to libretro";
+  }).override {
+    buildPhase = "cd libretro && make";
   };
 
   snes9x-next = mkLibRetroCore rec {
     core = "snes9x-next";
     src = fetchRetro {
       repo = core;
-      rev = "461d92be09e1857d215f51aeea448a8e180bbfdd";
-      sha256 = "0ci453qsyrv3brmy2szngis2xyvxilcv9yhc2qjz285mirg6fj57";
+      rev = "c701a1e4357bc80e46cae5bdfa0d359bcbce23ad";
+      sha256 = "0410dj7rxcadvyghc1yqwqidn1g3scm52i3gb9d8haymg9q1zbjs";
     };
     description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
   };
@@ -214,22 +252,33 @@ in
     core = "stella";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "c7ee7ca7e8a29c986f49306c75832972f5749f72";
-      sha256 = "15wy9h3a2qk66lh8x40b3a9il0zkdflqil1h51zjmhq2zzsq8p95";
+      rev = "394ef8c10b8057fe3f92ff9d7c73886ae2eefec2";
+      sha256 = "1a5m157fqpspi2zafmqhcd6864dvfpwh44d4n47ngswp6ii9bq0f";
     };
     description = "Port of Stella to libretro";
   }).override {
     buildPhase = "make";
   };
 
+  vba-m = (mkLibRetroCore rec {
+    core = "vbam";
+    src = fetchRetro {
+      repo = core + "-libretro";
+      rev = "26a030ce01a6473d35bac2a6db4f0a360989d72f";
+      sha256 = "065gljk2nijnjg2c2zbnpg25s5zam7x0z8lq7kbz9zb87sp73ha1";
+    };
+    description = "vanilla VBA-M libretro port";
+  }).override {
+    buildPhase = "cd src/libretro && make";
+  };
+
   vba-next = mkLibRetroCore rec {
     core = "vba-next";
     src = fetchRetro {
       repo = core;
-      rev = "fb095107f83df5f93b8ba4833eaf43901f42c0c0";
-      sha256 = "0fvq1dfll27vjbmyh4qsp2nw166jsd91sjmf1sl84z56ab3q3iw8";
+      rev = "136fe2020e941f27036754dd0524bfec750025dc";
+      sha256 = "17bvx2wp2r5lkgffvqrirhgic1bfy39m7c1v74z245hg6z1jvqcf";
     };
-    description = "VBA-M libretro port";
+    description = "VBA-M libretro port with modifications for speed";
   };
-
 }
\ No newline at end of file
diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix
index d110f2b789e2..616fab44d6fc 100644
--- a/pkgs/misc/emulators/retroarch/default.nix
+++ b/pkgs/misc/emulators/retroarch/default.nix
@@ -1,31 +1,31 @@
-{ stdenv, fetchgit, pkgconfig, which
-, SDL, mesa, alsaLib
-, libXxf86vm, libXinerama, libXv
-}:
+{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit
+, freetype, libxml2, libv4l, coreutils, python34, which, udev, alsaLib
+, libX11, libXext, libXxf86vm, libXdmcp, SDL, pulseaudio ? null }:
 
 stdenv.mkDerivation rec {
-  name = "retroarch-bare-0.9.9.7";
+  name = "retroarch-bare-${version}";
+  version = "20141009";
 
   src = fetchgit {
-    url = "https://github.com/libretro/RetroArch.git";
-    rev = "ea0c4880556e0f9d1fe8253ddc713bc743b00e1b";
-    sha256 = "1jhyh7f8ijy67fxslxqsp8pjl2lwayjljp06hp4n5cn33yajpbd7";
+    url = git://github.com/libretro/RetroArch.git;
+    rev = "72f26dfb49f236294c52eb9cb4c9d5c15da4837a";
+    sha256 = "0dn9fh1frnbxykhw3q229ck50a800p8r4va8nssfcdxh8cys385w";
   };
 
-  buildInputs = [
-    pkgconfig which SDL mesa alsaLib
-    libXxf86vm libXinerama libXv
-  ];
+  buildInputs = [ pkgconfig ffmpeg mesa nvidia_cg_toolkit freetype libxml2 libv4l coreutils
+                  python34 which udev alsaLib libX11 libXext libXxf86vm libXdmcp SDL pulseaudio ];
 
-  preConfigure = ''
-    configureFlags="--global-config-dir=$out/etc"
+  patchPhase = ''
+    export GLOBAL_CONFIG_DIR=$out/etc
+    sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh
   '';
 
-  meta = {
-    description = "Modular multi-system game/emulator system";
-    homepage = "http://www.libretro.com/";
-    license = stdenv.lib.licenses.gpl3Plus;
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ iyzsong ];
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://libretro.org/;
+    description = "Multi-platform emulator frontend for libretro cores";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ MP2E ];
   };
 }
diff --git a/pkgs/misc/emulators/retroarch/master.nix b/pkgs/misc/emulators/retroarch/master.nix
deleted file mode 100644
index 2efb43e5d5ee..000000000000
--- a/pkgs/misc/emulators/retroarch/master.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit
-, freetype, libxml2, libv4l, coreutils, python34, which, udev, alsaLib
-, libX11, libXext, libXxf86vm, libXdmcp, SDL, pulseaudio ? null }:
-
-stdenv.mkDerivation rec {
-  name = "retroarch-bare-${version}";
-  version = "20140902";
-
-  src = fetchgit {
-    url = git://github.com/libretro/RetroArch.git;
-    rev = "0856091296c2e47409f36e13007805d71db69483";
-    sha256 = "152dfp6jd7yzvasqrqw4ydjbdcwq4khisia2dax3gydvxkq87nl4";
-  };
-
-  buildInputs = [ pkgconfig ffmpeg mesa nvidia_cg_toolkit freetype libxml2 libv4l coreutils
-                  python34 which udev alsaLib libX11 libXext libXxf86vm libXdmcp SDL pulseaudio ];
-
-  patchPhase = ''
-    export GLOBAL_CONFIG_DIR=$out/etc
-    sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh
-  '';
-
-  enableParallelBuilding = true;
-
-  meta = with stdenv.lib; {
-    homepage = http://libretro.org/;
-    description = "Multi-platform emulator frontend for libretro cores";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ MP2E ];
-  };
-}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 9287b0eb310a..a9f3c1cc84cf 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -10670,13 +10670,17 @@ let
       ++ optional (cfg.enableGambatte or false) gambatte
       ++ optional (cfg.enableGenesisPlusGX or false) genesis-plus-gx
       ++ optional (cfg.enableMupen64Plus or false) mupen64plus
+      ++ optional (cfg.enableNestopia or false) nestopia
       ++ optional (cfg.enablePicodrive or false) picodrive
       ++ optional (cfg.enablePrboom or false) prboom
       ++ optional (cfg.enablePPSSPP or false) ppsspp
+      ++ optional (cfg.enableQuickNES or false) quicknes
       ++ optional (cfg.enableScummVM or false) scummvm
+      ++ optional (cfg.enableSnes9x or false) snes9x
       ++ optional (cfg.enableSnes9xNext or false) snes9x-next
       ++ optional (cfg.enableStella or false) stella
       ++ optional (cfg.enableVbaNext or false) vba-next
+      ++ optional (cfg.enableVbaM or false) vba-m
       );
 
   wrapRetroArch = { retroarch }: import ../misc/emulators/retroarch/wrapper.nix {
@@ -12053,12 +12057,10 @@ let
 
   retroarchBare = callPackage ../misc/emulators/retroarch { };
 
-  retroarchBareMaster = callPackage ../misc/emulators/retroarch/master.nix { };
-
-  retroarch = wrapRetroArch { retroarch = retroarchBareMaster; };
+  retroarch = wrapRetroArch { retroarch = retroarchBare; };
 
   libretro = recurseIntoAttrs (callPackage ../misc/emulators/retroarch/cores.nix {
-    retroarch = retroarchBareMaster;
+    retroarch = retroarchBare;
   });
 
   rssglx = callPackage ../misc/screensavers/rss-glx { };