diff options
author | Anderson Torres <torres.anderson.85@gmail.com> | 2013-11-23 02:22:05 +0100 |
---|---|---|
committer | AndersonTorres <torres.anderson.85@gmail.com> | 2013-11-23 02:22:05 +0100 |
commit | fee5929a42e2d8f70bff1b11a3d47af930e65a88 (patch) | |
tree | 8c75eb84b723fb35dd9917b8d97423caea583087 | |
parent | fa9284b941cfe0ff0002d6e641096df4e04f9ac1 (diff) | |
download | nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.tar nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.tar.gz nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.tar.bz2 nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.tar.lz nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.tar.xz nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.tar.zst nixpkgs-fee5929a42e2d8f70bff1b11a3d47af930e65a88.zip |
First commit.
Added Nix expression for Bochs - "the highly portable x86 emulator".
-rw-r--r-- | pkgs/applications/virtualization/bochs/default.nix | 61 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
2 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/applications/virtualization/bochs/default.nix b/pkgs/applications/virtualization/bochs/default.nix new file mode 100644 index 00000000000..440ac66b6c5 --- /dev/null +++ b/pkgs/applications/virtualization/bochs/default.nix @@ -0,0 +1,61 @@ +{ 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"; + }; +} \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0a6c2cd289f..0a16cfa6136 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -533,6 +533,8 @@ let bmon = callPackage ../tools/misc/bmon { }; + bochs = callPackage ../applications/virtualization/bochs { }; + boomerang = callPackage ../development/tools/boomerang { stdenv = overrideGCC stdenv gcc47; }; |