kbd locale errors

Jakub Bogusz qboosh at pld-linux.org
Thu Apr 10 18:36:10 CEST 2008


On Thu, Apr 10, 2008 at 06:04:27PM +0300, Elan Ruusamäe wrote:
> On Thursday 10 April 2008 17:51:58 Jakub Bogusz wrote:
> > > Loading console font and map.......................................[ BUSY
> > > ]locale: Cannot set LC_CTYPE to default locale: No such file or directory
> > > locale: Cannot set LC_MESSAGES to default locale: No such file or
> > > directory locale: Cannot set LC_ALL to default locale: No such file or
> > > directory stty: invalid argument `-utf8'
> > > Try `stty --help' for more information.
> > >                                                                    [ DONE
> > > ] Enabling SAK sequence..............................................[
> > > DONE ] Starting Gpm
> > > service...............................................[ DONE ]
> > >
> > > ---
> > > these came from kbd-1.12-17.i686, but that version doesn't include latest
> > > qboosh changes [1]. there's no 'locale' command invocation i can find
> > > from kbd package. not even matces for 'stty' invocation.
> >
> > locale is used in /etc/rc.d/init.d/console and /sbin/setsysfont scripts to
> > detect UTF-8 encoding.
> >
> > The other thing is that locales don't work properly before /usr is
> > mounted or if locale data is missing in locale-archive (in such case
> > keyboard and font maps could be initialized improperly).
> 
> so what's the solution? 
> 
> - moving locale data to /lib isn't probably good idea.
> - delay the setup so it would be ran after nfs scripts (for /usr), 
> - try doing the console setup twice?
> - introduce some variable in config rather trying to autodetect things?
> 
> other thing is that shouldn't the "setting console font and map" be first 
> thing done on startup before anything is displayed on console?

locales setup should be delayed to the moment when /usr is mounted.
They don't work anyway before (despite catalogs moved to /etc):

$ TEXTDOMAINDIR=/etc/sysconfig/locale gettext -d rc-scripts 'BUSY'; echo
 ZAJĘTY
# chmod 700 /usr/lib/locale
$ TEXTDOMAINDIR=/etc/sysconfig/locale gettext -d rc-scripts 'BUSY'; echo
BUSY

Console font doesn't matter much before locales are used.

So, to avoid the penalty of not having internationalized messages on
systems with /usr not separated, locales setup delay should be
performed depending on /usr/lib/locale presence.


-- 
Jakub Bogusz    http://qboosh.pl/


More information about the pld-devel-en mailing list