[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1021515: tex-common: user locale settings can cause postinst to fail



Hi Stuart,

> The postinst for tex-common is sensitive to the locale settings from the

Hmm, interesting ...

> $ luahbtex -ini   -jobname=luahbtex -progname=luahbtex luatex.ini </dev/null
> Unable to read environment locale: exit now.

We do set LANG=C already before running fmtutil, so I am surprised that
there is still something bad happening.


> Feeding in some environment variables to see if I could convince it to

What happens if you only feed LANG=C? Does it break?

Looking at the code, maybe we forgot to export LANG since it might not
be defined by now. As of now the code runs:

    LANGSAVE=$LANG
    LANG=C
    printf "Building format(s) $*.\n\tThis may take some time... "
    if $FMTUTIL "$@" > $tempfile 2>&1 ; then

LANG normally is already marked as export, but maybe in your particular
case it was unset, and thus not marked as to be exported.

Can you also do an experiment by adding
	export LANG
to /var/lib/dpkg/info/tex-common.postinst (AFAIR, not on Debian) after
setting it to LANG=C, and see if that helps.

> $ LANG=C LANGUAGE=C LC_CTYPE=C LC_NUMERIC=C LC_TIME=C LC_COLLATE=C LC_MONETARY=C LC_MESSAGES=C LC_PAPER=C LC_NAME=C LC_ADDRESS=C luahbtex -ini   -jobname=luahbtex -progname=luahbtex luatex.ini </dev/null
> bash: warning: setlocale: LC_COLLATE: cannot change locale (en_AU.UTF-8)

That is indeed strange and I cannot reproduce it.

> Installing the 'locales' package and correctly configuring it to the
> locales that were in the environment was also enough.

It should not be necessary, and in fact will create problems later on.

> particular locale required. Adding some locale overrides to the postinst
> would be better, but it might mean that users do not get error messages
> displayed to them in their preferred language.

The locale variables are set for the fmtutil run only, and none of the
programs involved is localized, so there is no change.

I am just wondering what other locale vars are necessary, back then
we thought (and it worked bakc then) that LANG is enough.

Regards

Norbert

--
PREINING Norbert                              https://www.preining.info
Mercari Inc.     +     IFMGA Guide     +     TU Wien     +     TeX Live
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13


Reply to: