From ef8929e62cba1a7289161f23a8a1e4cd0651623b Mon Sep 17 00:00:00 2001 From: Charlotte Van Petegem Date: Wed, 17 May 2023 11:45:16 +0200 Subject: [PATCH] bluej: 5.0.3 -> 5.1.0 https://bluej.org/versions.html --- pkgs/applications/editors/bluej/default.nix | 37 ++++++++------------- pkgs/top-level/all-packages.nix | 5 ++- 2 files changed, 18 insertions(+), 24 deletions(-) diff --git a/pkgs/applications/editors/bluej/default.nix b/pkgs/applications/editors/bluej/default.nix index a78cc65aa210..511928d14353 100644 --- a/pkgs/applications/editors/bluej/default.nix +++ b/pkgs/applications/editors/bluej/default.nix @@ -1,21 +1,22 @@ -{ lib, stdenv, fetchurl, jdk, glib, wrapGAppsHook }: +{ lib, stdenv, fetchurl, openjdk, glib, wrapGAppsHook }: stdenv.mkDerivation rec { pname = "bluej"; - version = "5.0.3"; + version = "5.1.0"; src = fetchurl { # We use the deb here. First instinct might be to go for the "generic" JAR # download, but that is actually a graphical installer that is much harder # to unpack than the deb. url = "https://www.bluej.org/download/files/BlueJ-linux-${builtins.replaceStrings ["."] [""] version}.deb"; - sha256 = "sha256-OarqmptxZc7xEEYeoCVqHXkAvfzfSYx5nUp/iWPyoqw="; + sha256 = "sha256-tOb15wU9OjUt0D8l/JkaGYj84L7HV4FUnQQB5cRAxG0="; }; nativeBuildInputs = [ wrapGAppsHook ]; buildInputs = [ glib ]; sourceRoot = "."; + preUnpack = '' unpackCmdHooks+=(_tryDebData) _tryDebData() { @@ -26,39 +27,29 @@ stdenv.mkDerivation rec { } ''; + dontWrapGApps = true; + installPhase = '' runHook preInstall - if [ -n "$prefix" ]; then - mkdir -p "$prefix" - fi + mkdir -p $out + cp -r usr/* $out - mkdir -p "$out" - - if shopt -q dotglob; then dotglobOpt=$?; else dotglobOpt=$?; fi - shopt -s dotglob - for file in usr/*; do - cp -R "$file" "$out" - done - if (( !dotglobOpt )); then shopt -u dotglob; fi + makeWrapper ${openjdk}/bin/java $out/bin/bluej \ + "''${gappsWrapperArgs[@]}" \ + --add-flags "-Dawt.useSystemAAFontSettings=on -Xmx512M \ + --add-opens javafx.graphics/com.sun.glass.ui=ALL-UNNAMED \ + -jar $out/share/bluej/bluej.jar" runHook postInstall ''; - dontWrapGApps = true; - - preFixup = '' - makeWrapper ${jdk}/bin/java $out/bin/bluej \ - "''${gappsWrapperArgs[@]}" \ - --add-flags "-Djavafx.embed.singleThread=true -Dawt.useSystemAAFontSettings=on -Xmx512M -cp $out/share/bluej/bluej.jar bluej.Boot" - ''; - meta = with lib; { description = "A simple integrated development environment for Java"; homepage = "https://www.bluej.org/"; sourceProvenance = with sourceTypes; [ binaryBytecode ]; license = licenses.gpl2ClasspathPlus; maintainers = with maintainers; [ chvp ]; - platforms = platforms.unix; + platforms = platforms.linux; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76195c002c9d..2323b6e99f7a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -29434,7 +29434,10 @@ with pkgs; }; bluej = callPackage ../applications/editors/bluej { - jdk = jetbrains.jdk; + openjdk = openjdk17.override { + enableJavaFX = true; + openjfx = openjfx17.override { withWebKit = true; }; + }; }; bluejeans-gui = callPackage ../applications/networking/instant-messengers/bluejeans { };