Defold on Wayland, KDE and Fedora 42 [SOLVED!]

Hello all! It’s been a while!

I finally changed computers and I ditched Windows for Fedora 42 KDE edition. I’m on Wayland. What is the current support for this configuration? From what I gathered in the forums, there seems to be issues with Defold on Linux depending on desktop environment and or Wayland. I suppose I should try it but are there any known limitations I should be aware of?

I’d like to code in Defold after a somewhat long pause.

Thanks!

EDIT: I forgot to mention I have an AMD GPU. AMD Radeon RX 5700 XT.

So I tried and it’s working albeit the window is tiny as others have mentioned. Is it because of KDE or Wayland? I sure don’t want to install XFCE as I like KDE better. Any solution out there lurking for me?

Thanks!

EDIT: it could just be related to my 4k monitor and the fact that X11 apps are supposed to be scaled by themselves in my settings and Defold is not. Any workaround?

Although I am currently using GNOME, I created an account to share with you this workaround that took me quite some time to find. I know there are quite a few people trying to deal with this issue. The problem is not caused by 4K monitors or X11.

Here’s the workaround: Open a project in Defold. Maximize the window. Right-click on the title bar and go to: More Actions > Configure Special Application Settings… In the window that appears, click the “Add Property” button. Select “Maximum size” and save everything. Now, the window will no longer shrink under any circumstances.

2 Likes

Hi @tamduk !

Thanks for your help, the window is resized when I open a project but fonts are super tiny. I checked and there are no properties for that in “Configure special application settings”. Perhaps I can find somewhere in KDE that I can increase font size for just Defold.

Do you have larger fonts yourself in Defold? I mean are fonts rescaled too on your system?

My screen resolution is 1080p, so I didn’t require scaling. Unfortunately, I don’t know how to solve that issue.

yeah… I found this:

https://www.reddit.com/r/Fedora/comments/1ka01yz/java_apps_ui_is_small/

It’s an OpenJDK problem with Wayland and fractional scaling…

I suppose I can work in VSCode. But then I think it’s a subpar experience. Defold environment is awesome.

Folks!

For anyone having the tiny fonts / Defold app not scaled when on Wayland and using fractional scaling, do this! I created a launcher and used an environment variable like so: GDK_SCALE=2. This is working! I don’t know if the editor will work at runtime with projects though.

when running at the console, we get this which is a bit more verbose than just “./Defold” but even then we had the same warnings. To the Defold devs, is this normal or acceptable?

frank@fedora:~/Programs/Defold$ GDK_SCALE=2 ./Defold
INFO:TOOLS: Launcher version 1aafd0a262ff40214ed7f51302d92fa587c607ef
DEBUG:TOOLS: arg 0: ./packages/jdk-21.0.5+11/bin/java
DEBUG:TOOLS: arg 1: -cp
DEBUG:TOOLS: arg 2: ./packages/defold-1aafd0a262ff40214ed7f51302d92fa587c607ef.jar
DEBUG:TOOLS: arg 3: -Dfile.encoding=UTF-8
DEBUG:TOOLS: arg 4: -Djna.nosys=true
DEBUG:TOOLS: arg 5: -Ddefold.launcherpath=./Defold
DEBUG:TOOLS: arg 6: -Ddefold.resourcespath=.
DEBUG:TOOLS: arg 7: -Ddefold.version=1.10.4
DEBUG:TOOLS: arg 8: -Ddefold.editor.sha1=1aafd0a262ff40214ed7f51302d92fa587c607ef
DEBUG:TOOLS: arg 9: -Ddefold.engine.sha1=1aafd0a262ff40214ed7f51302d92fa587c607ef
DEBUG:TOOLS: arg 10: -Ddefold.buildtime=2025-08-04T15:27:09.245465
DEBUG:TOOLS: arg 11: -Ddefold.channel=editor-alpha
DEBUG:TOOLS: arg 12: -Ddefold.archive.domain=d.defold.com
DEBUG:TOOLS: arg 13: -Djava.net.preferIPv4Stack=true
DEBUG:TOOLS: arg 14: -Dsun.net.client.defaultConnectTimeout=30000
DEBUG:TOOLS: arg 15: -Dsun.net.client.defaultReadTimeout=30000
DEBUG:TOOLS: arg 16: -Djogl.texture.notexrect=true
DEBUG:TOOLS: arg 17: -Dglass.accessible.force=false
DEBUG:TOOLS: arg 18: -Ddefold.schema.check.disable=true
DEBUG:TOOLS: arg 19: --add-opens=java.base/java.lang=ALL-UNNAMED
DEBUG:TOOLS: arg 20: --add-opens=java.desktop/sun.awt=ALL-UNNAMED
DEBUG:TOOLS: arg 21: --add-opens=java.desktop/sun.java2d.opengl=ALL-UNNAMED
DEBUG:TOOLS: arg 22: --add-opens=java.xml/com.sun.org.apache.xerces.internal.jaxp=ALL-UNNAMED
DEBUG:TOOLS: arg 23: --add-opens=java.base/sun.nio.fs=ALL-UNNAMED
DEBUG:TOOLS: arg 24: --add-opens=java.desktop/sun.awt.image=ALL-UNNAMED
DEBUG:TOOLS: arg 25: -Xmx25152485376
DEBUG:TOOLS: arg 26: com.defold.editor.Main
DEBUG:TOOLS: arg 27: (null)
Picked up JAVA_TOOL_OPTIONS:
Picked up _JAVA_OPTIONS:
2025-08-23 18:45:37.624 WARN default javafx - Unsupported JavaFX configuration: classes were loaded from ‘unna
med module @707beb6d

(java:71826): Gdk-WARNING **: 18:45:38.220: XSetErrorHandler() called with a GDK error trap pushed. Don’t do that.
2025-08-23 18:45:38.522 INFO default com.defold.libs.ResourceUnpacker - deleting old unpack dirs from /home/fr
ank/.local/state/Defold/unpack
2025-08-23 18:45:38.525 INFO default com.defold.libs.ResourceUnpacker - Already unpacked for the editor versio
n 1aafd0a262ff40214ed7f51302d92fa587c607ef
2025-08-23 18:45:38.528 INFO default com.defold.libs.ResourceUnpacker - defold.unpack.path=/home/frank/.local/
state/Defold/unpack/1aafd0a262ff40214ed7f51302d92fa587c607ef

(java:71826): Gdk-WARNING **: 18:45:40.669: XSetErrorHandler() called with a GDK error trap pushed. Don’t do that.
2025-08-23 18:45:41.371 INFO default editor.updater - {:line 303, :message “Checking for updates”, :url “https
://d.defold.com/editor2/channels/editor-alpha/update-v4.json”}
2025-08-23 18:45:41.963 INFO default editor.updater - {:line 310, :message “No update found”}
2025-08-23 18:45:51.986 INFO default editor.boot - {:line 76, :message “Finished loading editor namespaces.”,
:namespace-counter 0}
2025-08-23 18:45:52.033 INFO default internal.low-memory - {:line 55, :message “Adding post-gc low-memory noti
fication listener to tenured generation pool.”, :threshold-megabytes 21600}
2025-08-23 18:45:52.118 INFO default editor.defold-project - {:line nil, :message “Initial resource sync compl
eted in 1.56 ms”}
2025-08-23 18:45:52.865 INFO default editor.defold-project - {:line 371, :message “Cached loaded save data in
system cache.”, :total 8, :retained 8, :unretained 0, :limit 20000}
2025-08-23 18:45:52.865 INFO default editor.defold-project - {:line nil, :message “Project loading completed i
n 700.19 ms”}
2025-08-23 18:45:53.025 INFO default editor.defold-project - {:line nil, :message “Project loaded”, :allocated
“109.08 MB”}
2025-08-23 18:45:53.362 DEBUG default org.eclipse.jgit.util.FS - readpipe [git, --version],/usr/bin
2025-08-23 18:45:53.368 DEBUG default org.eclipse.jgit.util.FS - readpipe may return ‘git version 2.50.1’
2025-08-23 18:45:53.368 DEBUG default org.eclipse.jgit.util.FS - remaining output:

2025-08-23 18:45:53.368 DEBUG default org.eclipse.jgit.util.FS - readpipe [git, config, --system, --edit],/usr/
bin
2025-08-23 18:45:53.370 DEBUG default org.eclipse.jgit.util.FS - readpipe may return ‘/etc/gitconfig’
2025-08-23 18:45:53.371 DEBUG default org.eclipse.jgit.util.FS - remaining output:

2025-08-23 18:45:53.426 INFO default util.http-server - {:line 376, :msg “Http server running”, :local-url “ht
tp://localhost:36143”}
2025-08-23 18:45:53.467 INFO default editor.boot-open-project - {:line 372, :message “project loaded”}

I did try adding “-Dsun.java2d.uiScale.enabled=true, -Dsun.java2d.uiScale=2” to the config file but it did not work.

To increase the size of Defold in Linux:

gsettings set org.gnome.desktop.interface scaling-factor 2

Hi @iotaHum !

I am on KDE. Is this variable / setting only in gnome or not? Also it will change stuff globally on my system. Perhaps for all java apps though which would be great!

This doubles the fonts in the Defold IDE, to make them the same size as Blender IDE fonts. Blender fonts do not change in size. There is an alternative method given on this page (looks like a better option, I have not tried it):

1 Like

Thanks @iotaHum !

The setting “-Dglass.gtk.uiScale=1.5” works well. I had tried other settings in the config file as said above with no success. This one is working. I much prefer this solution. This was the solution I most researched as configuring the java VM is the best way to go.