2021-01-15 22:18:51 +00:00
|
|
|
|
{ lib, stdenv, fetchFromGitHub, gtk3, rgbds, SDL2, wrapGAppsHook, glib }:
|
2020-09-25 04:45:31 +00:00
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
|
pname = "sameboy";
|
2024-01-25 14:12:00 +00:00
|
|
|
|
version = "0.16.2";
|
2020-09-25 04:45:31 +00:00
|
|
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
|
owner = "LIJI32";
|
|
|
|
|
repo = "SameBoy";
|
|
|
|
|
rev = "v${version}";
|
2024-01-25 14:12:00 +00:00
|
|
|
|
sha256 = "sha256-KEbwug/cwGLS/uhY1rKasLJWaKtiYYzdZvbAU2orfbI=";
|
2020-09-25 04:45:31 +00:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
# glib and wrapGAppsHook are needed to make the Open ROM menu work.
|
|
|
|
|
nativeBuildInputs = [ rgbds glib wrapGAppsHook ];
|
|
|
|
|
buildInputs = [ SDL2 ];
|
|
|
|
|
|
2021-03-09 03:18:52 +00:00
|
|
|
|
makeFlags = [
|
|
|
|
|
"CONF=release"
|
|
|
|
|
"FREEDESKTOP=true"
|
|
|
|
|
"PREFIX=$(out)"
|
|
|
|
|
];
|
2020-09-25 04:45:31 +00:00
|
|
|
|
|
2021-03-09 03:18:52 +00:00
|
|
|
|
postPatch = ''
|
|
|
|
|
substituteInPlace OpenDialog/gtk.c \
|
|
|
|
|
--replace '"libgtk-3.so"' '"${gtk3}/lib/libgtk-3.so"'
|
2020-09-25 04:45:31 +00:00
|
|
|
|
'';
|
|
|
|
|
|
2021-01-15 22:18:51 +00:00
|
|
|
|
meta = with lib; {
|
2020-09-25 04:45:31 +00:00
|
|
|
|
homepage = "https://sameboy.github.io";
|
|
|
|
|
description = "Game Boy, Game Boy Color, and Super Game Boy emulator";
|
|
|
|
|
|
|
|
|
|
longDescription = ''
|
|
|
|
|
SameBoy is a user friendly Game Boy, Game Boy Color and Super
|
|
|
|
|
Game Boy emulator for macOS, Windows and Unix-like platforms.
|
|
|
|
|
SameBoy is extremely accurate and includes a wide range of
|
|
|
|
|
powerful debugging features, making it ideal for both casual
|
|
|
|
|
players and developers. In addition to accuracy and developer
|
|
|
|
|
capabilities, SameBoy has all the features one would expect from
|
|
|
|
|
an emulator – from save states to scaling filters.
|
|
|
|
|
'';
|
|
|
|
|
|
|
|
|
|
license = licenses.mit;
|
|
|
|
|
maintainers = with maintainers; [ NieDzejkob ];
|
|
|
|
|
platforms = platforms.linux;
|
|
|
|
|
};
|
|
|
|
|
}
|