Megasploot / Dungeondraft

a sleek tabletop encounter mapping tool for Windows 10
101 stars 4 forks source link

Save dialog does not open under Fedora 38 #59

Closed bergmannf closed 1 year ago

bergmannf commented 1 year ago

It seems that there is some incompatibility with something, when running on Fedora 38: When I try to open the save dialog nothing happens at all. It does not matter if I use the Save button or the Save As menu item, both do nothing.

There is a monologs log, but it is completely empty (~/.local/share/Dungeondraft/mono/mono_logs/2023-05-06_10.29.09_4251.log).

Running via CLI also doesn't show any error, when clicking Save.

Godot Engine v3.4.2.stable.mono.custom_build - https://godotengine.org
OpenGL ES 3.0 Renderer: AMD Radeon RX 6750 XT (navi22, LLVM 16.0.1, DRM 3.49, 6.2.14-300.fc38.x86_64)
OpenGL ES Batching: ON

Mono: Log file is: '/home/myuser/.local/share/Dungeondraft/mono/mono_logs/2023-05-06_10.30.16_4595.log'
ERROR: Cannot open X509CertificateMbedTLS file 'res://data/cacert.pem'.
   at: load (modules/mbedtls/crypto_mbedtls.cpp:150)
Mods refreshed.

Unhandled Exception:
System.ArgumentNullException: Value cannot be null.
Parameter name: path
  at System.IO.Directory.InternalEnumeratePaths (System.String path, System.String searchPattern, System.IO.SearchTarget searchTarget, System.IO.EnumerationOptions options) [0x00003] in <6a7c203f6f7a4f07b7fa766077730d49>:0 
  at System.IO.Directory.GetFiles (System.String path, System.String searchPattern, System.IO.EnumerationOptions enumerationOptions) [0x00000] in <6a7c203f6f7a4f07b7fa766077730d49>:0 
  at System.IO.Directory.GetFiles (System.String path, System.String searchPattern, System.IO.SearchOption searchOption) [0x00008] in <6a7c203f6f7a4f07b7fa766077730d49>:0 
  at ModManager.RefreshMods () [0x00028] in <aa1e9b4bf2ee455d9587afdfff43a1b1>:0 
  at Master._Ready () [0x001d8] in <aa1e9b4bf2ee455d9587afdfff43a1b1>:0 
Custom assets refreshed.
Custom assets directory not set.
ERROR: TLS handshake error: -9984
   at: _do_handshake (modules/mbedtls/stream_peer_mbedtls.cpp:87)
mbedtls error: returned -0x2700
[Warning] Failed to find tags file \home\myuser\.local\share\Dungeondraft\override.dungeondraft_tags.
Loading custom assets took 831ms.

I saw an old issue about this #6 so I checked I have zenity installed, but that is already present and it still doesn't work.

I tested both the 1.1.0.1 beta version as well as the latest stable version 1.0.4.7 and both have this issue.

I also checked against Fedora 37, but there the save dialog works.

bergmannf commented 1 year ago

Through some trial and error with the pointer to zenity I figured out, that the newer version of zenity seems to be the issue:

This is the one on Fedora 38, that does not work anymore:

zenity --version                                                                                       
3.91.0

This is the one on Fedora 37 that still works:

./zenity --version                                                                                       
3.44.0

I guess they probably changed the flags that are accepted. Hope that helps in fixing the problem.

githuberto commented 1 year ago

This seems to be caused by a bug that's fixed in zenity 3.92.0-1.

I was able to manually upgrade to fix the issue:

  1. Download zenity-3.92.0-1.fc38.x86_64.rpm from the RPMs table here: https://koji.fedoraproject.org/koji/buildinfo?buildID=2195197
  2. Run sudo dnf install ~/Downloads/zenity-3.92.0-1.fc38.x86_64.rpm (replace the path with wherever you saved the rpm).
bergmannf commented 1 year ago

zenity 3.92 was already released in the normal repositories, so at least on Fedora this now works again as expected. Closing this bug.