retrofe: init at 0.6.169

wip/yesman
Christoph Hrdinka 8 years ago
parent 98a0484471
commit d1c35db920
  1. 79
      pkgs/misc/emulators/retrofe/default.nix
  2. 11
      pkgs/misc/emulators/retrofe/include-paths.patch
  3. 2
      pkgs/top-level/all-packages.nix

@ -0,0 +1,79 @@
{ stdenv, fetchhg, cmake, dos2unix, glib, gst_all_1, makeWrapper, pkgconfig
, python, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, sqlite, zlib
}:
let
gstPlugins = with gst_all_1; [ gst-libav gst-plugins-base gst-plugins-good ];
GST_PLUGIN_PATH = stdenv.lib.makeSearchPath "lib/gstreamer-1.0" gstPlugins;
in stdenv.mkDerivation rec {
name = "retrofe-${version}";
version = "0.6.169";
src = fetchhg {
url = https://bitbucket.org/teamretro/retrofe;
rev = "8793e03";
sha256 = "0cvsg07ff0fdqh5zgiv2fs7s6c98hn150kpxmpw5fn6jilaszwkm";
};
nativeBuildInputs = [ cmake makeWrapper pkgconfig python ];
buildInputs = [
glib gst_all_1.gstreamer SDL2 SDL2_image SDL2_mixer SDL2_ttf sqlite zlib
] ++ gstPlugins;
patches = [ ./include-paths.patch ];
configurePhase = ''
cmake RetroFE/Source -BRetroFE/Build -DCMAKE_BUILD_TYPE=Release \
-DVERSION_MAJOR=0 -DVERSION_MINOR=0 -DVERSION_BUILD=0 \
-DGSTREAMER_BASE_INCLUDE_DIRS='${gst_all_1.gst-plugins-base}/include/gstreamer-1.0'
'';
buildPhase = ''
cmake --build RetroFE/Build
python Scripts/Package.py --os=linux --build=full
'';
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/retrofe
cp -r Artifacts/linux/RetroFE $out/share/retrofe/example
mv $out/share/retrofe/example/retrofe $out/bin/
cat > $out/bin/retrofe-init << EOF
#!/bin/sh
echo "This will install retrofe's example files into this directory"
echo "Example files location: $out/share/retrofe/example/"
while true; do
read -p "Do you want to proceed? [yn] " yn
case \$yn in
[Yy]* ) cp -r --no-preserve=all $out/share/retrofe/example/* .; break;;
[Nn]* ) exit;;
* ) echo "Please answer with yes or no.";;
esac
done
EOF
chmod +x $out/bin/retrofe-init
'';
# retrofe will look for config files in its install path ($out/bin).
# When set it will use $RETROFE_PATH instead. Sadly this behaviour isn't
# documented well. To make it behave more like as expected it's set to
# $PWD by default here.
fixupPhase = ''
wrapProgram "$out/bin/retrofe" \
--prefix GST_PLUGIN_PATH : '${GST_PLUGIN_PATH}/lib/gstreamer-1.0' \
--set RETROFE_PATH "\''${RETROFE_PATH:-\$PWD}"
'';
meta = with stdenv.lib; {
description = "A frontend for arcade cabinets and media PCs";
license = licenses.gpl3Plus;
homepage = http://retrofe.com;
maintainers = with maintainers; [ hrdinka ];
};
}

@ -0,0 +1,11 @@
diff -ur RetroFE.1/RetroFE/Source/CMakeLists.txt RetroFE.2/RetroFE/Source/CMakeLists.txt
--- RetroFE.1/RetroFE/Source/CMakeLists.txt 2016-02-21 14:52:36.726070602 +0100
+++ RetroFE.2/RetroFE/Source/CMakeLists.txt 2016-02-21 14:38:43.036249029 +0100
@@ -59,6 +59,7 @@
set(RETROFE_INCLUDE_DIRS
"${GLIB2_INCLUDE_DIRS}"
"${GSTREAMER_INCLUDE_DIRS}"
+ "${GSTREAMER_BASE_INCLUDE_DIRS}"
"${SDL2_INCLUDE_DIRS}"
"${SDL2_IMAGE_INCLUDE_DIRS}"
"${SDL2_MIXER_INCLUDE_DIRS}"

@ -15903,6 +15903,8 @@ let
retroarch = retroarchBare;
});
retrofe = callPackage ../misc/emulators/retrofe { };
rss-glx = callPackage ../misc/screensavers/rss-glx { };
runit = callPackage ../tools/system/runit { };

Loading…
Cancel
Save