summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/misc/emulators/mupen64plus/default.nix22
-rw-r--r--pkgs/misc/emulators/wxmupen64plus/default.nix28
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 35 insertions, 17 deletions
diff --git a/pkgs/misc/emulators/mupen64plus/default.nix b/pkgs/misc/emulators/mupen64plus/default.nix
index d67121fe430a..0f59da272ff9 100644
--- a/pkgs/misc/emulators/mupen64plus/default.nix
+++ b/pkgs/misc/emulators/mupen64plus/default.nix
@@ -1,28 +1,16 @@
 {stdenv, fetchurl, which, pkgconfig, SDL, gtk, mesa, SDL_ttf}:
 
 stdenv.mkDerivation {
-  name = "mupen64plus-1.5";
+  name = "mupen64plus-1.99.5";
   src = fetchurl {
-    url = http://mupen64plus.googlecode.com/files/Mupen64Plus-1-5-src.tar.gz;
-    sha256 = "0gygfgyr2sg4yx77ijk133d1ra0v1yxi4xjxrg6kp3zdjmhdmcjq";
+    url = https://mupen64plus.googlecode.com/files/mupen64plus-bundle-src-1.99.5.tar.gz;
+    sha1 = "ca80ae446c9591e272e3ec93f0a2a8b01cfcd34e";
   };
   
   buildInputs = [ which pkgconfig SDL gtk mesa SDL_ttf ];
   
-  preConfigure = ''
-    # Some C++ incompatibility fixes
-    sed -i -e 's|char \* extstr = strstr|const char * extstr = strstr|' glide64/Main.cpp
-    sed -i -e 's|char \* extstr = strstr|const char * extstr = strstr|' glide64/Combine.cpp
-
-    # Fix some hardcoded paths
-    sed -i -e "s|/usr/local|$out|g" main/main.c
-
-    # Remove PATH environment variable from install script
-    sed -i -e "s|export PATH=|#export PATH=|" ./install.sh
-  '';
-  
-  buildPhase = "make all";
-  installPhase = "PREFIX=$out make install";
+  buildPhase = "./m64p_build.sh PREFIX=$out COREDIR=$out/lib/ PLUGINDIR=$out/lib/mupen64plus/ SHAREDIR=$out/share/mupen64plus/";
+  installPhase = "./m64p_install.sh PREFIX=$out";
   
   meta = {
     description = "A Nintendo 64 Emulator";
diff --git a/pkgs/misc/emulators/wxmupen64plus/default.nix b/pkgs/misc/emulators/wxmupen64plus/default.nix
new file mode 100644
index 000000000000..a85d0fb389e2
--- /dev/null
+++ b/pkgs/misc/emulators/wxmupen64plus/default.nix
@@ -0,0 +1,28 @@
+{stdenv, fetchurl, python, wxGTK29, mupen64plus, SDL, libX11, mesa}:
+
+stdenv.mkDerivation {
+  name = "wxmupen64plus-0.3";
+  src = fetchurl {
+    url = "https://bitbucket.org/auria/wxmupen64plus/get/0.3.tar.bz2";
+    sha256 = "1mnxi4k011dd300k35li2p6x4wccwi6im21qz8dkznnz397ps67c";
+  };
+  
+  buildInputs = [ python wxGTK29 SDL libX11 mesa ];
+
+  configurePhase = ''
+    tar xf ${mupen64plus.src}
+    APIDIR=$(eval echo `pwd`/mupen64plus*/source/mupen64plus-core/src/api)
+    export CXXFLAGS="-I${libX11}/include/X11 -DLIBDIR=\\\"${mupen64plus}/lib/\\\""
+    export LDFLAGS="-lwx_gtk2u_adv-2.9"
+    python waf configure --mupenapi=$APIDIR --wxconfig=`type -P wx-config` --prefix=$out
+  '';
+
+  buildPhase = "python waf";
+  installPhase = "python waf install";
+  
+  meta = {
+    description = "GUI for the Mupen64Plus 2.0 emulator";
+    license = "GPLv2+";
+    homepage = https://bitbucket.org/auria/wxmupen64plus/wiki/Home;
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index adeea8c13381..15b1aeb4394e 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -8876,6 +8876,8 @@ let
 
   mupen64plus = callPackage ../misc/emulators/mupen64plus { };
 
+  wxmupen64plus = callPackage ../misc/emulators/wxmupen64plus { };
+
   nix = nixStable;
 
   nixStable = callPackage ../tools/package-management/nix {