Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 Nov 2012 18:32:20 -0500
From:      Eitan Adler <lists@eitanadler.com>
To:        freebsd-current Current <freebsd-current@freebsd.org>
Subject:   prompt w/ uid 0 for cshrc
Message-ID:  <CAF6rxg=V4gbOKOfB%2BJ-fzxHDjqducd8C7d7f1Oxz-UxbquVKeg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hey,

at the moment the current default csh prompt looks like

user@hostname:directory% command

This leads to an unexpected[*] result when using su (without "-").

In particular the user part is *not* changed to "root" (or "toor" or
any other superuser indication) although the promptchar is changed to
"#".
This causes some confusion for new users and even some experienced ones.

I worked around this issue by including the following

        if ($uid == 0) then
                set user = root
        endif

which I'm not certain is a good idea.

I would like to replace this with logic like

if $uid = 0 AND $user != toor AND $user != root
  set user = "+$user"
endif

does anyone think this is a bad idea? can anyone propose a better
idea? Is the status quo okay?

I don't trust user education for this problem. I've seen way too many
people get confused to leave the default without some extra indicator.

[*] Okay, so this is expected if you understand the difference between
"su" and "su -" but the defaults are not aimed at people that
understand this difference.


-- 
Eitan Adler



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAF6rxg=V4gbOKOfB%2BJ-fzxHDjqducd8C7d7f1Oxz-UxbquVKeg>