control: reassign -1 lxc-templates

On 2020-02-07 11:38, Pirate Praveen wrote:
> Package: lxc-templates
> Version: 3.0.3-1
> Severity: critical
> Justification: breaks postgresql installation
> To reproduce, install debian buster using debian installer or live installer
> and select English India as language.
> Create an lxc container with
> lxc-create -n gitlab -t debian -- -r unstable
> Run dpkg-reconfigure locales inside container
> Generating locales (this might take a while)...
>  en_IN.en_IN...[error] character map file `en_IN' not found: No such file or
> directory
> [error] not all characters used in `outdigit' are available in the charmap
> done
> Generation complete.
> It works in the host buster system but fails in lxc.
> On host machine,
> Generating locales (this might take a while)...
>  en_IN.UTF-8... done
> Generation complete.
> Inside lxc, somehow it is trying to use en_IN.en_IN instead of en_IN.UTF-8,
> this also breaks postgresql installation.

You have stripped the most important part from the reportbug template,
i.e. the locale you are using. It happens that lxc-templates configure
the locales in the container using the LANG variable from the host

|        encoding=$(echo "$LANG" | cut -d. -f2)
|        chroot "$rootfs" sed -e "s/^# \(${LANG} ${encoding}\)/\1/" \
|            -i /etc/locale.gen 2> /dev/null
|        cat >> "$rootfs/etc/locale.gen" << EOF

The script wrongly considers that the LANG variable contains the
encoding. This is only true in case of ancient locales which existed
before unicode support has been added to glibc. In your case LANG only
contains "en_IN" and the above script consider that both locale and
encoding are "en_IN".

This is therefore not a locales issue, but rather an issue with the
lxc-templates package. Reassigning the bug back.

Aurelien Jarno                          GPG: 4096R/1DDD8C9B       

Reply via email to