about summary refs log tree commit diff
path: root/pkgs/misc/emulators
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-03-15 01:44:24 +0000
committerRobin Gloster <mail@glob.in>2016-03-15 01:44:24 +0000
commit3f45f0948d6fe158bed063adb66850ded0ba4861 (patch)
treeac717689d391d3f5333132fc34e4b2aed829414c /pkgs/misc/emulators
parenta9b942c0617b1cd5f0732d05eadad0114a178f37 (diff)
parentd227d9a70e41d65e4e6f4ac75a9d243c5a19fa85 (diff)
downloadnixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.tar
nixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.tar.gz
nixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.tar.bz2
nixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.tar.lz
nixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.tar.xz
nixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.tar.zst
nixlib-3f45f0948d6fe158bed063adb66850ded0ba4861.zip
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'pkgs/misc/emulators')
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix12
-rw-r--r--pkgs/misc/emulators/retroarch/default.nix24
-rw-r--r--pkgs/misc/emulators/retroarch/wrapper.nix3
3 files changed, 38 insertions, 1 deletions
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index 332357e317e3..35a55a8933ad 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -158,6 +158,18 @@ in
     buildPhase = "make";
   };
 
+  mednafen-psx = (mkLibRetroCore rec {
+    core = "mednafen-psx";
+    src = fetchRetro {
+      repo = "beetle-psx-libretro";
+      rev = "20c9b0eb0062b8768cc40aca0e2b2d626f1002a2";
+      sha256 = "1dhql8zy9wv55m1lgvqv412087cqmlw7zwcsmxkl3r4z199dsh3m";
+    };
+    description = "Port of Mednafen's PSX Engine core to libretro";
+  }).override {
+    buildPhase = "make";
+  };
+
   mupen64plus = (mkLibRetroCore rec {
     core = "mupen64plus";
     src = fetchRetro {
diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix
index bdac2980a39a..87fb854c8448 100644
--- a/pkgs/misc/emulators/retroarch/default.nix
+++ b/pkgs/misc/emulators/retroarch/default.nix
@@ -1,7 +1,21 @@
-{ stdenv, fetchgit, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit
+{ stdenv, fetchgit, makeDesktopItem, pkgconfig, ffmpeg, mesa, nvidia_cg_toolkit
 , freetype, libxml2, libv4l, coreutils, python34, which, udev, alsaLib
 , libX11, libXext, libXxf86vm, libXdmcp, SDL, libpulseaudio ? null }:
 
+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 = "2015-11-20";
@@ -20,6 +34,14 @@ stdenv.mkDerivation rec {
     sed -e 's#/bin/true#${coreutils}/bin/true#' -i qb/qb.libs.sh
   '';
 
+  postInstall = ''
+    mkdir -p $out/share/icons/hicolor/scalable/apps
+    cp -p -T ./media/retroarch.svg $out/share/icons/hicolor/scalable/apps/retroarch.svg
+
+    mkdir -p "$out/share/applications"
+    cp ${desktopItem}/share/applications/* $out/share/applications
+  '';
+
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/misc/emulators/retroarch/wrapper.nix b/pkgs/misc/emulators/retroarch/wrapper.nix
index f7e903ef5290..e6eb930695a2 100644
--- a/pkgs/misc/emulators/retroarch/wrapper.nix
+++ b/pkgs/misc/emulators/retroarch/wrapper.nix
@@ -18,6 +18,9 @@ stdenv.mkDerivation {
     do
       $(ln -s $coreDir/*.so $out/lib/.)
     done)
+
+    ln -s -t $out ${retroarch}/share
+
     makeWrapper ${retroarch}/bin/retroarch $out/bin/retroarch \
       --suffix-each LD_LIBRARY_PATH ':' "$cores" \
       --add-flags "-L $out/lib/ --menu" \