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

Empire Total War for Linux is playable #80

Closed
BostonBSD opened this issue Feb 14, 2022 · 7 comments
Closed

Empire Total War for Linux is playable #80

BostonBSD opened this issue Feb 14, 2022 · 7 comments

Comments

@BostonBSD
Copy link

BostonBSD commented Feb 14, 2022

Empire Total War for Linux starts up and plays like normal.
It appears nearly the same as on a Linux system, it's not quite as
smooth as on Windows with the same hardware, but perfectly playable.

I do have some sort of odd issue with steam-utils though.
When it starts up I get the message below in the terminal.
The steam windows open like normal, but I cannot click on anything.
I need to press control-C in the terminal {look at the last line} to end the process, steam doesn't exit,
but proceeds to operate like normal. Everything is functional and clickable.

It looks like an authentication problem, it's probably my own fault though.
Maybe something with polkit.

System startup time: 4.92 seconds
BuildCompleteAppOverviewChange: 117
RegisterForAppOverview 1: 6ms
RegisterForAppOverview 2: 6ms
Installing breakpad exception handler for appid(steam)/version(1642451672)
Could not connect to X session manager: Authentication Rejected, reason : None of the authentication protocols specified are supported and h
                                                            ��&

Installing breakpad exception handler for appid(steam)/version(1642451672)
Warning: failed to set thread priority: set failed for -10: -1: setpriority() failed
Installing breakpad exception handler for appid(steam)/version(1642451672)
Warning: failed to set thread priority: set failed for -10: -1: setpriority() failed
^CCould not connect to X session manager: Authentication Rejected, reason : None of the authentication protocols specified are supported and h
@shkhln
Copy link
Owner

shkhln commented Feb 14, 2022

10500? Currently titled "Total War: EMPIRE - Definitive Edition".

Could not connect to X session manager: Authentication Rejected, reason : None of the authentication protocols specified are supported and h

…ost-based authentication failed

@BostonBSD
Copy link
Author

BostonBSD commented Feb 14, 2022

10500? Currently titled "Total War: EMPIRE - Definitive Edition".

Yes that's it.

... The terminal doesn't print out "ost-based authentication failed" although I would assume that is what was meant.
Maybe a font issue, the terminal is UTF8.

@shkhln
Copy link
Owner

shkhln commented Feb 14, 2022

Yes that's it.

Noted.

@BostonBSD
Copy link
Author

BostonBSD commented Feb 15, 2022

I think I figured out a workaround.
Starting steam like this appears to prevent this issue:
LD_PRELOAD={$LD_PRELOAD}:monofix.so steam

  • or depending upon the shell used -

LD_PRELOAD=${LD_PRELOAD}:monofix.so steam

@shkhln
Copy link
Owner

shkhln commented Feb 15, 2022

That does precisely nothing.

@BostonBSD
Copy link
Author

BostonBSD commented Feb 15, 2022

That does precisely nothing.

Lol. It appears to be a sporadic issue.
After several restarts it works unreliably.

If I could reproduce the problem reliably, I could give you more information.

Three out of five restarts using the stated command does work as intended.
Zero out of several restarts using just "steam" works as intended.

Perhaps I should assume after a single restart the shell script somehow changes the environment variables for subsequent restarts? This may explain something.

I should note that starting "Total War" directly without setting any environment variables or entering into the steam platform first nearly always works as intended [and when I exit the game the steam platform also works as it should].

This post is only referencing the steam platform itself without anything else.

@BostonBSD
Copy link
Author

BostonBSD commented Feb 15, 2022

I fixed this message:

(steam:64489): GdkPixbuf-WARNING **: 23:18:32.413: Cannot open pixbuf loader module file '/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache': No such file or directory

This likely means that your installation is broken.
Try running the command
  gdk-pixbuf-query-loaders > /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache
to make things work again for the time being.

By running this:
/compat/linux/usr/bin/gdk-pixbuf-query-loaders-32

And copying the output to:
/compat/linux/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache

=====
Now it also tells me:

Installing breakpad exception handler for appid(steam)/version(1642451672)
Warning: failed to set thread priority: set failed for -10: -1: setpriority() failed
Installing breakpad exception handler for appid(steam)/version(1642451672)
Warning: failed to set thread priority: set failed for -10: -1: setpriority() failed
[2022-02-14 23:31:37] Background update loop checking for update. . .
[2022-02-14 23:31:37] Checking for available updates...
[2022-02-14 23:31:37] Downloading manifest: https://cdn.akamai.steamstatic.com/client/steam_client_ubuntu12
^CInstalling breakpad exception handler for appid(steam)/version(1642451672)
[2022-02-14 23:32:07] Download skipped: /client/steam_client_ubuntu12 version 1642451672, installed version 1642451672, existing pending version 0
[2022-02-14 23:32:07] Nothing to do

Notice that it enters into a background update loop, which I never waited around for previously.
If I cancel out of that loop with a control-C, steam becomes responsive and works as it should.

If I start a game directly I am willing to bet that either the loop completes the update before I finish the game or never enters the update loop.

The update loop might not start on every platform startup, which may explain the difficulty in reproducing this issue.

I also noticed that the shell script tries to call the "lspci" command

sh: lspci: command not found

Which obviously wouldn't work because that is a GNU/Linux command and we're using FreeBSD.
If this message were coming from a BSD shell script, which I think it isn't.
I think it is coming from a Linux script, but the CentOS userland does not have an lspci command.
The Ubuntu userland does have an lspci command [the alternative linux compat userland], which I am not using for steam-utils.

I also get this message:

ERROR: ld.so: object 'steamfix.so' from LD_PRELOAD cannot be preloaded: ignored.

That also might have something to do with this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants