Closed Romz24 closed 1 year ago
This looks like a duplicate of #186. The user was able to solve the issue by setting the regional settings back to En-US.
I haven't investigated this issue thoroughly yet, but it might be related to how SteamOS 3 handles locales.
The user was able to solve the issue by setting the regional settings back to En-US.
Yes, this fixes the issue. But I want to use Ukrainian language instead of English. I have to change the language every time to use your program, it's very inconvenient.
I've looked into the issue some more, and it might be because SteamOS 3 does not provide the necessary files for locales besides en_US.UTF-8
, which is what SteamOS 3 uses by default.
To confirm that, could you run the following commands while your locale is Ukrainian and print the results?
locale
locale -a
For comparison's sake, on my Arch install, it results in the following:
$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
$ locale -a
locale -a
C
C.UTF-8
en_GB.utf8
en_US
en_US.iso88591
en_US.utf8
fi_FI.utf8
POSIX
(deck@STEAMDECK ~)$ locale -a
locale: Cannot set LC_COLLATE to default locale: No such file or directory
C
POSIX
en_US.utf8
(deck@STEAMDECK ~)$ locale
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC=uk_UA.UTF-8
LC_TIME=uk_UA.UTF-8
LC_COLLATE=uk_UA.UTF-8
LC_MONETARY=uk_UA.UTF-8
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT=uk_UA.UTF-8
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
(deck@STEAMDECK ~)$
I've created a test build with a potential fix. You can install it by running the following command:
flatpak install --user https://dl.flathub.org/build-repo/125371/com.github.Matoking.protontricks.flatpakref
Protontricks should then launch normally, although some UI text might be missing translations. Please check if it works.
To be more precise, Protontricks should reset the locale to en_US.UTF-8
if a locale is configured but it doesn't have the corresponding locale files. Applications such as Zenity will crash if they're missing.
You could also generate them yourself as some Steam Deck users have done for games and apps that require it. However, that solution requires removing the read-only mode from filesystem and it can be a hassle to keep it working. Ideally, this issue would be solved by Valve.
In either case, if the locales are generated properly, some UI text should then appear in the correct language if the translation exists.
I've pushed a fix to master, and it will be included proper in a future release. This should fix the issue going by the same problem and solution appearing for other applications on Steam Deck. The issue can be reopened if that's not the case, however.
Describe the bug When I change the system language which is different from English, the prefix menu does not open.
I noticed that a similar error appears not only for me, at least here is the same thing: https://github.com/Matoking/protontricks/issues/186#issuecomment-1331144016
To Reproduce
Expected behavior I want the application to work correctly in other languages
System (please complete the following information):
Additional context I tried to run the application through the console to see the errors, the result is in the screenshot.
protontricks.txt