treewide: Correctly force Java font anti-aliasing to gasp mode

Fixes instances of the awt.useSystemAAFontSettings property in _JAVA_OPTIONS being impossible to override due to incorrect separators and due to replacing the value from the shell.

Changes the font anti-aliasing mode to gasp;
led is not suitable for users with subpixel arrangements other than horizontal RGB,
on doesn't respect the hints encoded in fonts.

See https://github.com/NixOS/nixpkgs/issues/422043
This commit is contained in:
opl 2025-07-03 11:57:14 +02:00
parent 2142946ec9
commit 26c5111b7c
19 changed files with 21 additions and 21 deletions

View File

@ -41,7 +41,7 @@ stdenv.mkDerivation rec {
makeWrapper ${openjdk}/bin/java $out/bin/greenfoot \
"''${gappsWrapperArgs[@]}" \
--add-flags "-Dawt.useSystemAAFontSettings=on -Xmx512M \
--add-flags "-Dawt.useSystemAAFontSettings=gasp -Xmx512M \
--add-opens javafx.graphics/com.sun.glass.ui=ALL-UNNAMED \
-cp $out/share/greenfoot/boot.jar bluej.Boot \
-greenfoot=true -bluej.compiler.showunchecked=false \

View File

@ -131,11 +131,11 @@ stdenv.mkDerivation rec {
makeWrapper $out/share/${pname}/processing $out/bin/processing \
''${gappsWrapperArgs[@]} \
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libGL ]}" \
--prefix _JAVA_OPTIONS " " -Dawt.useSystemAAFontSettings=lcd
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
makeWrapper $out/share/${pname}/processing-java $out/bin/processing-java \
''${gappsWrapperArgs[@]} \
--prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libGL ]}" \
--prefix _JAVA_OPTIONS " " -Dawt.useSystemAAFontSettings=lcd
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
runHook postInstall
'';

View File

@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
};
javaOptions = [
"-Dawt.useSystemAAFontSettings=on"
"-Dawt.useSystemAAFontSettings=gasp"
];
in
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
mkdir -pv "$out/bin"
wrapProgram "$out/share/ganttproject/ganttproject" \
--set JAVA_HOME "${jre}" \
--set _JAVA_OPTIONS "${builtins.toString javaOptions}"
--prefix _JAVA_OPTIONS " " "${builtins.toString javaOptions}"
mv -v "$out/share/ganttproject/ganttproject" "$out/bin"

View File

@ -48,7 +48,7 @@ stdenv.mkDerivation rec {
makeWrapper ${openjdk}/bin/java $out/bin/bluej \
"''${gappsWrapperArgs[@]}" \
--add-flags "-Dawt.useSystemAAFontSettings=on -Xmx512M \
--add-flags "-Dawt.useSystemAAFontSettings=gasp -Xmx512M \
--add-opens javafx.graphics/com.sun.glass.ui=ALL-UNNAMED \
-cp $out/share/bluej/boot.jar bluej.Boot"

View File

@ -107,7 +107,7 @@ stdenv.mkDerivation (finalAttrs: {
# _JAVA_AWT_WM_NONREPARENTING=1.
makeWrapper ${jdk8}/bin/java $out/bin/brmodelo \
--prefix _JAVA_AWT_WM_NONREPARENTING : 1 \
--prefix _JAVA_OPTIONS : "-Dawt.useSystemAAFontSettings=on" \
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp" \
--add-flags "-jar $out/share/java/brModelo.jar"
for size in 16 24 32 48 64 128 256; do

View File

@ -120,7 +120,7 @@ stdenv.mkDerivation {
mkdir -p "$out/bin"
makeWrapper "${jre}/bin/java" "$out/bin/cieid" \
--add-flags "-Djna.library.path='$out/lib:${libraries}'" \
--add-flags '-Dawt.useSystemAAFontSettings=on' \
--add-flags "-Dawt.useSystemAAFontSettings=gasp" \
--add-flags "-cp $out/share/cieid/cieid.jar" \
--add-flags "app.m0rf30.cieid.MainApplication"

View File

@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
makeWrapper ${jre}/bin/java $out/bin/crossfire-gridarta \
--add-flags "-jar $out/share/java/CrossfireEditor.jar" \
--set _JAVA_OPTIONS '-Dawt.useSystemAAFontSettings=on' \
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp" \
--set _JAVA_AWT_WM_NONREPARENTING 1
runHook postInstall

View File

@ -57,7 +57,7 @@ stdenv.mkDerivation rec {
makeWrapper ${jre}/bin/java $out/bin/crossfire-jxclient \
--add-flags "-jar $out/share/java/jxclient.jar" \
--set _JAVA_OPTIONS '-Dawt.useSystemAAFontSettings=on' \
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp" \
--set _JAVA_AWT_WM_NONREPARENTING 1
runHook postInstall

View File

@ -102,7 +102,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
]
} \
--prefix _JAVA_AWT_WM_NONREPARENTING : 1 \
--prefix _JAVA_OPTIONS : "-Dawt.useSystemAAFontSettings=on"
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
runHook postInstall
'';

View File

@ -65,7 +65,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
# make xdg-open overrideable at runtime
makeWrapper ${jdk11}/bin/java $out/bin/irpf \
--add-flags "-Dawt.useSystemAAFontSettings=on" \
--add-flags "-Dawt.useSystemAAFontSettings=gasp" \
--add-flags "-Dswing.aatext=true" \
--add-flags "-jar $BASEDIR/irpf.jar" \
--suffix PATH : ${lib.makeBinPath [ xdg-utils ]} \

View File

@ -55,7 +55,7 @@ stdenvNoCC.mkDerivation rec {
mkdir -p $out/share/java
cp -s $src $out/share/java/jflap.jar
makeWrapper ${jre8}/bin/java $out/bin/jflap \
--prefix _JAVA_OPTIONS : "-Dawt.useSystemAAFontSettings=on" \
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp" \
--add-flags "-jar $out/share/java/jflap.jar"
runHook postInstall
'';

View File

@ -60,7 +60,7 @@ stdenv.mkDerivation {
--add-flags "${baseJavaOpts} ${extraJavaOpts} -jar $out/share/josm/josm.jar" \
--prefix LD_LIBRARY_PATH ":" '${libXxf86vm}/lib' \
--prefix _JAVA_AWT_WM_NONREPARENTING : 1 \
--prefix _JAVA_OPTIONS : "-Dawt.useSystemAAFontSettings=on"
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
'';
meta = {

View File

@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
cp ${src} $out/share/java/kamilalisp-${version}.jar
makeWrapper ${jre}/bin/java $out/bin/kamilalisp \
--add-flags "-jar $out/share/java/kamilalisp-${version}.jar" \
--set _JAVA_OPTIONS '-Dawt.useSystemAAFontSettings=on' \
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp" \
--set _JAVA_AWT_WM_NONREPARENTING 1
'';

View File

@ -52,7 +52,7 @@ stdenv.mkDerivation {
} \
--prefix JAVA_HOME : ${jdk21.home} \
--add-flags "--jdkhome ${jdk21.home} \
-J-Dawt.useSystemAAFontSettings=on -J-Dswing.aatext=true"
-J-Dawt.useSystemAAFontSettings=gasp -J-Dswing.aatext=true"
# Extract pngs from the Apple icon image and create
# the missing ones from the 1024x1024 image.

View File

@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
install -D ${pname}.jar -t $out/share/java/
makeWrapper ${jdk11}/bin/java $out/bin/${pname} \
--add-flags "-jar $out/share/java/${pname}.jar" \
--set _JAVA_OPTIONS '-Dawt.useSystemAAFontSettings=lcd'
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
cat << EOF > $out/share/mime/packages/structorizer.xml
<?xml version="1.0" encoding="UTF-8"?>

View File

@ -87,7 +87,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
--add-flags "-Duser.dir=$CUSTOM_LIBS/" \
--add-flags "-Xmx512M" \
--add-flags "-jar $JAR" \
--set _JAVA_OPTIONS '-Dawt.useSystemAAFontSettings=lcd'
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
runHook postInstall
'';

View File

@ -64,7 +64,7 @@ stdenvNoCC.mkDerivation rec {
makeWrapper $out/lib/uppaal/uppaal $out/bin/uppaal \
--set JAVA_HOME ${jdk17} \
--set PATH $out/lib/uppaal:$PATH \
--prefix _JAVA_OPTIONS " " -Dawt.useSystemAAFontSettings=lcd
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp"
runHook postInstall
'';

View File

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
mkdir $out/bin
makeWrapper $out/share/workcraft $out/bin/workcraft \
--set JAVA_HOME "${jre}" \
--set _JAVA_OPTIONS '-Dawt.useSystemAAFontSettings=gasp';
--prefix _JAVA_OPTIONS " " "-Dawt.useSystemAAFontSettings=gasp";
'';
meta = {

View File

@ -17,7 +17,7 @@ let
botScript = "$out/bin/wpcleaner-bot";
runTaskScript = "$out/bin/wpcleaner-run-task";
extraJavaArgs = [
"-Dawt.useSystemAAFontSettings=lcd"
"-Dawt.useSystemAAFontSettings=gasp"
"-Xms1g"
"-Xmx8g"
];