www.cendio.com
Bug 6986 - not everything is translated in client Windows installer
: not everything is translated in client Windows installer
Status: CLOSED FIXED
: ThinLinc
Client platforms
: 1.3.1
: PC Unknown
: P2 Normal
: 4.9.0
Assigned To:
:
:
:
:
  Show dependency treegraph
 
Reported: 2017-06-08 14:14 by
Modified: 2018-01-24 08:55 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From cendio 2017-06-08 14:14:29
We've overlooked these two dialogs:

  "Warning: This Windows version is not supported"

  "A previous version of the ThinLinc Client is already installed. Do you want
to remove it?"
------- Comment #2 From cendio 2017-06-09 10:34:58 -------
Fixed now. Fortunately the warning for the wrong Windows version was already
translated, so it should be easy to test. Just start the installer on an old
Windows machine with one of our translated languages set.
------- Comment #4 From cendio 2017-06-12 14:48:44 -------
Urgh. The customizer also had similar strings.
------- Comment #6 From cendio 2017-06-16 11:13:31 -------
Works well. Tested by changing language and starting the setup in Windows XP
compatibility mode.
------- Comment #8 From cendio 2017-08-16 15:49:28 -------
Problems where we have string definitions out of sync for the installer &
customizer should never happen again if r32682 passes inspection. Please test.
------- Comment #9 From cendio 2017-08-22 14:30:23 -------
Verified using the update translation routine in make release for ThinLinc.
translations.nsh contains the newly translated strings. Works as expected.
------- Comment #10 From cendio 2017-12-19 08:42:46 -------
When I tried to build on my workstation I got:

cat clientfiles.nsh.in | awk '{ print $0"\r" }' > clientfiles.nsh
cat thinlinc-client.nsi.in | awk -v VERSION=`cat ../../VERSION`
'{gsub("%VERSION%", VERSION); print $0"\r"}' > thinlinc-client.nsi
../tlclient/configdefs2reg ../tlclient/tlclient_config_defs.h | awk '{ print
$0"\r" }' > settings.reg
cat ../ssh_known_hosts | sed 's@\(.*\) \(.*\) \(.*\)@"\1,\2"="\3"\r@'  >>
settings.reg
rm -rf motmp
mkdir -p motmp
for fn in ../tlclient/po/tmp.po ../tlclient/po/nl.po ../tlclient/po/pt_BR.po
../tlclient/po/it.po ../tlclient/po/fr.po ../tlclient/po/sv.po
../tlclient/po/es.po ../tlclient/po/de.po ../tlclient/po/tr.po
../tlclient/po/ru.po; do \
    msgfmt $fn -o motmp/`basename $fn`.mo; \
done
../../buildtools/bin/mo2nsh \
                 -s "Run ThinLinc Client"  -s "Warning: This Windows version is
not supported."  -s "A previous version of the ThinLinc Client is already
installed. Do you want to remove it?"  -s "A previous version of the ThinLinc
Client Customizer is already installed. Do you want to remove it?" \
    motmp/*.mo > intl/translations.nsh
Traceback (most recent call last):
  File "../../buildtools/bin/mo2nsh", line 84, in <module>
    main()
  File "../../buildtools/bin/mo2nsh", line 80, in main
    lang_name = LANG_NAMES[lang]
KeyError: ''
make[2]: *** [intl/translations.nsh] Fel 1
make[2]: Lämnar katalogen "/home/astrand/ctc/client/installer"
make[1]: *** [installer/setup.exe] Fel 2
make[1]: Lämnar katalogen "/home/astrand/ctc/client"
make: *** [client/tl-4.8.0post-client-windows.exe] Fel 2

Then, I re-ran the same command "make client-zip", and everything worked as
expected. I checked client/installer/Makefile and found:

    ../../buildtools/bin/mo2nsh \
                $(shell grep gettext
../tlclient/tlclient_extra_install_translations.h | awk -v FS='"' '{ print " -s
\"" $$2 "\""}') \
        motmp/*.mo > $@

When manually running the grep command I get:

$ grep gettext client/tlclient/tlclient_extra_install_translations.h | cbrun
i386 awk -v FS='"' '{ print " -s \"" $$2 "\""}'
 -s "    gettext_noop("Run ThinLinc Client"),"
 -s "    gettext_noop("Warning: This Windows version is not supported."),"
 -s "    gettext_noop("A previous version of the ThinLinc Client is already
installed. Do you want to remove it?"),"
 -s "    gettext_noop("A previous version of the ThinLinc Client Customizer is
already installed. Do you want to remove it?"),"

This does not look right...? 


I also looked at the rest of the commit and it seems like
tlclient_extra_windows_translations.h is never used?
------- Comment #11 From cendio 2018-01-23 11:04:59 -------
Tested with nightly build from 2018-01-23.

Windows language set to Swedish.
Set compatibility mode to XP and added the registry string value
"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Cendio ThinLinc
client_is1\UninstallString" and
"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Cendio ThinLinc
client customizer_is1\UninstallString" to non-empty strings in the 32-bit
registry to simulate existing install of very old ThinLinc.

Both strings are now translated in client and customizer installers.