Merge branch 'master'

This commit is contained in:
Vladimír Čunát
2018-03-05 14:53:27 +01:00
1666 changed files with 26733 additions and 31238 deletions
+29
View File
@@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub, libpng, pkgconfig, SDL, freetype, zlib, mesa }:
stdenv.mkDerivation rec {
repo = "caprice32";
version = "unstable-2018-02-10";
rev = "53de69543300f81af85df32cbd21bb5c68cab61e";
name = "${repo}-${version}";
src = fetchFromGitHub {
inherit rev repo;
owner = "ColinPitrat";
sha256 = "12yv56blm49qmshpk4mgc802bs51wv2ra87hmcbf2wxma39c45fy";
};
postPatch = "substituteInPlace cap32.cfg --replace /usr/local $out";
meta = with stdenv.lib; {
description = "A complete emulation of CPC464, CPC664 and CPC6128";
homepage = https://github.com/ColinPitrat/caprice32 ;
license = licenses.gpl2;
maintainers = [ maintainers.genesis ];
platforms = platforms.linux;
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libpng SDL freetype zlib ];
makeFlags = [ "GIT_HASH=${src.rev}" "DESTDIR=$(out)" "prefix=/"];
}
+3 -3
View File
@@ -1,13 +1,13 @@
{ stdenv, fetchgit, cmake, SDL2, qtbase, boost, curl, gtest }:
stdenv.mkDerivation rec {
name = "citra-2018-01-24";
name = "citra-2018-02-23";
# Submodules
src = fetchgit {
url = "https://github.com/citra-emu/citra";
rev = "33b0b5163fdb08bc8aa1d7eb83e0931a14ed3046";
sha256 = "07z32d8lj84yy3l5iqpk37mnmvzjmppqhyqr64kbx14dh5hb6cbj";
rev = "e51a642a13b9c2eda43d875fe318f627e11d480f";
sha256 = "0cw9cqbljc87rjyr2alfryp04mxpvd5mdlyrmnp9yis3xr8g9sa1";
};
nativeBuildInputs = [ cmake ];
+4 -2
View File
@@ -3,7 +3,7 @@
, libXmu
, lua
, agg, alsaLib, soundtouch, openal
, desktop_file_utils
, desktop-file-utils
, gtk2, gtkglext, libglade, pangox_compat
, libGLU, libpcap, SDL, zziplib }:
@@ -26,9 +26,11 @@ stdenv.mkDerivation rec {
})
];
CXXFLAGS = "-fpermissive";
buildInputs =
[ pkgconfig libtool intltool libXmu lua agg alsaLib soundtouch
openal desktop_file_utils gtk2 gtkglext libglade pangox_compat
openal desktop-file-utils gtk2 gtkglext libglade pangox_compat
libGLU libpcap SDL zziplib ];
configureFlags = [
+3 -3
View File
@@ -1,11 +1,11 @@
{stdenv, fetchurl, scons, zlib, SDL, lua5_1, pkgconfig}:
stdenv.mkDerivation {
name = "fceux-2.2.2";
name = "fceux-2.2.3";
src = fetchurl {
url = mirror://sourceforge/fceultra/Source%20Code/2.2.2%20src/fceux-2.2.2.src.tar.gz;
sha256 = "1qg5bygla8ka30b7wqvq6dv84xc7pq0jspffh2jz75d1njyi2kc0";
url = mirror://sourceforge/fceultra/Source%20Code/2.2.3%20src/fceux-2.2.3.src.tar.gz;
sha256 = "0gl2i3qdmcm7v9m5kpfz98w05d8m33990jiwka043ya7lflxvrjb";
};
nativeBuildInputs = [ pkgconfig ];
+3 -3
View File
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, zlib, SDL, cmake }:
stdenv.mkDerivation rec {
name = "hatari-1.8.0";
name = "hatari-2.1.0";
src = fetchurl {
url = "http://download.tuxfamily.org/hatari/1.8.0/${name}.tar.bz2";
sha256 = "1szznnndmbyc71751hir3dhybmbrx3rnxs6klgbv9qvqlmmlikvy";
url = "http://download.tuxfamily.org/hatari/2.1.0/${name}.tar.bz2";
sha256 = "0909l9fq20ninf8xgv5qf0a5y64cpk5ja1rsk2iaid1dx5h98agb";
};
# For pthread_cancel
+19
View File
@@ -0,0 +1,19 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "libdsk-${version}";
version = "1.5.8";
src = fetchurl {
url = "http://www.seasip.info/Unix/LibDsk/${name}.tar.gz";
sha256 = "1fdypk6gjkb4i2ghnbn3va50y69pdym51jx3iz9jns4636z4sfqd";
};
meta = with stdenv.lib; {
description = "A library for accessing discs and disc image files";
homepage = http://www.seasip.info/Unix/LibDsk/;
license = licenses.gpl2Plus;
maintainers = [ maintainers.genesis ];
platforms = platforms.linux;
};
}
+2 -3
View File
@@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, SDL2, alsaLib, gtk3, libGLU
, makeWrapper, libGLU_combined, libarchive, libao, unzip, xdg_utils, gsettings_desktop_schemas
{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, SDL2, alsaLib, gtk3
, makeWrapper, libGLU_combined, libarchive, libao, unzip, xdg_utils, gsettings-desktop-schemas
, epoxy, gdk_pixbuf, gnome3, wrapGAppsHook
}:
@@ -25,7 +25,6 @@ stdenv.mkDerivation rec {
epoxy
gtk3
gdk_pixbuf
libGLU
libGLU_combined
libarchive
libao
+46 -4
View File
@@ -1,4 +1,4 @@
{ stdenv, fetchgit, cmake, pkgconfig, makeWrapper, python27, retroarch
{ stdenv, fetchgit, fetchFromGitLab, cmake, pkgconfig, makeWrapper, python27, retroarch
, alsaLib, fluidsynth, curl, hidapi, libGLU_combined, gettext, glib, gtk2, portaudio, SDL
, ffmpeg, pcre, libevdev, libpng, libjpeg, libudev, libvorbis
, miniupnpc, sfml, xorg, zlib }:
@@ -7,7 +7,7 @@ let
d2u = stdenv.lib.replaceChars ["-"] ["_"];
mkLibRetroCore = ({ core, src, description, ... }@a:
mkLibRetroCore = ({ core, src, description, license, ... }@a:
stdenv.lib.makeOverridable stdenv.mkDerivation rec {
name = "libretro-${core}-${version}";
@@ -37,7 +37,7 @@ let
meta = with stdenv.lib; {
inherit description;
homepage = https://www.libretro.com/;
license = licenses.gpl3Plus;
inherit license;
maintainers = with maintainers; [ edwtjo hrdinka MP2E ];
platforms = platforms.linux;
};
@@ -50,7 +50,7 @@ let
fetchSubmodules = true;
};
in
in with stdenv.lib.licenses;
{
@@ -62,6 +62,7 @@ in
sha256 = "1n42f70vni2zavppayaq8xmsyx5cn40qi4zk4pgq1w3hh2q8mj72";
};
description = "Port of 4DO/libfreedo to libretro";
license = "Non-commercial";
}).override {
buildPhase = "make";
};
@@ -74,6 +75,7 @@ in
sha256 = "0p0k7kqfd6xg1qh6vgzgwp122miprb2bpzljgxd9kvigxihsl6f7";
};
description = "Port of Mednafen's PC Engine core to libretro";
license = gpl2;
}).override {
buildPhase = "make";
name = "beetle-pce-fast";
@@ -87,6 +89,7 @@ in
sha256 = "1k4b7g50ajzchjrm6d3v68hvri4k3hzvacn2l99i5yq3hxp7vs7x";
};
description = "Port of Mednafen's PSX Engine core to libretro";
license = gpl2;
}).override {
buildPhase = "make";
name = "beetle-psx";
@@ -100,6 +103,7 @@ in
sha256 = "1d1brysynwr6inlwfgv7gwkl3i9mf4lsaxd9wm2szw86g4diyn4c";
};
description = "Port of Mednafen's Saturn core to libretro";
license = gpl2;
}).override {
buildPhase = "make";
name = "beetle-saturn";
@@ -114,6 +118,7 @@ in
sha256 = "0vkn1f38vwazpp3kbvvv8c467ghak6yfx00s48wkxwvhmak74a3s";
};
description = "Fork of bsnes with HLE DSP emulation restored";
license = gpl3;
}).override {
buildPhase = "make && cd out";
};
@@ -126,6 +131,7 @@ in
sha256 = "064gzfbr7yizmvi91ry5y6bzikj633kdqhvzycb9f1g6kspf8yyl";
};
description = "libretro wrapper for desmume NDS emulator";
license = gpl2;
}).override {
configurePhase = "cd desmume";
};
@@ -138,6 +144,7 @@ in
sha256 = "1cshlfmhph8dl3vgvn37imvp2b7xs2cx1r1ifp5js5psvhycrbz3";
};
description = "Port of Dolphin to libretro";
license = gpl2Plus;
extraBuildInputs = [
cmake curl libGLU_combined pcre pkgconfig sfml miniupnpc
@@ -166,6 +173,7 @@ in
sha256 = "159dww8mxi95xz4ypw38vsn1g4k6z8sv415qqf0qriydwhw6mh2m";
};
description = "Port of Final Burn Alpha to libretro";
license = "Non-commercial";
}).override {
buildPhase = ''
cd svn-current/trunk \
@@ -182,6 +190,7 @@ in
sha256 = "0jnwh1338q710x47bzrx319g5xbq9ipv35kyjlbkrzhqjq1blz0b";
};
description = "FCEUmm libretro port";
license = gpl2;
};
gambatte = mkLibRetroCore rec {
@@ -192,6 +201,7 @@ in
sha256 = "0h7hyj630nk1s32wx02y4q9x2lp6wbnh6nkc9ihf4pygcsignmwr";
};
description = "Gambatte libretro port";
license = gpl2;
};
genesis-plus-gx = mkLibRetroCore rec {
@@ -202,6 +212,22 @@ in
sha256 = "0s11ddpnb44q4xjkl7dylldhi9y5zqywqavpk0bbwyj84r1cbz3c";
};
description = "Enhanced Genesis Plus libretro port";
license = "Non-commercial";
};
higan-sfc = (mkLibRetroCore rec {
core = "higan-sfc";
src = fetchFromGitLab {
owner = "higan";
repo = "higan";
rev = "d3f592013a27cb78f17d84f90a6be6cf6f6af1d1";
sha256 = "19d4cbwg8d085xq5lmql4v5l4ckgwqzc59ha5yfgv3w4qfp4dmij";
};
description = "Accurate SNES / Super Famicom emulator";
license = gpl3;
}).override {
makefile = "GNUmakefile";
buildPhase = "cd higan && make compiler=g++ target=libretro binary=library && cd out";
};
mame = (mkLibRetroCore {
@@ -212,6 +238,7 @@ in
sha256 = "0blfvq28hgv9kkpijd8c9d9sa5g2qr448clwi7wrj8kqfdnrr8m1";
};
description = "Port of MAME to libretro";
license = gpl2Plus;
extraBuildInputs = [ alsaLib libGLU_combined portaudio python27 xorg.libX11 ];
}).override {
@@ -230,6 +257,7 @@ in
sha256 = "1b30sa861r4bhbqkx6vkklh4iy625bpzki2ks4ivvjns1ijczvc7";
};
description = "Port of mGBA to libretro";
license = mpl20;
};
mupen64plus = (mkLibRetroCore rec {
@@ -240,6 +268,7 @@ in
sha256 = "0q5kvjz7rpk7mp75cdywqjgmy10c0h7ky26hh1x90d39y94idcd8";
};
description = "Libretro port of Mupen64 Plus, GL only";
license = gpl2;
extraBuildInputs = [ libGLU_combined libpng ];
}).override {
@@ -254,6 +283,7 @@ in
sha256 = "17ac7dhasch6f4lpill8c5scsvaix0jvbf1cp797qbll4hk84f2q";
};
description = "nestopia undead libretro port";
license = gpl2;
}).override {
buildPhase = "cd libretro && make";
};
@@ -266,6 +296,7 @@ in
sha256 = "19396v50azrb52ifjk298zgcbxn8dvfvp6zwrnzsk6mp8ff7qcqw";
};
description = "Parallel Mupen64plus rewrite for libretro.";
license = gpl2;
extraBuildInputs = [ libGLU_combined libpng ];
}).override {
@@ -280,6 +311,7 @@ in
sha256 = "0fl9r6jj2x9231md5zc4scra79j5hfn1n2z67scff1375xg1k64h";
};
description = "Fast MegaDrive/MegaCD/32X emulator";
license = "MAME";
extraBuildInputs = [ libpng SDL ];
}).override {
@@ -295,6 +327,7 @@ in
sha256 = "06k1gzmypz61dslynrw4b5i161rhj43y6wnr2nhbzvwcv5bw8w8r";
};
description = "ppsspp libretro port";
license = gpl2;
extraBuildInputs = [ libGLU_combined ffmpeg ];
}).override {
buildPhase = "cd libretro && make";
@@ -308,6 +341,7 @@ in
sha256 = "02vkl3y5dmyzifsviphspqv03a2rdyf36zpjpgfg7x0s226f56ja";
};
description = "Prboom libretro port";
license = gpl2;
}).override {
buildPhase = "make";
};
@@ -320,6 +354,7 @@ in
sha256 = "18lizdb9zjlfhh8ibvmcscldlf3mw4aj8nds3pah68cd2lw170w1";
};
description = "QuickNES libretro port";
license = lgpl21Plus;
}).override {
buildPhase = "make";
};
@@ -332,6 +367,7 @@ in
sha256 = "0d8wzpv7pcyh437gmvi439vim26wyrjmi5hj97wvyvggywjwrx8m";
};
description = "Reicast libretro port";
license = gpl2;
extraBuildInputs = [ libGLU_combined ];
}).override {
buildPhase = "make";
@@ -345,6 +381,7 @@ in
sha256 = "097i2dq3hw14hicsplrs36j1qa3r45vhzny5v4aw6qw4aj34hksy";
};
description = "Libretro port of ScummVM";
license = gpl2;
extraBuildInputs = [ fluidsynth libjpeg libvorbis libGLU_combined SDL ];
}).override {
buildPhase = "cd backends/platform/libretro/build && make";
@@ -358,6 +395,7 @@ in
sha256 = "02f04ss45km32lp68diyfkix1gryx89qy8cc80189ipwnx80pgip";
};
description = "Port of SNES9x git to libretro";
license = "Non-commercial";
}).override {
buildPhase = "cd libretro && make";
};
@@ -370,6 +408,7 @@ in
sha256 = "1vhgsrg9l562nincfvpj2h2dqkkblg1qmh0v47jqlqgmgl2b1zij";
};
description = "Optimized port/rewrite of SNES9x 1.52+ to Libretro";
license = "Non-commercial";
}).override {
buildPhase = ''
make -f Makefile.libretro
@@ -385,6 +424,7 @@ in
sha256 = "18r1yyfzvjq2hq04d94y37kzsq6aywh1aim69a3imk8kh46gwrh0";
};
description = "Port of Stella to libretro";
license = gpl2;
}).override {
buildPhase = "make";
};
@@ -397,6 +437,7 @@ in
sha256 = "03s4rh7dbbhbfc4pfdvr9jcbxrp4ijg8yp49s1xhr7sxsblj2vpv";
};
description = "VBA-M libretro port with modifications for speed";
license = gpl2;
};
vba-m = (mkLibRetroCore rec {
@@ -407,6 +448,7 @@ in
sha256 = "043djmqvh2grc25hwjw4b5kfx57b89ryp6fcl8v632sm35l3dd6z";
};
description = "vanilla VBA-M libretro port";
license = gpl2;
}).override {
buildPhase = "cd src/libretro && make";
};
+29 -38
View File
@@ -1,61 +1,52 @@
{ stdenv, fetchFromGitHub, makeDesktopItem, coreutils, which, pkgconfig
{ stdenv, fetchFromGitHub, which, pkgconfig, makeWrapper
, ffmpeg, libGLU_combined, freetype, libxml2, python34
, libobjc, AppKit, Foundation
, alsaLib ? null
, libpulseaudio ? null
, libv4l ? null
, libX11 ? null
, libXdmcp ? null
, libXext ? null
, libXxf86vm ? null
, SDL2 ? null
, udev ? null
, enableNvidiaCgToolkit ? false, nvidia_cg_toolkit ? null
, alsaLib ? null, libv4l ? null
, udev ? null, libX11 ? null, libXext ? null, libXxf86vm ? null
, libXdmcp ? null, SDL ? null, libpulseaudio ? null
, withVulkan ? stdenv.isLinux, vulkan-loader ? null
}:
with stdenv.lib;
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 = "1.6.0";
version = "1.7.1";
src = fetchFromGitHub {
owner = "libretro";
repo = "RetroArch";
sha256 = "1ym2kws58fbavkc3giz5xqaqiqqdbf7wrz7y7iw53p1bnkc3l8yi";
sha256 = "0qv8ci76f5kwv5b49ijgpc6jdfp6sm21fw5hq06mq6ygyiy9vdzf";
rev = "v${version}";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ ffmpeg libGLU_combined freetype libxml2 coreutils python34 which SDL ]
nativeBuildInputs = [ pkgconfig ]
++ optional withVulkan [ makeWrapper ];
buildInputs = [ ffmpeg freetype libxml2 libGLU_combined python34 SDL2 which ]
++ optional enableNvidiaCgToolkit nvidia_cg_toolkit
++ optionals stdenv.isLinux [ udev alsaLib libX11 libXext libXxf86vm libXdmcp libv4l libpulseaudio ];
configureScript = "sh configure";
patchPhase = ''
export GLOBAL_CONFIG_DIR=$out/etc
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
'';
++ optional withVulkan [ vulkan-loader ]
++ optionals stdenv.isDarwin [ libobjc AppKit Foundation ]
++ optionals stdenv.isLinux [ alsaLib libpulseaudio libv4l libX11
libXdmcp libXext libXxf86vm udev ];
enableParallelBuilding = true;
postInstall = optional withVulkan ''
wrapProgram $out/bin/retroarch --prefix LD_LIBRARY_PATH ':' ${vulkan-loader}/lib
'';
preFixup = "rm $out/bin/retroarch-cg2glsl";
meta = {
homepage = http://libretro.org/;
homepage = https://libretro.com;
description = "Multi-platform emulator frontend for libretro cores";
license = licenses.gpl3;
platforms = platforms.all;
+41
View File
@@ -0,0 +1,41 @@
{ stdenv, lib, fetchgit, cmake, pkgconfig
, qtbase, openal, glew, llvm_4, vulkan-loader, libpng, ffmpeg, libevdev
, pulseaudioSupport ? true, libpulseaudio
, waylandSupport ? true, wayland
, alsaSupport ? true, alsaLib
}:
stdenv.mkDerivation rec {
name = "rpcs3-${version}";
version = "2018-02-23";
src = fetchgit {
url = "https://github.com/RPCS3/rpcs3";
rev = "41bd07274f15b8f1be2475d73c3c75ada913dabb";
sha256 = "1v28m64ahakzj4jzjkmdd7y8q75pn9wjs03vprbnl0z6wqavqn0x";
};
cmakeFlags = [
"-DUSE_SYSTEM_LIBPNG=ON"
"-DUSE_SYSTEM_FFMPEG=ON"
"-DUSE_NATIVE_INSTRUCTIONS=OFF"
];
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
qtbase openal glew llvm_4 vulkan-loader libpng ffmpeg libevdev
] ++ lib.optional pulseaudioSupport libpulseaudio
++ lib.optional alsaSupport alsaLib
++ lib.optional waylandSupport wayland;
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "PS3 emulator/debugger";
homepage = "https://rpcs3.net/";
maintainers = with maintainers; [ abbradar ];
license = licenses.gpl2;
platforms = [ "x86_64-linux" ];
};
}
+22
View File
@@ -0,0 +1,22 @@
{ stdenv, fetchurl, libdsk, pkgconfig, glib, libXaw, libX11, libXext, lesstif }:
stdenv.mkDerivation rec {
version = "20070122";
name = "xcpc-${version}";
src = fetchurl {
url = "mirror://sourceforge/xcpc/${name}.tar.gz";
sha256 = "0hxsbhmyzyyrlidgg0q8izw55q0z40xrynw5a1c3frdnihj9jf7n";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ glib libdsk libXaw libX11 libXext lesstif ];
meta = with stdenv.lib; {
description = "A portable Amstrad CPC 464/664/6128 emulator written in C";
homepage = https://www.xcpc-emulator.net;
license = licenses.gpl2Plus;
maintainers = [ maintainers.genesis ];
platforms = platforms.linux;
};
}