From owner-freebsd-hackers@FreeBSD.ORG Fri Nov 12 05:55:44 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0A6F616A4CE for ; Fri, 12 Nov 2004 05:55:44 +0000 (GMT) Received: from keylime.silverwraith.com (keylime.silverwraith.com [69.55.228.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id D8F1B43D39 for ; Fri, 12 Nov 2004 05:55:43 +0000 (GMT) (envelope-from lists-freebsd@silverwraith.com) Received: from keylime.silverwraith.com ([69.55.228.10]) by keylime.silverwraith.com with esmtp (Exim 4.41 (FreeBSD)) id 1CSUPP-0009gA-ND; Thu, 11 Nov 2004 21:55:43 -0800 Received: (from avleen@localhost)iAC5thkO037209; Thu, 11 Nov 2004 21:55:43 -0800 (PST) (envelope-from lists-freebsd@silverwraith.com) X-Authentication-Warning: keylime.silverwraith.com: avleen set sender to lists-freebsd@silverwraith.com using -f Date: Thu, 11 Nov 2004 21:55:43 -0800 From: Avleen Vig To: Kevin Lyons , freebsd-hackers@freebsd.org Message-ID: <20041112055543.GH19417@silverwraith.com> References: <41940880.7070409@corserv.com> <20041112023023.GG19417@silverwraith.com> <20041112031122.GA87071@falcon.midgard.homeip.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20041112031122.GA87071@falcon.midgard.homeip.net> User-Agent: Mutt/1.5.6i Subject: Re: tcsh fix X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Nov 2004 05:55:44 -0000 On Fri, Nov 12, 2004 at 04:11:22AM +0100, Erik Trulsson wrote: > Personally I am of the opinion that csh (all versions) should be > removed completely from the base system and relegated entirely to the > ports system. Other than historical reasons there is not much point in > having it in the base system. I strongly disagree. csh and sh should be 'pure' versions. That is to say, no matter what shell is actually being called as sh or csh, it should provide a 100% compatible version, no differences, no "upgrades". This is to provide compatibility whn working with multiple versions of Unix. I write many scripts in sh on Solaris, and find they just don't work on Linux because /bin/sh on Linux is really /bin/bash and is not bacwards compatible. I HATE this. We shouldn't do this, and should do anything like this. > (Originally csh was created to get a shell with better interactive > features the original Bourne shell and tcsh is much better for > interactive use than 'classic' csh - indeed a modern /bin/sh is better > than 'classic' csh. For writing scripts the Bourne-derivatives is much > better than csh and it has long been strongly recommended that one > should not write scripts for csh. One cannot even assume that > all systems have csh installed - Posix doesn't require it but it does > require /bin/sh to be present.) and /bin/sh should be classic /bin/sh not some version which is going to break my shit when I port it over! I'm so glad this is the case with FreeBSD :-) > 'csh' does run pure csh, and nothing else. The latest version of csh > which happens to be renamed to tcsh to be exact. That this latest > version is not 100% compatible with earlier versions might be > unfortunate but very few software packages never break backwards > compatibility. How about when working with multiple versions of the same shell on different OS's? surely you can see the problem there. > > 'sh' should be pure sh, not what Linux does and bastardize it as > > /bin/bash > > There is no such thing as "pure sh". It you believe otherwise please > tell us what you think such a shell would look like and exactly what > features should be in it. > (Hint: Current standards require /bin/sh to have several features that > were not available on early Unix versions.) Then we should follow current standards. Not pretend one shell is another! > > If someon wants a more powerful shell, they can install it themselves. > > Keep in mind that FreeBSD's /bin/sh is a more powerful shell than was > available in, say, v7 Unix. Yes but AFAIK it's compatible in every way I've tried with say, Sun's /bin/sh, and I've tried some pretty complex shell scripts. -- Avleen Vig Systems Administrator Personal: www.silverwraith.com EFnet: irc.mindspring.com (Earthlink user access only)