lol
1{ lib, stdenvNoCC, fetchurl, makeWrapper, copyDesktopItems, makeDesktopItem, unzip, imagemagick, jre }:
2
3stdenvNoCC.mkDerivation rec {
4 pname = "mars-mips";
5 version = "4.5";
6
7 src = fetchurl {
8 url = "https://courses.missouristate.edu/KenVollmar/MARS/MARS_${lib.replaceStrings ["."] ["_"] version}_Aug2014/Mars${lib.replaceStrings ["."] ["_"] version}.jar";
9 sha256 = "15kh1fahkkbbf4wvb6ijzny4fi5dh4pycxyzp5325dm2ddkhnd5c";
10 };
11
12 dontUnpack = true;
13
14 nativeBuildInputs = [ makeWrapper copyDesktopItems unzip imagemagick ];
15
16 desktopItems = [
17 (makeDesktopItem {
18 name = pname;
19 desktopName = "MARS";
20 exec = "mars-mips";
21 icon = "mars-mips";
22 comment = "An IDE for programming in MIPS assembly language";
23 categories = [ "Development" "IDE" ];
24 })
25 ];
26
27 installPhase = ''
28 runHook preInstall
29
30 export JAR=$out/share/java/${pname}/${pname}.jar
31 install -D $src $JAR
32 makeWrapper ${jre}/bin/java $out/bin/${pname} \
33 --add-flags "-jar $JAR"
34
35 unzip ${src} images/MarsThumbnail.gif
36 mkdir -p $out/share/pixmaps
37 convert images/MarsThumbnail.gif $out/share/pixmaps/mars-mips.png
38
39 runHook postInstall
40 '';
41
42 meta = with lib; {
43 description = "An IDE for programming in MIPS assembly language intended for educational-level use";
44 homepage = "https://courses.missouristate.edu/KenVollmar/MARS/";
45 sourceProvenance = with sourceTypes; [ binaryBytecode ];
46 license = licenses.mit;
47 maintainers = with maintainers; [ emilytrau ];
48 platforms = platforms.all;
49 };
50}