tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
retrofe: init at 0.6.169
Christoph Hrdinka
10 years ago
d1c35db9
98a04844
+92
3 changed files
expand all
collapse all
unified
split
pkgs
misc
emulators
retrofe
default.nix
include-paths.patch
top-level
all-packages.nix
+79
pkgs/misc/emulators/retrofe/default.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ stdenv, fetchhg, cmake, dos2unix, glib, gst_all_1, makeWrapper, pkgconfig
2
+
, python, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, sqlite, zlib
3
+
}:
4
+
5
+
let
6
+
gstPlugins = with gst_all_1; [ gst-libav gst-plugins-base gst-plugins-good ];
7
+
GST_PLUGIN_PATH = stdenv.lib.makeSearchPath "lib/gstreamer-1.0" gstPlugins;
8
+
9
+
in stdenv.mkDerivation rec {
10
+
name = "retrofe-${version}";
11
+
version = "0.6.169";
12
+
13
+
src = fetchhg {
14
+
url = https://bitbucket.org/teamretro/retrofe;
15
+
rev = "8793e03";
16
+
sha256 = "0cvsg07ff0fdqh5zgiv2fs7s6c98hn150kpxmpw5fn6jilaszwkm";
17
+
};
18
+
19
+
nativeBuildInputs = [ cmake makeWrapper pkgconfig python ];
20
+
21
+
buildInputs = [
22
+
glib gst_all_1.gstreamer SDL2 SDL2_image SDL2_mixer SDL2_ttf sqlite zlib
23
+
] ++ gstPlugins;
24
+
25
+
patches = [ ./include-paths.patch ];
26
+
27
+
configurePhase = ''
28
+
cmake RetroFE/Source -BRetroFE/Build -DCMAKE_BUILD_TYPE=Release \
29
+
-DVERSION_MAJOR=0 -DVERSION_MINOR=0 -DVERSION_BUILD=0 \
30
+
-DGSTREAMER_BASE_INCLUDE_DIRS='${gst_all_1.gst-plugins-base}/include/gstreamer-1.0'
31
+
'';
32
+
33
+
buildPhase = ''
34
+
cmake --build RetroFE/Build
35
+
python Scripts/Package.py --os=linux --build=full
36
+
'';
37
+
38
+
installPhase = ''
39
+
mkdir -p $out/bin
40
+
mkdir -p $out/share/retrofe
41
+
cp -r Artifacts/linux/RetroFE $out/share/retrofe/example
42
+
mv $out/share/retrofe/example/retrofe $out/bin/
43
+
44
+
cat > $out/bin/retrofe-init << EOF
45
+
#!/bin/sh
46
+
47
+
echo "This will install retrofe's example files into this directory"
48
+
echo "Example files location: $out/share/retrofe/example/"
49
+
50
+
while true; do
51
+
read -p "Do you want to proceed? [yn] " yn
52
+
case \$yn in
53
+
[Yy]* ) cp -r --no-preserve=all $out/share/retrofe/example/* .; break;;
54
+
[Nn]* ) exit;;
55
+
* ) echo "Please answer with yes or no.";;
56
+
esac
57
+
done
58
+
EOF
59
+
60
+
chmod +x $out/bin/retrofe-init
61
+
'';
62
+
63
+
# retrofe will look for config files in its install path ($out/bin).
64
+
# When set it will use $RETROFE_PATH instead. Sadly this behaviour isn't
65
+
# documented well. To make it behave more like as expected it's set to
66
+
# $PWD by default here.
67
+
fixupPhase = ''
68
+
wrapProgram "$out/bin/retrofe" \
69
+
--prefix GST_PLUGIN_PATH : '${GST_PLUGIN_PATH}/lib/gstreamer-1.0' \
70
+
--set RETROFE_PATH "\''${RETROFE_PATH:-\$PWD}"
71
+
'';
72
+
73
+
meta = with stdenv.lib; {
74
+
description = "A frontend for arcade cabinets and media PCs";
75
+
license = licenses.gpl3Plus;
76
+
homepage = http://retrofe.com;
77
+
maintainers = with maintainers; [ hrdinka ];
78
+
};
79
+
}
+11
pkgs/misc/emulators/retrofe/include-paths.patch
···
0
0
0
0
0
0
0
0
0
0
0
···
1
+
diff -ur RetroFE.1/RetroFE/Source/CMakeLists.txt RetroFE.2/RetroFE/Source/CMakeLists.txt
2
+
--- RetroFE.1/RetroFE/Source/CMakeLists.txt 2016-02-21 14:52:36.726070602 +0100
3
+
+++ RetroFE.2/RetroFE/Source/CMakeLists.txt 2016-02-21 14:38:43.036249029 +0100
4
+
@@ -59,6 +59,7 @@
5
+
set(RETROFE_INCLUDE_DIRS
6
+
"${GLIB2_INCLUDE_DIRS}"
7
+
"${GSTREAMER_INCLUDE_DIRS}"
8
+
+ "${GSTREAMER_BASE_INCLUDE_DIRS}"
9
+
"${SDL2_INCLUDE_DIRS}"
10
+
"${SDL2_IMAGE_INCLUDE_DIRS}"
11
+
"${SDL2_MIXER_INCLUDE_DIRS}"
+2
pkgs/top-level/all-packages.nix
···
15903
retroarch = retroarchBare;
15904
});
15905
0
0
15906
rss-glx = callPackage ../misc/screensavers/rss-glx { };
15907
15908
runit = callPackage ../tools/system/runit { };
···
15903
retroarch = retroarchBare;
15904
});
15905
15906
+
retrofe = callPackage ../misc/emulators/retrofe { };
15907
+
15908
rss-glx = callPackage ../misc/screensavers/rss-glx { };
15909
15910
runit = callPackage ../tools/system/runit { };