From 5a81d98c8d05ef06f3bfdfdb821414a7d8de7afc Mon Sep 17 00:00:00 2001 From: Angus Trau Date: Sat, 24 Jul 2021 22:59:01 +1000 Subject: [PATCH] mars-mips: init at 4.5 --- pkgs/development/tools/mars-mips/default.nix | 49 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 51 insertions(+) create mode 100644 pkgs/development/tools/mars-mips/default.nix diff --git a/pkgs/development/tools/mars-mips/default.nix b/pkgs/development/tools/mars-mips/default.nix new file mode 100644 index 000000000000..6bca1fa64eee --- /dev/null +++ b/pkgs/development/tools/mars-mips/default.nix @@ -0,0 +1,49 @@ +{ lib, stdenvNoCC, fetchurl, makeWrapper, copyDesktopItems, makeDesktopItem, unzip, imagemagick, jre }: + +stdenvNoCC.mkDerivation rec { + pname = "mars-mips"; + version = "4.5"; + + src = fetchurl { + url = "https://courses.missouristate.edu/KenVollmar/MARS/MARS_${lib.replaceStrings ["."] ["_"] version}_Aug2014/Mars${lib.replaceStrings ["."] ["_"] version}.jar"; + sha256 = "15kh1fahkkbbf4wvb6ijzny4fi5dh4pycxyzp5325dm2ddkhnd5c"; + }; + + dontUnpack = true; + + nativeBuildInputs = [ makeWrapper copyDesktopItems unzip imagemagick ]; + + desktopItems = [ + (makeDesktopItem { + name = pname; + desktopName = "MARS"; + exec = "mars-mips"; + icon = "mars-mips"; + comment = "An IDE for programming in MIPS assembly language"; + categories = "Development;IDE;"; + }) + ]; + + installPhase = '' + runHook preInstall + + export JAR=$out/share/java/${pname}/${pname}.jar + install -D $src $JAR + makeWrapper ${jre}/bin/java $out/bin/${pname} \ + --add-flags "-jar $JAR" + + unzip ${src} images/MarsThumbnail.gif + mkdir -p $out/share/pixmaps + convert images/MarsThumbnail.gif $out/share/pixmaps/mars-mips.png + + runHook postInstall + ''; + + meta = with lib; { + description = "An IDE for programming in MIPS assembly language intended for educational-level use"; + homepage = "https://courses.missouristate.edu/KenVollmar/MARS/"; + license = licenses.mit; + maintainers = with maintainers; [ angustrau ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 066abf31ea47..b7fa5c370475 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6977,6 +6977,8 @@ in marktext = callPackage ../applications/misc/marktext { }; + mars-mips = callPackage ../development/tools/mars-mips { }; + mawk = callPackage ../tools/text/mawk { }; mb2md = callPackage ../tools/text/mb2md { };