{ lib , stdenv , fetchFromGitHub , makeDesktopItem , makeWrapper , wrapGAppsHook , ant , jdk , jre , gtk2 , glib , libXtst , Cocoa }: let _version = "2.10.4"; _build = "487"; version = "${_version}-${_build}"; swtSystem = if stdenv.hostPlatform.system == "i686-linux" then "linux" else if stdenv.hostPlatform.system == "x86_64-linux" then "linux64" else if stdenv.hostPlatform.system == "aarch64-linux" then "linux-arm64" else if stdenv.hostPlatform.system == "x86_64-darwin" then "macos64" else throw "Unsupported system: ${stdenv.hostPlatform.system}"; desktopItem = makeDesktopItem { name = "jameica"; exec = "jameica"; comment = "Free Runtime Environment for Java Applications."; desktopName = "Jameica"; genericName = "Jameica"; icon = "jameica"; categories = [ "Office" ]; }; in stdenv.mkDerivation rec { pname = "jameica"; inherit version; src = fetchFromGitHub { owner = "willuhn"; repo = "jameica"; rev = "V_${builtins.replaceStrings ["."] ["_"] _version}_BUILD_${_build}"; hash = "sha256-MSVSd5DyVL+dcfTDv1M99hxickPwT2Pt6QGNsu6DGZI="; }; postPatch = '' # Fix jar timestamps for reproducibility substituteInPlace build/build.xml \ --replace-fail '