diff options
Diffstat (limited to 'pkgs/misc/emulators')
-rw-r--r-- | pkgs/misc/emulators/atari++/default.nix | 35 | ||||
-rw-r--r-- | pkgs/misc/emulators/atari800/builder.sh | 13 | ||||
-rw-r--r-- | pkgs/misc/emulators/atari800/default.nix | 40 | ||||
-rw-r--r-- | pkgs/misc/emulators/cdemu/base.nix | 2 | ||||
-rw-r--r-- | pkgs/misc/emulators/dolphin-emu/master.nix | 10 | ||||
-rw-r--r-- | pkgs/misc/emulators/gxemul/default.nix | 49 | ||||
-rw-r--r-- | pkgs/misc/emulators/wine/staging.nix | 29 |
7 files changed, 136 insertions, 42 deletions
diff --git a/pkgs/misc/emulators/atari++/default.nix b/pkgs/misc/emulators/atari++/default.nix index 1a76ddd1c90..89baadb6208 100644 --- a/pkgs/misc/emulators/atari++/default.nix +++ b/pkgs/misc/emulators/atari++/default.nix @@ -1,15 +1,28 @@ -{stdenv, fetchurl, x11, SDL}: +{ stdenv, fetchurl +, libX11, SDL }: + +with stdenv.lib; +stdenv.mkDerivation rec{ + name = "atari++-${version}"; + version = "1.73"; -stdenv.mkDerivation { - name = "atari++-1.46"; -# builder = ./builder.sh; src = fetchurl { - url = http://www.math.tu-berlin.de/~thor/atari++/download/atari++.tgz; - md5 = "0619ec6b63852233111aa0bd263c8ea2"; + url = "http://www.xl-project.com/download/atari++_${version}.tar.gz"; + sha256 = "1y5kwh08717jsa5agxrvxnggnwxq36irrid9rzfhca1nnvp9a45l"; }; -# rom = fetchurl { -# url = mirror://sourceforge/atari800/xf25.zip; -# md5 = "4dc3b6b4313e9596c4d474785a37b94d"; -# }; - buildInputs = [x11 SDL]; + + buildInputs = [ libX11 SDL ]; + meta = { + homepage = http://www.xl-project.com/; + description = "An enhanced, cycle-accurated Atari emulator"; + longDescription = '' + The Atari++ Emulator is a Unix based emulator of the Atari eight + bit computers, namely the Atari 400 and 800, the Atari 400XL, + 800XL and 130XE, and the Atari 5200 game console. The emulator + is auto-configurable and will compile on a variety of systems + (Linux, Solaris, Irix). + ''; + maintainers = [ maintainers.AndersonTorres ]; + license = licenses.gpl2Plus; + }; } diff --git a/pkgs/misc/emulators/atari800/builder.sh b/pkgs/misc/emulators/atari800/builder.sh deleted file mode 100644 index afb9404657a..00000000000 --- a/pkgs/misc/emulators/atari800/builder.sh +++ /dev/null @@ -1,13 +0,0 @@ -source $stdenv/setup - -preConfigure() { - cd src -} - -postInstall() { - romsDir=$out/share/atari800/roms - mkdir -p $romsDir - unzip $rom -d $romsDir -} - -genericBuild diff --git a/pkgs/misc/emulators/atari800/default.nix b/pkgs/misc/emulators/atari800/default.nix index c2a4c7d3d8b..af8d64982a0 100644 --- a/pkgs/misc/emulators/atari800/default.nix +++ b/pkgs/misc/emulators/atari800/default.nix @@ -1,16 +1,32 @@ -{stdenv, fetchurl, unzip, zlib, SDL}: +{ stdenv, fetchurl +, unzip, zlib, SDL, readline, mesa, libX11 }: + +with stdenv.lib; +stdenv.mkDerivation rec{ + name = "atari800-${version}"; + version = "3.1.0"; -stdenv.mkDerivation { - name = "atari800-2.2.1"; - builder = ./builder.sh; src = fetchurl { - url = mirror://sourceforge/atari800/atari800-2.2.1.tar.gz; - sha256 = "0gkhlb3jc0rd7fcqjm41877fsqr7als3a0n552qmnjzrlcczf5yz"; - }; - rom = fetchurl { - url = mirror://sourceforge/atari800/xf25.zip; - sha256 = "12jbawxs04i0wm3910n7f3phsybdp8nndxc0xlsnzp8k0k8hmblq"; + url = "mirror://sourceforge/atari800/atari800/${version}/${name}.tar.gz"; + sha256 = "030yz5l1wyq9l0dmiimiiwpzrjr43whycd409xhhpnrdx76046wh"; }; - buildInputs = [unzip zlib SDL]; - configureFlags = "--target=sdl"; + + buildInputs = [ unzip zlib SDL readline mesa libX11 ]; + + configureFlags = "--target=default --with-video=sdl --with-sound=sdl --with-readline --with-opengl --with-x --enable-riodevice"; + + preConfigure = "cd src"; + + meta = { + homepage = "http://atari800.sourceforge.net/"; + description = "An Atari 8-bit emulator"; + longDescription = '' + Atari800 is the emulator of Atari 8-bit computer systems and + 5200 game console for Unix, Linux, Amiga, MS-DOS, Atari + TT/Falcon, MS-Windows, MS WinCE, Sega Dreamcast, Android and + other systems supported by the SDL library. + ''; + maintainers = [ maintainers.AndersonTorres ]; + license = licenses.gpl2Plus; + }; } diff --git a/pkgs/misc/emulators/cdemu/base.nix b/pkgs/misc/emulators/cdemu/base.nix index b2b641e3f7a..58727f10ef1 100644 --- a/pkgs/misc/emulators/cdemu/base.nix +++ b/pkgs/misc/emulators/cdemu/base.nix @@ -17,7 +17,7 @@ in stdenv.mkDerivation ({ cmake ../${name} -DCMAKE_INSTALL_PREFIX=$out -DCMAKE_BUILD_TYPE=Release -DCMAKE_SKIP_RPATH=ON ''; meta = { - description = "CDemu is a software suite designed to emulate an optical drive and disc (including CD-ROMs and DVD-ROMs) on the Linux operating system."; + description = "A Software suite designed to emulate an optical drive and disc (including CD-ROMs and DVD-ROMs) on the Linux operating system"; longDescription = '' CDEmu consists of: diff --git a/pkgs/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix index 640d8f4fe6c..cbff76610f1 100644 --- a/pkgs/misc/emulators/dolphin-emu/master.nix +++ b/pkgs/misc/emulators/dolphin-emu/master.nix @@ -1,14 +1,14 @@ { stdenv, pkgconfig, cmake, bluez, ffmpeg, libao, mesa, gtk2, glib , gettext, git, libpthreadstubs, libXrandr, libXext, readline -, openal, libXdmcp, portaudio, SDL, wxGTK30, fetchgit +, openal, libXdmcp, portaudio, SDL, wxGTK30, fetchgit, libusb , pulseaudio ? null }: stdenv.mkDerivation rec { - name = "dolphin-emu-20150403"; + name = "dolphin-emu-20150421"; src = fetchgit { url = git://github.com/dolphin-emu/dolphin.git; - rev = "38236fb8e8370f9f1ca1482ffa94b08c4595f2aa"; - sha256 = "14v86c042jz5adqk6ngqbzl5xna7m69i39y7q23s7h6ra75461yf"; + rev = "4340927b7f17fa43c5f6c0f204c4bfc2b17a47d5"; + sha256 = "0pc18n88yckmvli27p09xj5kyv4k8bqv92ric8xvi7cqznmmiv9d"; fetchSubmodules = false; }; @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { buildInputs = [ pkgconfig cmake bluez ffmpeg libao mesa gtk2 glib gettext libpthreadstubs libXrandr libXext readline openal - git libXdmcp portaudio SDL wxGTK30 pulseaudio ]; + git libXdmcp portaudio SDL wxGTK30 libusb pulseaudio ]; meta = { homepage = http://dolphin-emu.org/; diff --git a/pkgs/misc/emulators/gxemul/default.nix b/pkgs/misc/emulators/gxemul/default.nix new file mode 100644 index 00000000000..1e4827942b9 --- /dev/null +++ b/pkgs/misc/emulators/gxemul/default.nix @@ -0,0 +1,49 @@ +{ stdenv, composableDerivation, fetchurl }: + +let edf = composableDerivation.edf; + version = "0.6.0.1"; + name = "gxemul-${version}"; +in + +composableDerivation.composableDerivation {} { + inherit name; + + src = fetchurl { + url = "http://gavare.se/gxemul/src/${name}.tar.gz"; + sha256 = "1afd9l0igyv7qgc0pn3rkdgrl5d0ywlyib0qhg4li23zilyq5407"; + }; + + configurePhase = "./configure"; + + installPhase = "mkdir -p \$out/bin; cp gxemul \$out/bin;"; + + mergeAttrBy = { installPhase = a : b : "${a}\n${b}"; }; + + flags = { + doc = { installPhase = "mkdir -p \$out/share/${name}; cp -r doc \$out/share/${name};"; implies = "man"; }; + demos = { installPhase = "mkdir -p \$out/share/${name}; cp -r demos \$out/share/${name};"; }; + man = { installPhase = "cp -r ./man \$out/;";}; + }; + + cfg = { + docSupport = true; + demosSupport = true; + manSupport = true; + }; + + meta = { + license = stdenv.lib.licenses.bsd3; + description = "Gavare's experimental emulator"; + longDescription = '' + GXemul is a framework for full-system computer architecture + emulation. Several real machines have been implemented within the + framework, consisting of processors (ARM, MIPS, Motorola 88K, + PowerPC, and SuperH) and surrounding hardware components such as + framebuffers, interrupt controllers, busses, disk controllers, + and serial controllers. The emulation is working well enough to + allow several unmodified "guest" operating systems to run. + ''; + homepage = http://gxemul.sourceforge.net/; + }; + +} diff --git a/pkgs/misc/emulators/wine/staging.nix b/pkgs/misc/emulators/wine/staging.nix new file mode 100644 index 00000000000..2aa588592ac --- /dev/null +++ b/pkgs/misc/emulators/wine/staging.nix @@ -0,0 +1,29 @@ +{ stdenv, fetchFromGitHub, wine, perl, autoconf, utillinux +, pulseaudio, libtxc_dxtn }: + +let version = "1.7.40"; + patch = fetchFromGitHub { + owner = "wine-compholio"; + repo = "wine-staging"; + rev = "v${version}"; + sha256 = "0l14yy6wbvbs2xrnn9z3a35lbnpl8ibkmc0vh983fimf9nxckpan"; + }; + +in assert (builtins.parseDrvName wine.name).version == version; + +stdenv.lib.overrideDerivation wine (self: { + nativeBuildInputs = [ pulseaudio libtxc_dxtn ] ++ self.nativeBuildInputs; + buildInputs = [ perl utillinux autoconf ] ++ self.buildInputs; + + name = "${self.name}-staging"; + + postPatch = self.postPatch or "" + '' + patchShebangs tools + cp -r ${patch}/patches . + chmod +w patches + cd patches + patchShebangs gitapply.sh + ./patchinstall.sh DESTDIR=.. --all + cd .. + ''; +}) |