diff options
Diffstat (limited to 'pkgs/applications/emulators/simh/default.nix')
-rw-r--r-- | pkgs/applications/emulators/simh/default.nix | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/applications/emulators/simh/default.nix b/pkgs/applications/emulators/simh/default.nix new file mode 100644 index 00000000000..1e939538cda --- /dev/null +++ b/pkgs/applications/emulators/simh/default.nix @@ -0,0 +1,62 @@ +{ lib, stdenv +, fetchFromGitHub +, SDL2 +, SDL2_ttf +, libpcap +, vde2 +, pcre +}: + +stdenv.mkDerivation rec { + pname = "simh"; + version = "3.11-1"; + + src = fetchFromGitHub { + owner = "simh"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-65+YfOWpVXPeT64TZcSaWJY+ODQ0q/pwF9jb8xGdpIs="; + }; + + buildInputs = [ SDL2 SDL2_ttf libpcap vde2 pcre ]; + + dontConfigure = true; + + makeFlags = [ "GCC=${stdenv.cc.targetPrefix}cc" "CC_STD=-std=c99" "LDFLAGS=-lm" ]; + + preInstall = '' + install -d ${placeholder "out"}/bin + install -d ${placeholder "out"}/share/simh + ''; + + installPhase = '' + runHook preInstall + for i in BIN/*; do + install -D $i ${placeholder "out"}/bin + done + for i in VAX/*bin; do + install -D $i ${placeholder "out"}/share/simh + done + runHook postInstall + ''; + + postInstall = '' + (cd $out/bin; for i in *; do ln -s $i simh-$i; done) + ''; + + meta = with lib; { + homepage = "http://simh.trailing-edge.com/"; + description = "A collection of simulators of historic hardware"; + longDescription = '' + SimH (History Simulator) is a collection of simulators for historically + significant or just plain interesting computer hardware and software from + the past. The goal of the project is to create highly portable system + simulators and to publish them as freeware on the Internet, with freely + available copies of significant or representative software. + ''; + license = with licenses; mit; + maintainers = with maintainers; [ AndersonTorres ]; + platforms = with platforms; unix; + }; +} +# TODO: install documentation |