Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Logos 30+ Support #22

Open
thw26 opened this issue Dec 30, 2023 · 8 comments
Open

Logos 30+ Support #22

thw26 opened this issue Dec 30, 2023 · 8 comments
Assignees
Labels
bug Something isn't working installer This issue is related to the install routine prayer We especially need God's help to solve this issue wine The issue is related to an upstream Wine issue.

Comments

@thw26
Copy link
Collaborator

thw26 commented Dec 30, 2023

When attempting to install the latest Logos versions, the install will report that the Windows version is outdated.

We need to determine what new wine DLLs are needed. @jg00dman has been working on this one in particular. He has made some progress passed an initial hurdle, but at present he has hit a wall and said we need to pray for God's help.

ferion11/LogosLinuxInstaller#219

We no longer need the environment variable workaround in the Python script for this as we give users the option of selecting a Logos release version on install. Further, with this commit b33870d, we now filter out unusable Logos versions.


From John:

The issue has to do with the new dependency for Two system DLLs:

  • icuuc.dll (this is the ICU "common" library)
  • icuin.dll (this is the ICU "i18n" library)

You can install them, but you need to install both the 32bit and the 64 bit versions for the installer to work due to an oddity in the way the installer checks for the libraries.

The problem is that's only part of the battle. Once installed you have a version of Logos which will only crash. I need to get that crash fixed before we move forward.

@thw26 thw26 added the bug Something isn't working label Dec 30, 2023
@thw26 thw26 added the prayer We especially need God's help to solve this issue label Jan 6, 2024
@thw26 thw26 added installer This issue is related to the install routine wine The issue is related to an upstream Wine issue. labels Mar 7, 2024
@tbleher
Copy link
Contributor

tbleher commented Apr 13, 2024

Is there anything I can do to help here? I'm completely new to Logos, and would like to get it running on my computer. I'm a seasoned C++ programmer and know a lot about Linux internals (linking, shared libraries etc.). I don't have a lot of free time, but am willing to investigate stuff or try things out if you point me to things which you feel might help.

@thw26
Copy link
Collaborator Author

thw26 commented Apr 15, 2024

Is there anything I can do to help here? I'm completely new to Logos, and would like to get it running on my computer. I'm a seasoned C++ programmer and know a lot about Linux internals (linking, shared libraries etc.). I don't have a lot of free time, but am willing to investigate stuff or try things out if you point me to things which you feel might help.

Hello @tbleher!

For the past while we have been praying that God would help us to get this issue resolved. Perhaps you are an answer to our prayers! We need folks particularly skilled in languages like C++ due to our heavy reliance on Wine. I would like to at least point you in some of the right directions to get you caught up to speed.

You can find the AppDB for Logos on Wine here:

https://appdb.winehq.org/objectManager.php?sClass=application&iId=771

Here is the Wine Gitlab:

https://gitlab.winehq.org/explore/groups

We have outstanding issues that none of us have had time to git bisect or other issues related to upstream. The main issues for us from the Wine side can be found here: https://github.com/ferion11/LogosLinuxInstaller/wiki#known-issues

  • No media playback. CrossOver and Steam Proton are working on these issues upstream
  • An Async crash. Upstream is aware of this issue; it is primarily due to a lack of error catching. (See Logos crashing on load ferion11/LogosLinuxInstaller#205 (comment))
  • Printing fails to work. This needs bisected by us.
  • The big kahuna is the menu bug. @jg00dman had been working on this, but it requires some programming skills beyond where @n8marti and I are.

These matter for us as they also affect which settings we use in our install script, sort of a give and take between the two.

I bring all this up to say that there are other issues that can help you get acquainted with the problems we are facing.

While I don't know as much as John does after he spent time digging into this, all I can do is mention what he had shared and I posted above.


From John:

The issue has to do with the new dependency for Two system DLLs:

icuuc.dll (this is the ICU "common" library)
icuin.dll (this is the ICU "i18n" library)

You can install them, but you need to install both the 32bit and the 64 bit versions for the installer to work due to an oddity in the way the installer checks for the libraries.

The problem is that's only part of the battle. Once installed you have a version of Logos which will only crash. I need to get that crash fixed before we move forward.


If you want to get involved with what free time you can spare us, please reach out to me on Matrix if you want to communicate more easily with the developers.

@tbleher
Copy link
Contributor

tbleher commented Apr 17, 2024

Thanks @thw26 for all the pointers! I'm currently looking into wine to understand how to debug it better (I've used wine in the past, but only once debugged a problem there, and that was more than ten years ago). I'll try to see what I can find, but it will probably take a while.

@Freilichtbuehne
Copy link

Any update on this?

@thw26
Copy link
Collaborator Author

thw26 commented Jun 4, 2024

The good Lord has yet to open the door we need. @tbleher and @jg00dman are those researching this and/or working on it in their free time.

@tbleher
Copy link
Contributor

tbleher commented Jun 7, 2024

A short update: I made some progress and can now install and run Logos 10.34 on Ubuntu 22.04 with Wine 9.9 devel, currently without using the LogosLinuxInstaller (I have not adapted any code in the installer yet).

Side note: I should warn, though, that right now my install crashes reliably after a while with a System.AccessViolationException inside System.Windows.Media.Imaging.BitmapDecoder.SetupDecoderFromUriOrStream which is a known issue and happened with previous versions, too (the first report I found of this crash was https://community.logos.com/forums/t/121.aspx?PageIndex=67 from 2021). So while I can install and start Logos, I have no usable system, yet.

The key insight to get Logos starting: the icu dlls (mentioned in the top comment of this issue) need some data files for correct functioning. I installed a Windows VM from https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/ , and copied the following files to wine:

  • windows/globalization/ICU/icudtl.dat
  • windows/globalization/ICU/metaZones.res
  • windows/globalization/ICU/timezoneTypes.res
  • windows/globalization/ICU/windowsZones.res
  • windows/globalization/ICU/zoneinfo64.res
  • windows/system32/icu.dll
  • windows/system32/icuin.dll
  • windows/system32/icuuc.dll
  • windows/syswow64/icu.dll
  • windows/syswow64/icuin.dll
  • windows/syswow64/icuuc.dll

I also installed dotnet8 via winetricks (though I don't know if this exact version is required).

In principle, all these files are derived from OpenSource libraries, so it might be possible to distribute them (I asked about that at microsoft/icu#151 ). If not, it should be possible to rebuild them from source (https://github.com/microsoft/icu is the microsoft variant of the ICU libraries, and they even publish dlls, but I haven't checked yet if they work with wine); the data files should also be buildable from source (and in fact a lot of programs ship their own copy of these files), but I don't know the exact process yet how to build the dat file; the documentation at https://unicode-org.github.io/icu/userguide/icu_data/ is quite large. Probably some invocation of icupkg.

So I think the next steps are:

  • Figure out whether LogosLinuxInstaller can just bundle the Windows DLLs and data files or how to build them from source
  • Adapt the installer appropriately, or add the icu libraries and data to winetricks
  • Fix the crash when running Logos (that would need someone experienced with .Net - from looking at the backtrace, it looks as if it tries to load a bitmap - running the code inside a debugger and figuring out the URI it tries to load might help in better understanding the issue)

@tbleher
Copy link
Contributor

tbleher commented Jun 9, 2024

I have opened a separate issue for the Logos crash (since this seems to be independent of the exact Logos version) at #107, so that issue can be tracked separately.

@thw26
Copy link
Collaborator Author

thw26 commented Jun 10, 2024

Also, see this issue:

https://bugs.winehq.org/show_bug.cgi?id=53354

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working installer This issue is related to the install routine prayer We especially need God's help to solve this issue wine The issue is related to an upstream Wine issue.
Projects
None yet
Development

No branches or pull requests

4 participants