Linux version? #873
Replies: 10 comments 12 replies
-
The latest releases are capable of running on Linux, but are still opaque due to the WinAPI crimes we're using for transparency not being implemented. This guide below provides a way for those on Linux with certain configurations to now use Blish HUD without native support. https://gist.github.com/martinlabate/c4e6f08880a009f88dc1edaa4c6cd87a It does involve some jank, but it's an option for those who really want it. |
Beta Was this translation helpful? Give feedback.
-
The necessary steps from the gist above to get it working on Linux aren't satisfying for me. Is the Linux support being looked at / worked at at all, or is there no intention? Just curious. |
Beta Was this translation helpful? Give feedback.
-
Even native Linux overlays for GW2 (such as Burrito) come with added complexity or workarounds. So to that end, no, I am not actively pursuing any form of Linux support with my development. It seems certain that anything we do will still require some amount of band-aiding/hoop-jumping to work. Among other things, varying desktop managers are a significant barrier to a consistent experience (as Burrito has found). We, of course, are willing to accept code contributions that make Blish HUD easier to use on Linux or require fewer workarounds as long as those contributions don't impact the experience for our general users. |
Beta Was this translation helpful? Give feedback.
-
Adding some more information based on some discussion in Discord recently |
Beta Was this translation helpful? Give feedback.
-
Posting my original comment from Discord here so that it is more likely to come up in search results: Sure thing. And just to clear some things up. The primary blocker for proper Linux support is unrelated to us running native or any of our dependencies. As you've probably seen, we do successfully run on Linux via Wine. Running natively doesn't directly solve any of the current issues. The main issue is related to some of the most important aspects of how we function as an overlay. We use certain WinAPI calls that make the Blish HUD window transparent AND prevent Blish HUD from blocking all keyboard and mouse input to the game. These calls are not implemented in Wine (I'm not even sure how they could be if we wanted them to due to how they're meant to interact with the window itself which is presumably handled by the window manager which can vary between Linux systems). Running via wine, this seems to be the only issue we've spotted. There are other methods for allowing window transparency which do work on Linux (this can be seen with the GW2 launcher window running via Wine), but that do not allow mouse input through the transparent regions. This would be a new issue that would have to be solved. Running native doesn't solve either issue. The WinAPI calls simply wouldn't be available at all on Linux if we run natively and would require platform specific calls to continue to use them for Windows. Further, there are no equivalent calls on Linux that would universally help us, as far as I am aware, as different DEs / WMs can still cause interruptions. Burrito doesn't even directly support anything beyond GNOME on x11 for this reason (AsherGlick/Burrito#119). The behavior just isn't consistent. Running native also makes it more difficult for us to communicate with Mumble than when we are running within Wine. Another problem that would need to be solved. As overlays are hacky in how they work to begin with, varying DEs and WMs cause for a lot of unintended behaviors. You can look through some of the other issues reported for Burrito to get an idea of what I mean: https://github.com/AsherGlick/Burrito/issues Franky, in many ways, we are lucky that Windows just happens to have a handful of APIs that allow us to perform the crimes we need to perform to make this a semi-reasonable experience. So when folks ask about working on a native version, it's important that all of the other issues are acknowledged and addressed. Running natively is the easy part. https://discord.com/channels/531175899588984842/603623649257324545/1094001355074584716 |
Beta Was this translation helpful? Give feedback.
-
Hello everyone,
Only super minor graphical glitches (like drop down boxes in the hud are now transparent because they are pure black). |
Beta Was this translation helpful? Give feedback.
-
I have now published the plugin for KWin (so this only works if you use a KWin / KDE desktop with KWin Version 5): https://github.com/FloFri/kwin-blishhud-shader The steps in short are as follows:
If someone manages to get it running, I would be glad if that person could write a better howto. Maybe someone is even able to contribute to the plugin. |
Beta Was this translation helpful? Give feedback.
-
FYI, I've added a channel to our Blish HUD Discord where this kind of stuff can also be discussed: https://discord.com/channels/531175899588984842/1290012018677645352 |
Beta Was this translation helpful? Give feedback.
-
Certainly great work youre doing with those KWin "hacks" but the thing is, it is only running on KWin. So for me thats more or less as helpful as a solution that would only run on Win without the K. Sadly BlissHUD stopped working on latest wine anyway, some mono/eglib NPE assertion. So I was fed up enough and got Burrito working again. More or less. BlissHUD also is moving to a more recent .NET framework which will probably break linux compatibility even more. Actually I don't understand why those addons use some obscure Mono/Windows only or Godot solution at all for the UI? It is platform independent and would also attract way more developers, cause Javascipt/Typescript is easy and everywhere. Electron natively supports transparent windows and also has setIgnoreMouseEvents / blur which at first glance seems to be exactly what is needed. Actually.., For the Pathing Module I wonder how hard can it be to just connect to burrito link, read in a taco XML file, steal some 3D transform functions from Burritos Ruby Scripts and then draw some vectors on a canvas element... |
Beta Was this translation helpful? Give feedback.
-
Any possibility to run Blish HUD on Linux?
There is Burrito, but it is a mess, and lacks a lot of functionality.
Beta Was this translation helpful? Give feedback.
All reactions