diff options
-rw-r--r-- | pkgs/development/compilers/open-watcom-bin/default.nix | 67 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 2 |
2 files changed, 69 insertions, 0 deletions
diff --git a/pkgs/development/compilers/open-watcom-bin/default.nix b/pkgs/development/compilers/open-watcom-bin/default.nix new file mode 100644 index 000000000000..0cd80b6e1df3 --- /dev/null +++ b/pkgs/development/compilers/open-watcom-bin/default.nix @@ -0,0 +1,67 @@ +{ stdenvNoCC, fetchurl, qemu, expect, writeScript, ncurses }: + +let + + # We execute the installer in qemu-user, because otherwise the + # installer fails to open itself due to a failed stat() call. This + # seems like an incompatibility of new Linux kernels to run this + # ancient binary. + performInstall = writeScript "perform-ow-install" '' + #!${expect}/bin/expect -f + + spawn env TERMINFO=${ncurses}/share/terminfo TERM=vt100 ${qemu}/bin/qemu-i386 [lindex $argv 0] + + # Wait for button saying "I agree" with escape sequences. + expect "gree" + + # Navigate to "I Agree!" and hit enter. + send "\t\t\n" + + expect "Install Open Watcom" + + # Where do we want to install to. + send "$env(out)\n" + + expect "will be installed" + + # Select Full Installation, Next + send "fn" + + expect "Setup will now copy" + + # Next + send "n" + + expect "completed successfully" + send "\n" + ''; + +in +stdenvNoCC.mkDerivation rec { + pname = "open-watcom-bin"; + version = "1.9"; + + src = fetchurl { + url = "http://ftp.openwatcom.org/install/open-watcom-c-linux-${version}"; + sha256 = "1wzkvc6ija0cjj5mcyjng5b7hnnc5axidz030c0jh05pgvi4nj7p"; + }; + + dontUnpack = true; + dontBuild = true; + dontConfigure = true; + + installPhase = '' + cp ${src} install-bin + chmod +x install-bin + + ${performInstall} install-bin + ''; + + meta = with stdenvNoCC.lib; { + description = "A C/C++ Compiler (binary distribution)"; + homepage = "http://www.openwatcom.org/"; + license = licenses.watcom; + platforms = [ "x86_64-linux" "i686-linux" ]; + maintainers = [ maintainers.blitz ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f182b6d250cf..16962f5996fa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8996,6 +8996,8 @@ in inherit (ocaml-ng.ocamlPackages_4_05) ocaml; }; + open-watcom-bin = callPackage ../development/compilers/open-watcom-bin { }; + pforth = callPackage ../development/compilers/pforth {}; picat = callPackage ../development/compilers/picat { }; |