python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / applications / emulators / ccemux / default.nix
blob742b3dc88ae2897515d3a5136081552af1079b45
1 { lib, stdenv, fetchurl, makeDesktopItem, makeWrapper, jre
2 , useCCTweaked ? true
3 }:
5 let
6   version = "1.1.1";
7   rev = "af12e2e4da586275ba931eae8f40a2201251bf59";
9   baseUrl = "https://emux.cc/versions/${lib.substring 0 8 rev}/CCEmuX";
10   jar =
11     if useCCTweaked
12     then fetchurl {
13       url = "${baseUrl}-cct.jar";
14       sha256 = "0d9gzi1h5vz32fp4lfn7dam189jcm7bwbqwmlpj0c47p8l0d4lsv";
15     }
16     else fetchurl {
17       url = "${baseUrl}-cc.jar";
18       sha256 = "0ky5vxh8m1v98zllifxif8xxd25j2xdp19hjnj4xlkck71lbnb34";
19     };
21   desktopIcon = fetchurl {
22     url = "https://github.com/CCEmuX/CCEmuX/raw/${rev}/src/main/resources/img/icon.png";
23     sha256 = "1vmb6rg9k2y99j8xqfgbsvfgfi3g985rmqwrd7w3y54ffr2r99c2";
24   };
25   desktopItem =  makeDesktopItem {
26     name = "CCEmuX";
27     exec = "ccemux";
28     icon = desktopIcon;
29     comment = "A modular ComputerCraft emulator";
30     desktopName = "CCEmuX";
31     genericName = "ComputerCraft Emulator";
32     categories = [ "Emulator" ];
33   };
36 stdenv.mkDerivation rec {
37   pname = "ccemux";
38   inherit version;
40   src = jar;
41   dontUnpack = true;
43   nativeBuildInputs = [ makeWrapper ];
44   buildInputs = [ jre ];
46   installPhase = ''
47     runHook preInstall
49     mkdir -p $out/{bin,share/ccemux}
50     cp -r ${desktopItem}/share/applications $out/share/applications
52     install -D ${src} $out/share/ccemux/ccemux.jar
53     install -D ${desktopIcon} $out/share/pixmaps/ccemux.png
55     makeWrapper ${jre}/bin/java $out/bin/ccemux \
56       --add-flags "-jar $out/share/ccemux/ccemux.jar"
58     runHook postInstall
59   '';
61   meta = with lib; {
62     description = "A modular ComputerCraft emulator";
63     homepage = "https://github.com/CCEmuX/CCEmuX";
64     sourceProvenance = with sourceTypes; [ binaryBytecode ];
65     license = licenses.mit;
66     maintainers = with maintainers; [ CrazedProgrammer ];
67   };