TormStorm / jagex-launcher-linux

Community projects to install the Jagex Launcher and use Jagex Accounts in Linux
GNU Affero General Public License v3.0
220 stars 24 forks source link

External links aren't opening properly when using the Jagex Launcher #114

Closed Makubry closed 11 months ago

Makubry commented 12 months ago

Describe the bug When I open either RuneLite or HDOS through the Jagex Launcher, I'm unable to open any external links, whether they be through the wiki lookup, clicking an in game update message, or opening a plugin's github page. This persists whether I'm redirecting the shell script to the .jar or .appimage I already have installed, and I have no issues opening links within the Jagex Launcher itself nor the RuneLite .jar or .appimage when opened independently.

To Reproduce Steps to reproduce the behavior:

  1. Launch the Jagex Launcher from within Lutris after installing with this script
  2. Open either RuneLite or HDOS with your preferred account
  3. Attempt to open any external link from within the launched client
  4. Witness nothing happen

Expected behavior Any attempt at opening a link would be expected to open in your preferred browser on Linux(Firefox, personally) as it functions when launching the game client directly from .jar or .appimage

Hardware information [System] OS: Fedora Linux 38 KDE Plasma Arch: x86_64 Kernel: 6.4.15-200.fc38.x86_64 Desktop: KDE Display Server: wayland

[CPU] Vendor: GenuineIntel Model: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz Physical cores: 6 Logical cores: 12

[Memory] RAM: 23.2 GB Swap: 8.0 GB

[Graphics] Vendor: NVIDIA Corporation OpenGL Renderer: NVIDIA GeForce GTX 1050 Ti/PCIe/SSE2 OpenGL Version: 4.6.0 NVIDIA 535.104.05 OpenGL Core: 4.6.0 NVIDIA 535.104.05 OpenGL ES: OpenGL ES 3.2 NVIDIA 535.104.05 Vulkan Version: 1.3.243 Vulkan Drivers: Intel(R) UHD Graphics 630 (CFL GT2) (1.3.246), NVIDIA GeForce GTX 1050 Ti (1.3.242)

Makubry commented 12 months ago

Redirecting Lutris to launch the runelite.sh script directly as JagexLauncher.exe gives the same issue, although launching the shell script directly from the system terminal works perfectly, so this seems to specifically be an issue with WINE/Lutris rather than the Jagex Launcher itself. With links within the Jagex Launcher working properly, I don't understand at all.

nmlynch94 commented 12 months ago

@Makubry Thank you for confirming it's caused by Wine. This is an issue we've seen pop up a few times and haven't been able to figure out why it's happening. I have a very similar system, but am unfortunately unable to reproduce the issue.

[System] OS: Fedora Linux 39 Workstation Edition Arch: x86_64 Kernel: 6.5.11-300.fc39.x86_64 Desktop: KDE Display Server: wayland

[CPU] Vendor: AuthenticAMD Model: AMD Ryzen 7 3700X 8-Core Processor Physical cores: 8 Logical cores: 16

[Memory] RAM: 31.2 GB Swap: 8.0 GB

[Graphics] Vendor: NVIDIA Corporation OpenGL Renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2 OpenGL Version: 4.6.0 NVIDIA 535.129.03 OpenGL Core: 4.6.0 NVIDIA 535.129.03 OpenGL ES: OpenGL ES 3.2 NVIDIA 535.129.03 Vulkan Version: 1.3.250 Vulkan Drivers: NVIDIA GeForce RTX 3070 (1.3.242)

FWIW, in my default applications chrome is set as the browser. Which is yours set to? Maybe it's a browser-specific problem.

Also, could you please confirm xdg-open google.com in a terminal properly opens the website?

If that works, could you please modify runelite.sh to also run xdg-open google.com as well as echo "$XDG_CURRENT_DESKTOP", and see if that also works?

Another useful test could be in lutris, select Jagex Launcher, choose the wine bottle and "open bash terminal" and then try xdg-open.

I'm wondering if maybe the DE detection isn't working inside of wine.

Makubry commented 12 months ago

Hello, thank you for your quick reply! I can do more testing later tonight, but here's what I have for right now:

My default browser is set to Firefox. I don't have any other browser installed on my machine, but I can test it with another option later.

Opening the system terminal and running xdg-open google.com opens the window properly in Firefox. When I add this line and echo $XDG_CURRENT_DESKTOP to my runelite.sh script and launch through the Jagex Launcher, it successfully opens google in firefox after I close the RuneLite window that launches with it. I couldn't find any output of the result for the echo, but when I open the bash terminal through Lutris as described and put both lines in, it successfully opens the link in google as well as returning "KDE".

So, in summary, everything worked as intended, so this seems to specifically be an issue with the game client, specifically through WINE/Lutris.

nmlynch94 commented 12 months ago

No problem. Thanks for checking that stuff. Very strange...So to be clear, were you changing runelite.sh, and then pressing "play" on runelite in the jagex launcher for this test? I can't imagine at all why xdg-open works there but not in RuneLite...

Makubry commented 12 months ago

Weirdly, that is the case. When the entirety of the runelite.sh file is #!/bin/sh xdg-open google.com and I launch RuneLite from the Jagex Launcher, google opens in Firefox with no issues. If I edit the same runelite.sh file and replace the xdg-open command with the jar launch command java -jar "$(pwd)"/Games/RuneLite/RuneLite.jar I get the issue once again, and links don't open externally from RuneLite.

nmlynch94 commented 12 months ago

Gotcha. I'm going to do some research and see if I can reproduce somehow. I thought before it had something to do with cinnamon because that's where I've seen it reported, but we have a very similar setup with Plasma so that much not be it.

If you're trying to sign into the client, I think a workaround could be to launch it from your cli, sign in, and then I think it'll still work in the jagex launcher because they both use ~/.runelite to store config.

TormStorm commented 11 months ago

The Lutris installation method is no longer supported. If you still aren't able to open external links on any of the Flatpaks please report this issue to their respective GitHub page.