[systemd-devel] [PATCH] vconsole-setup: enable utf-8 mode explicitly

Tom Gundersen teg at jklm.no
Sun Jun 10 15:36:29 PDT 2012


On Sun, Jun 10, 2012 at 10:30 PM, Kay Sievers <kay at vrfy.org> wrote:
> Hmm, what setup exactly would be fixed by this?

In my case I can reprodce the problem by blacklisting my graphics
driver (i915). In this case my console at boot is not in utf-8 mode,
even though my locale is en_US.UTF-8.

Blacklisting i915 is not something most people would do, but I have
been told that in case of the proprietary nvidia module one would end
up in the same situation.

> Utf8 mode is always enabled by default in the kernel. so we should be
> fine by only disabling if we want to support legacy setups.

Even if that had been the case, I think it would make sense to allow
systemd-vconsole-setup to be called manually (alternatively the
service restarted) and for the right thing to in case you have changed
your locale settings.

I.e. if the locale is en_US.ISO-8859-1 at boot, then the admin changes
it to en_US.UTF-8 and calls systemd-vconsole-setup, I'd expect the
result to be the same as if the locale had been en_US.UTF-8 from the
beginning.

> What setup do we want to support here that disables this first from
> userspace or the kernel command line, and we later want to enable it
> again?

I think it is mostly a case of eliminating a "gotcha".

> If vt.default_utf8=0 is given on the command line, we should
> probably not overwrite it here.

Hm, that's a point. That said, not overriding this in the case of a
UTF-8 locale would mean that we get garbage on the console. Just
setting the correct non-utf-8 locale on the kernel command would do
the right thing, though.

-t


More information about the systemd-devel mailing list