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:
AndersonTorres 2014-08-08 16:34:41 -03:00 committed by Mateusz Kowalczyk
parent 4e189f68ab
commit 4cb061111c
3 changed files with 70 additions and 0 deletions

View 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

View 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?
#

View File

@ -11569,6 +11569,8 @@ let
snes9x-gtk = callPackage ../misc/emulators/snes9x-gtk { };
higan = callPackage ../misc/emulators/higan { };
misc = import ../misc/misc.nix { inherit pkgs stdenv; };
bullet = callPackage ../development/libraries/bullet {};