installer
installer copied to clipboard
Language of installer does not match display language
Steps to reproduce
Download https://dotnet.microsoft.com/download/thank-you/dotnet-sdk-3.0.100-preview6-windows-x64-installer and install on a system with english display language being set but german region settings. This only happens since preview6.
Expected behavior
- Language of installer should be english as that's what i have set as display language
Actual behavior
- Language of installer seems to be german
- Some texts seem to be missing
Environment data
OS Version: 10.0.18362 N/A Build 18362
@johnbeisner
@batzen "Microsoft .NET Core SDK 3.0.100 - preview6 (x86)" is an 'installation component' and my from understanding will not be localized. Reference: https://github.com/dotnet/cli/issues/11398
@johnbeiser i did not request for it to be localized. This issue is about the fact that the installer ignores the currently set display language and uses the region setting instead. Previous previews either respected my settings or were not localized at all, don't know if localization is new in preview6.
I have similar problem with daily .NET Core 3.0 SDK installer. It shows many things in Russian, but my Windows 10 is in English...
Same with ASP.NET Core 3.0 Runtime (v3.0.1) - Windows Hosting Bundle Installer. If I see some system messages in German I always think that there may be something wrong.
In my opinion, if the server admin choose to install the server in English it's because for he, it's better to work, troubleshoot, find answers for error messages in English instead of the local region. So a german admin choose to work with Windows Server in english, a brazilian admin choose to work with english too.. I'm from Brazil, i think that here i never saw a Windows Server running in brazilian or even portuguese. Always in english.
So i don't see a reason to use Region instead of Language by default... If the author lives in Germany and choose to use a English machine to work, why FORCE him to install something in germany?
Maybe could be an option to change the installation language by parameter (for example, i work with a english server, and my personal workstation is in portuguese, maybe one day i would like to debug/reproduce something in my workstation, so i would like to install an english .NET Core in my portuguese machine)..
So i finally found out what's causing this.
bal:UseUILanguages="yes"
has to be added to BootstrapperApplicationRef
in bundle.wxs
.
That way wix uses the users set UI language for the UI and not the region language.
@johnbeisner @livarcocc @NikolaMilosavljevic @dleeapho
@batzen sounds like this should be filed as a bug in wix, it is just wrong to display UI in the regional language.
@miloush It's fixed in wix 4. The solution i proposed is the way to fix it while using wix 3. They didn't want to introduce such a "breaking" change in wix 3 so the default value for UseUiLanguages is false in wix 3.
@wli3
this is a loc issue, we should bump the priority. Although looks like the root cause is in wix. @joeloff could you look into it? But I think it should be fine in 6.0 timeframe
It's a small fix i could provide through a PR for 5.0.
We can change the installer without taking an update of wix? Could give us some guidance?
We would have to update wix to, at least, version 3.11.
I would do this in a PR but since there seems to be some "private" drop location (WixDownloadUrl
) for the wix binaries i am not sure how to update in that case.
The change required, when using wix 3.11 (which was released in May 2017) is:
In bundle.wxs replace
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.Foundation">
with
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.Foundation" bal:UseUILanguages="yes">
.
I'd suggest jumping to 3.11.2 - it has the latest security fixes
I have the same problem: I have English Windows 10, but the installer insists on running in German. Will running a VPN help?
A VPN won't help as the installer uses the locale settings instead of the display language. If you change the number and datetime locale to english the installer should show up in english too.
You can also override the displayed language by launching the bundle and passing "/lang 1033" or one of the other supported LCIDs.
To expand on joeloff's reply (thanks for the workaround!):
- download the installer
- open command prompt in the folder with installer
- run
dotnet-sdk-3.1.415-win-x64.exe /lang 1033
, adjust version to your own.
Now installer will start with English UI.
As @vcaraulean says the /lang
parameter works.
Please add this info when executing dotnet-sdk-xxxx-yyy.exe /?
Guys, you are my heroes dotnet-sdk-6.0.402-win-x64.exe /lang 1033 talks English. Could someone update the output of dotnet-sdk-6.0.402-win-x64.exe /help - so that the ordinary user has a chance to learn about parameter lang 1033
When we move to WiX 4, we should revisit this potentially.
@marcpopMSFT From the above it seems that this issue will get fixed by moving to WiX 4.
Any progress on this? My installer shows something in Polish