Higan - new package (alpha stage!)
Higan is a cycle-accurate Nintendo multi-system emulator It is a preliminary release for Nix - I need to investigate some issues about install process and hardcoded paths...
This commit is contained in:
parent
4e189f68ab
commit
4cb061111c
20
pkgs/misc/emulators/higan/builder.sh
Normal file
20
pkgs/misc/emulators/higan/builder.sh
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
|
||||||
|
source $stdenv/setup
|
||||||
|
|
||||||
|
unpackPhase
|
||||||
|
cd $sourceName
|
||||||
|
make phoenix=gtk profile=accuracy -C ananke
|
||||||
|
make phoenix=gtk profile=accuracy
|
||||||
|
|
||||||
|
install -dm 755 $out/share/applications $out/share/pixmaps $out/share/higan/Video\ Shaders $out/bin $out/lib
|
||||||
|
|
||||||
|
install -m 644 data/higan.desktop $out/share/applications/
|
||||||
|
install -m 644 data/higan.png $out/share/pixmaps/
|
||||||
|
cp -dr --no-preserve=ownership profile/* data/cheats.bml $out/share/higan/
|
||||||
|
cp -dr --no-preserve=ownership shaders/*.shader $out/share/higan/Video\ Shaders/
|
||||||
|
|
||||||
|
install -m 755 out/higan $out/bin/higan
|
||||||
|
install -m 644 ananke/libananke.so $out/lib/libananke.so.1
|
||||||
|
(cd $out/lib && ln -s libananke.so.1 libananke.so)
|
||||||
|
oldRPath=$(patchelf --print-rpath $out/bin/higan)
|
||||||
|
patchelf --set-rpath $oldRPath:$out/lib $out/bin/higan
|
48
pkgs/misc/emulators/higan/default.nix
Normal file
48
pkgs/misc/emulators/higan/default.nix
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
{ stdenv, fetchurl
|
||||||
|
, pkgconfig
|
||||||
|
, libX11, libXv
|
||||||
|
, udev
|
||||||
|
, mesa, gtk, SDL
|
||||||
|
, libao, openal, pulseaudio
|
||||||
|
}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
|
||||||
|
name = "higan-${version}";
|
||||||
|
version = "094";
|
||||||
|
sourceName = "higan_v${version}-source";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://byuu.org/files/${sourceName}.tar.xz";
|
||||||
|
sha256 = "06qm271pzf3qf2labfw2lx6k0xcd89jndmn0jzmnc40cspwrs52y";
|
||||||
|
curlOpts = "--user-agent 'Mozilla/5.0'"; # the good old user-agent trick...
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = with stdenv.lib;
|
||||||
|
[ pkgconfig libX11 libXv udev mesa gtk SDL libao openal pulseaudio ];
|
||||||
|
|
||||||
|
builder = ./builder.sh;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "An open-source, cycle-accurate Nintendo multi-system emulator";
|
||||||
|
longDescription = ''
|
||||||
|
Higan (formerly bsnes) is a Nintendo multi-system emulator.
|
||||||
|
It currently supports the following systems:
|
||||||
|
Famicom; Super Famicom;
|
||||||
|
Game Boy; Game Boy Color; Game Boy Advance
|
||||||
|
higan also supports the following subsystems:
|
||||||
|
Super Game Boy; BS-X Satellaview; Sufami Turbo
|
||||||
|
'';
|
||||||
|
homepage = http://byuu.org/higan/;
|
||||||
|
license = stdenv.lib.licenses.gpl3Plus;
|
||||||
|
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
|
||||||
|
platforms = stdenv.lib.platforms.linux;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# TODO:
|
||||||
|
# - options to choose profiles (accuracy, balanced, performance)
|
||||||
|
# and different GUIs (gtk2, qt4)
|
||||||
|
# - fix the BML and BIOS paths - maybe a custom patch to Higan project?
|
||||||
|
#
|
@ -11569,6 +11569,8 @@ let
|
|||||||
|
|
||||||
snes9x-gtk = callPackage ../misc/emulators/snes9x-gtk { };
|
snes9x-gtk = callPackage ../misc/emulators/snes9x-gtk { };
|
||||||
|
|
||||||
|
higan = callPackage ../misc/emulators/higan { };
|
||||||
|
|
||||||
misc = import ../misc/misc.nix { inherit pkgs stdenv; };
|
misc = import ../misc/misc.nix { inherit pkgs stdenv; };
|
||||||
|
|
||||||
bullet = callPackage ../development/libraries/bullet {};
|
bullet = callPackage ../development/libraries/bullet {};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user