Merge pull request #1266 from AndersonTorres/master
Merge request: A Nix expression for Bochs
This commit is contained in:
commit
64e380c853
62
pkgs/applications/virtualization/bochs/default.nix
Normal file
62
pkgs/applications/virtualization/bochs/default.nix
Normal file
@ -0,0 +1,62 @@
|
||||
{ stdenv, fetchurl
|
||||
, libX11 , mesa
|
||||
, sdlSupport ? true, SDL ? null
|
||||
, termSupport ? true , ncurses ? null, readline ? null
|
||||
, wxSupport ? true , gtk ? null , wxGTK ? null , pkgconfig ? null
|
||||
, wgetSupport ? false, wget ? null
|
||||
, curlSupport ? false, curl ? null
|
||||
}:
|
||||
|
||||
|
||||
assert sdlSupport -> (SDL != null);
|
||||
assert termSupport -> (ncurses != null&& readline != null);
|
||||
assert wxSupport -> (gtk != null && wxGTK != null && pkgconfig != null);
|
||||
assert wgetSupport -> (wget != null);
|
||||
assert curlSupport -> (curl != null);
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "bochs-${version}";
|
||||
version = "2.6.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://downloads.sourceforge.net/project/bochs/bochs/${version}/${name}.tar.gz";
|
||||
sha256 = "042blm1xb9ig4fh2bv8nrrfpgkcxy4hq8yrkx7mrdpm5g4mvfwyr";
|
||||
};
|
||||
|
||||
buildInputs = with stdenv.lib;
|
||||
[ libX11 mesa ]
|
||||
++ optionals sdlSupport [ SDL ]
|
||||
++ optionals termSupport [ readline ncurses ]
|
||||
++ optionals wxSupport [ gtk wxGTK pkgconfig ]
|
||||
++ optionals wgetSupport [ wget ]
|
||||
++ optionals curlSupport [ curl ];
|
||||
|
||||
configureFlags = ''
|
||||
--with-x11
|
||||
--with-term=${if termSupport then "yes" else "no"}
|
||||
--with-sdl=${if sdlSupport then "yes" else "no"}
|
||||
--with-svga=no
|
||||
--with-wx=${if wxSupport then "yes" else "no"}
|
||||
--enable-readline
|
||||
--enable-plugins=no
|
||||
--enable-disasm
|
||||
--enable-debugger
|
||||
--enable-ne2000
|
||||
--enable-e1000
|
||||
--enable-sb16
|
||||
--enable-voodoo
|
||||
--enable-usb
|
||||
--enable-pnic
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "An open-source IA-32 (x86) PC emulator";
|
||||
longDescription = ''
|
||||
Bochs is an open-source (LGPL), highly portable IA-32 PC emulator, written in C++, that runs on most popular platforms. It includes emulation of the Intel x86 CPU, common I/O devices, and a custom BIOS.
|
||||
'';
|
||||
homepage = http://bochs.sourceforge.net/;
|
||||
license = "LGPL";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -533,6 +533,8 @@ let
|
||||
|
||||
bmon = callPackage ../tools/misc/bmon { };
|
||||
|
||||
bochs = callPackage ../applications/virtualization/bochs { };
|
||||
|
||||
boomerang = callPackage ../development/tools/boomerang {
|
||||
stdenv = overrideGCC stdenv gcc47;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user