Merge pull request #232391 from chvp/bump-bluej
This commit is contained in:
commit
45e2d86970
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{ stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless, gradle_7
|
||||
, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib
|
||||
, ffmpeg_4-headless, python3, ruby, icu68
|
||||
, ffmpeg_4-headless, python3, ruby, icu71, fetchurl, runCommand
|
||||
, withMedia ? true
|
||||
, withWebKit ? false
|
||||
}:
|
||||
|
@ -14,6 +14,18 @@ let
|
|||
java = openjdk17_headless;
|
||||
});
|
||||
|
||||
dashed-icu-version = lib.concatStringsSep "-" (lib.splitString "." (lib.getVersion icu71));
|
||||
underscored-icu-version = lib.concatStringsSep "_" (lib.splitString "." (lib.getVersion icu71));
|
||||
icu-data = fetchurl {
|
||||
url = "https://github.com/unicode-org/icu/releases/download/release-${dashed-icu-version}/icu4c-${underscored-icu-version}-data-bin-l.zip";
|
||||
hash = "sha256-pVWIy0BkICsthA5mxhR9SJQHleMNnaEcGl/AaLi5qZM=";
|
||||
};
|
||||
|
||||
fakeRepository = runCommand "icu-data-repository" {} ''
|
||||
mkdir -p $out/download/release-${dashed-icu-version}
|
||||
cp ${icu-data} $out/download/release-${dashed-icu-version}/icu4c-${underscored-icu-version}-data-bin-l.zip
|
||||
'';
|
||||
|
||||
makePackage = args: stdenv.mkDerivation ({
|
||||
version = "${major}${update}${build}";
|
||||
|
||||
|
@ -24,7 +36,7 @@ let
|
|||
sha256 = "sha256-9VfXk2EfMebMyVKPohPRP2QXRFf8XemUtfY0JtBCHyw=";
|
||||
};
|
||||
|
||||
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless icu68 ];
|
||||
buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless icu71 ];
|
||||
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
|
||||
|
||||
dontUseCmakeConfigure = true;
|
||||
|
@ -71,6 +83,7 @@ in makePackage {
|
|||
gradleProperties = ''
|
||||
COMPILE_MEDIA = ${lib.boolToString withMedia}
|
||||
COMPILE_WEBKIT = ${lib.boolToString withWebKit}
|
||||
${lib.optionalString withWebKit "icuRepositoryURL = file://${fakeRepository}"}
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
|
|
|
@ -29550,7 +29550,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 { };
|
||||
|
|
Loading…
Reference in a new issue