svn commit: r343416 - head/bin/sh

Alexey Dokuchaev danfe at freebsd.org
Fri Jan 25 18:13:21 UTC 2019


On Fri, Jan 25, 2019 at 06:02:58AM +0000, Edward Napierala wrote:
> The aliases are gone, let's continue on the remaining bits below.

They are not gone, they were commented out; also, bogus double linefeeds
are not gone.  But most importantly, this whole file is useless and IMHO
should just be removed.  /bin/sh is not supposed to be one's interactive
shell.

> It is alien, because it's different from their experience
> from other systems they are used to.

This argument does not really hold because /bin/sh is not... see above.

> It doesn't affect existing installs.  It doesn't affect people
> who run the default root shell (tcsh), nor folks who use shells

AFAICT default root shell is /bin/csh, not tcsh. ;-)  But that also
means that /usr/src/bin/sh/dot.shrc doesn't have to exist: those who
change the root shell should either pick another interactive shell,
or if they want /bin/sh be ready to deal with sanitary environment.

> And for folks who do have their own tree with their preferred
> /root/.shrc to "make distribution" from, it should actually make
> their diff to upstream smaller.

I don't like extra files, esp. configuration files that look like they
are for interactive shell while our /bin/sh is in fact not.  This is
confusing, and FreeBSD is not supposed to be confusing.

> It is a syntax problem:
> 
> trasz at v2:~ % while :; do date; sleep 1; done
> while: Expression Syntax.
> do: Command not found.
> done: Command not found.

Are you trying to use sh(1) loop in (t)csh?  Why?  And what does it have
to do with the /usr/src/bin/sh/dot.shrc issue?

./danfe


More information about the svn-src-head mailing list