Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 May 2007 09:23:16 +0200
From:      "Ernest Sales" <ersaloz@gmail.com>
To:        <freebsd-questions@freebsd.org>
Cc:        'Christopher Illies' <christopher.illies@ki.se>
Subject:   RE: .login_conf ignored [solved]
Message-ID:  <000101c79854$460cfe80$2101a8c0@asinusaureus>
In-Reply-To: <20070516071947.GA94083@Klabautermann.ks.se>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday, May 16, 2007 9:20 AM, Christopher Illies wrote:

> On Tue, May 15, 2007 at 06:39:05PM +0200, Ernest Sales wrote:
> > > > > > On Tue, 15 May 2007 09:14:42 +0200, Christopher
> Illies wrote:
> > > > > >
> > > > > > > The locale settings in my .login_conf are ignored:
>
> [...]
>
> > > > Try compiling just your ~/login_conf, make sure a
> > > > ~/login_conf.db file appears.
> > > >
> > > > Ernest
> > >
> > > Thanks, that has worked!
> > >
> > > Before I always used cap_mkdb /etc/login.conf plus all the user's
> > > $HOME/.login_conf, but just using it on my ~/.login_conf did the
> > > trick. A ~/.login_conf.db file has appeared.
> > >
> > > I feel a bit silly for not having come up with it myself.
> I guess what
> > > confused me was that on another user's account the
> cap_mkdb compiling
> > > wasn't neccessary, but I don't need to understand that now that it
> > > works for me.
> > >
> > > Thanks again.
> > >
> > > Christopher
> >
> > But you are still curious, aren't you?
>
> Yes
>
> > AFAIK, there are two possible
> > explanations:
> >
> > 1) There _is_ a .login_conf.db file in the other user's homedir.
>
> No
>
> >
> > 2) The other account pertains to a different login class than yours,
> > which already sets the desired locale and so masquerades the user's
> > settings being ignored. Dunno if a user can see his own
> login class. If
> > you have permissions, can use vipw to find out (if
> unfamiliar, take a
> > look to vipw(8) and passwd(5) manpages, notice the 'class' field).
> >
> > Ernest
>
> Not that I can see. I 'chris' is my login, and 'bill' in another
> account that does not have this problem:
>
> ; sudo  cat /etc/master.passwd | egrep 'chris|bill' | awk
> -F: '{ print $1,":", $5,":"}'
> chris :  :
> bill :  :
> ; whoami
> chris
> ; ls /home/bill/.login*
> /home/bill/.login       /home/bill/.login_conf
> ; cat /home/bill/.login_conf
> # $FreeBSD: src/share/skel/dot.login_conf,v 1.3 2001/06/10 17:08:53
> # ache Exp $
> #
> # see login.conf(5)
> #
> me:\
>         :charset=iso-8859-1:\
>         :lang=se_SE.ISO8859-1:
> ; sudo sed -i.bak -e 's/se_SE/de_DE/' /home/bill/.login_conf
> ; su -l bill
> Password:
> $ whoami
> bill
> $ env | egrep -i 'lang|charset'
> MM_CHARSET=iso-8859-1
> LANG=de_DE.ISO8859-1
>
> But to change settings on the 'chris' account I have to use cap_mkdb
> /home/chris/.login_conf. Strange...
>
> Christopher

And your test also discards some login script directly setting the variables
(assuming bill locale is usually se_SE). Wish some day we get enlightened.

Ernest





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?000101c79854$460cfe80$2101a8c0>