Mono-based app no longer starts on Tumbleweed

Hi guys, I have been using a VPN client called AIRVPN on occasion. After one of the most recent updates for Tumbleweed it will no longer start when I try to launch it from the shortcut. If I try to start it in terminal I get this error:

[FONT=monospace]sudo airvpn
WARNING: The runtime version supported by this application is unavailable.
Using default runtime: v4.0.30319
I 2015.12.02 20:04:59 - AirVPN client version: 2.10.3 / x64, System: Linux, Name: Welcome to openSUSE 20151128 “Tumbleweed” - Kernel \r (\l). / x64
. 2015.12.02 20:04:59 - Reading options from /root/.airvpn/AirVPN.xml
. 2015.12.02 20:04:59 - Profile options not found, using defaults.

Unhandled Exception:
System.TypeInitializationException: The type initializer for ‘System.Windows.Forms.WindowsFormsSynchronizationContext’ threw an exception. —> System.
TypeInitializationException: The type initializer for ‘System.Windows.Forms.XplatUI’ threw an exception. —> System.ArgumentNullException: Could not o
pen display (X-Server required. Check your DISPLAY environment variable)
Parameter name: Display
at System.Windows.Forms.XplatUIX11.SetDisplay (IntPtr display_handle) <0x418f5570 + 0x00b9b> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11…ctor () <0x4189fc70 + 0x001df> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11.GetInstance () <0x418afd30 + 0x0005b> in <filename unknown>:0
at System.Windows.Forms.XplatUI…cctor () <0x418bfe20 + 0x00137> in <filename unknown>:0
— End of inner exception stack trace —
at System.Windows.Forms.Theme.get_MenuAccessKeysUnderlined () <0x418f3fe0 + 0x0000b> in <filename unknown>:0
at System.Windows.Forms.SystemInformation.get_MenuAccessKeysUnderlined () <0x418f2910 + 0x00017> in <filename unknown>:0
at System.Windows.Forms.Control…ctor () <0x418f1640 + 0x00243> in <filename unknown>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:.ctor ()
at System.Windows.Forms.WindowsFormsSynchronizationContext…cctor () <0x418f2840 + 0x0001f> in <filename unknown>:0
— End of inner exception stack trace —
at System.Windows.Forms.Control…ctor () <0x418f1640 + 0x00053> in <filename unknown>:0
at System.Windows.Forms.ScrollableControl…ctor () <0x418f10d0 + 0x0000f> in <filename unknown>:0
at System.Windows.Forms.ContainerControl…ctor () <0x418f0f40 + 0x00027> in <filename unknown>:0
at System.Windows.Forms.Form…ctor () <0x418f06a0 + 0x000e7> in <filename unknown>:0
at AirVPN.Gui.Form…ctor () <0x418ed660 + 0x0000f> in <filename unknown>:0
at AirVPN.Gui.Forms.Main…ctor () <0x418ec260 + 0x0013f> in <filename unknown>:0
at (wrapper remoting-invoke-with-check) AirVPN.Gui.Forms.Main:.ctor ()
at AirVPN.UI.Linux.Program.Main () <0x41880d90 + 0x00137> in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for ‘System.Windows.Forms
t’ threw an exception. —> System.TypeInitializationException: The type initializer for 'System.Windows.Forms.XplatU
.ArgumentNullException: Could not open display (X-Server required. Check your DISPLAY environment variable)
Parameter name: Display
at System.Windows.Forms.XplatUIX11.SetDisplay (IntPtr display_handle) <0x418f5570 + 0x00b9b> in <filename unknown>:
at System.Windows.Forms.XplatUIX11…ctor () <0x4189fc70 + 0x001df> in <filename unknown>:0
at System.Windows.Forms.XplatUIX11.GetInstance () <0x418afd30 + 0x0005b> in <filename unknown>:0
at System.Windows.Forms.XplatUI…cctor () <0x418bfe20 + 0x00137> in <filename unknown>:0
— End of inner exception stack trace —
at System.Windows.Forms.Theme.get_MenuAccessKeysUnderlined () <0x418f3fe0 + 0x0000b> in <filename unknown>:0
at System.Windows.Forms.SystemInformation.get_MenuAccessKeysUnderlined () <0x418f2910 + 0x00017> in <filename unkno
at System.Windows.Forms.Control…ctor () <0x418f1640 + 0x00243> in <filename unknown>:0
at (wrapper remoting-invoke-with-check) System.Windows.Forms.Control:.ctor ()
at System.Windows.Forms.WindowsFormsSynchronizationContext…cctor () <0x418f2840 + 0x0001f> in <filename unknown>:0
— End of inner exception stack trace —
at System.Windows.Forms.Control…ctor () <0x418f1640 + 0x00053> in <filename unknown>:0
at System.Windows.Forms.ScrollableControl…ctor () <0x418f10d0 + 0x0000f> in <filename unknown>:0
at System.Windows.Forms.ContainerControl…ctor () <0x418f0f40 + 0x00027> in <filename unknown>:0
at System.Windows.Forms.Form…ctor () <0x418f06a0 + 0x000e7> in <filename unknown>:0
at AirVPN.Gui.Form…ctor () <0x418ed660 + 0x0000f> in <filename unknown>:0
at AirVPN.Gui.Forms.Main…ctor () <0x418ec260 + 0x0013f> in <filename unknown>:0
at (wrapper remoting-invoke-with-check) AirVPN.Gui.Forms.Main:.ctor ()
at AirVPN.UI.Linux.Program.Main () <0x41880d90 + 0x00137> in <filename unknown>:0
[/FONT]

I contacted the AIRVPN people but they appear to have no clue. There was a common bug with apps that use mono including this one where a file called libgdiplus.so wasn’t linked properly but that is not the problem. I uninstalled and reinstalled the mono packages including mono-complete but that had no effect. I THINK this may be a permissions problem but honestly I’m not sure. If anyone has any ideas, please let me know! (also it is worth noting that I get a different error when I use su and then run the program in terminal but I think they are unrelated. Regardless, the regular sudo command in terminal used to work with this app so that should not be the issue.)

But in case it does matter, here is the output I get when I run su and then the vpn client:

airvpn
WARNING: The runtime version supported by this application is unavailable.
Using default runtime: v4.0.30319
I 2015.12.04 20:40:47 - AirVPN client version: 2.10.3 / x64, System: Linux, Name: Welcome to openSUSE 20151201 “Tumbl
eweed” - Kernel \r (\l). / x64
. 2015.12.04 20:40:47 - Restarting with admin privileges
# QStandardPaths: wrong ownership on runtime directory /run/user/1000, 1000 instead of 0
klauncher not running… launching kdeinit
QStandardPaths: wrong ownership on runtime directory /run/user/1000, 1000 instead of 0
kdeinit5: preparing to launch ‘libkdeinit5_klauncher’
kdeinit5: Launched KLauncher, pid = 17619, result = 0
QStandardPaths: wrong ownership on runtime directory /run/user/1000, 1000 instead of 0
Qt: Session management error: networkIdsList argument is NULL
No DBUS session-bus found. Check if you have started the DBUS server.
kdeinit5: Communication error with launcher. Exiting!
"KLauncher could not be reached via D-Bus. Error when calling kdeinit_exec_wait:
Not connected to D-Bus server
"
Don’t need password!!

This may be the actual problem, I’m not sure.

Sorry for the spam of posts but disregard that second post about the su, that clearly is not the issue!

Looks like your stdout includes 2 issues…

The most serious is that it can’t open a display.

The other mysterious issue are all those <filename unknown>.
Is that really what is being returned and not something you’re doing to sanitize the output?

In any case, the display error is somewhat explanatory.
Someone has to run a debugger (MonoDevelop?) and inspect the values presented, and modify.

Are you sure AIRVPN people refused to look into this more deeply?
As a compiled application, this isn’t something the End User is typically expected to resolve.

You will need to explain to AIRVPN you are running on a bleeding edge distro which is expected to integrate new architecture soon to be seen in stable releases so it’s in their best interest to resolve now before it’s seen by many more.

TSU

Thank you for letting me know this! I am relieved to see that it is something I can’t really fix on my own, I have been trying for some time now. I copied and pasted your message to the AIRVPN support, I hope that’s cool :slight_smile:

Sure, anything I post is public and quotable without asking…

TSU