From owner-freebsd-questions@freebsd.org Sat Mar 30 04:48:36 2019 Return-Path: Delivered-To: freebsd-questions@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BC2FD15635C3; Sat, 30 Mar 2019 04:48:36 +0000 (UTC) (envelope-from freebsd@edvax.de) Received: from mout.kundenserver.de (mout.kundenserver.de [217.72.192.75]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "mout.kundenserver.de", Issuer "TeleSec ServerPass DE-2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 69E3D6E48B; Sat, 30 Mar 2019 04:48:35 +0000 (UTC) (envelope-from freebsd@edvax.de) Received: from r56.edvax.de ([92.193.229.77]) by mrelayeu.kundenserver.de (mreue109 [212.227.15.183]) with ESMTPA (Nemesis) id 1MSKq6-1hYCNl3eOG-00Sfat; Sat, 30 Mar 2019 05:48:26 +0100 Date: Sat, 30 Mar 2019 05:48:24 +0100 From: Polytropon To: mayuresh@kathe.in Cc: Daniel Feenberg , freebsd-questions@freebsd.org, owner-freebsd-questions@freebsd.org Subject: Re: Sending Tcsh to packages/ports ... Message-Id: <20190330054824.541c1bff.freebsd@edvax.de> In-Reply-To: References: <64780f09d4251b9641e3bca39000ae2d@kathe.in> <869a55f05dde045b1947f53ce3c5851f@kathe.in> <20190330033342.e5fc3373.freebsd@edvax.de> <2aee9abe70cc944b634751e5df0b375e@kathe.in> <20190330035857.86508c3a.freebsd@edvax.de> Reply-To: Polytropon Organization: EDVAX X-Mailer: Sylpheed 3.1.1 (GTK+ 2.24.5; i386-portbld-freebsd8.2) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:4DsDTqTgkIFGQAsIwwXqcNGV9VHchj0wRwD8Y2PXusvsdrOxlhu FNBx9TFW4NQFZRK4LUJom2i2WhBdbIdFnBXEflpDjMuJ6GV0m6WyYkl7y5DTo3BYGo0UGSH ffWnB24jr3uIrbooTs2jCIVUn07BAdm4FZTG8Nf9VzWLeOWBkwt1GXCjjijy6Sgz09eTpGl AQk/GEU6Z+mf6MmXQ/xvg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:wWNRO5dMX+4=:JFLQmU5KT0IcuyxT0V5Ka1 1kt4Tiry0+PHVq0bvNi86txnecE1FfHI0CVEoQjWsl0HnXx3+7FIYYbgx/tOVwvdhMMZULxJR //lXr0S1FpkC3266yEK2MrbyKK/WWb47X+CCb1QS/xCa1MvybXzdK3QEDVsSBH8pQQl6aiugA jUH6Xyv5vzJgogvN2hHhfDpKKCFFr5k424AKXCfGGHPDESDpHB2aB9/F+OTfetc10uxujwf4e kuXK4sQC6yPvV/Vbdbfq4551cYbwNJyRR6jRAD4CDX/zh//BRpeQl8/g+b+6O1yqL4C2DKESy Xmr8bpO1ddGHcG65qE9DJ+mWpjmQMhZXLqGOYzk4PhoDAI7fQ5Ke+RpgIdC09402OKxp+Hv84 Dv3hzlXnGyivbTZUTrz242TiU1755wozOw2zfsbz1oVIxD1tKoUeiA5t/kNwR77zeAjQG59za j4K/wxMbRJ0iZwT84A/5wgg0OxPkt8GgflghOoNPvHmv2Ki8TpRtF8jy74WdT0wIh8TtltU/y UUOPg9KS1MGKL2FhScxMJooAI3DuDYzA5PLSXxbRr+FaQIqVm5L2X3KVtEINwG81/sOtIGNyc 4fmtWTcLcARxY/Hl+2WVsqfljPN51VPBOWOivWe7ENOQ7R0N0Kt0KjqCAAN2rYy12oH8WyMP9 gb5MVSGt5Wtfulc4t8t3rky+DXpv+JQv9cJ31iP80xlVGAeQB6zyMPkFoqBXRuZgJNKXwtSwx mcyY+Lz0lCgybd2iYQs0RGGOcrnUhjgqeDjJ0vmecjHuOk9Q+zfzjIdsvZo= X-Rspamd-Queue-Id: 69E3D6E48B X-Spamd-Bar: ++++ Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [4.65 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; HAS_REPLYTO(0.00)[freebsd@edvax.de]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; HAS_ORG_HEADER(0.00)[]; MX_GOOD(-0.01)[cached: mx00.schlund.de]; FROM_EQ_ENVFROM(0.00)[]; RCVD_TLS_LAST(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:8560, ipnet:217.72.192.0/20, country:DE]; MIME_TRACE(0.00)[0:+]; RECEIVED_SPAMHAUS_PBL(0.00)[77.229.193.92.zen.spamhaus.org : 127.0.0.10]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-0.05)[-0.054,0]; REPLYTO_EQ_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; NEURAL_SPAM_SHORT(0.99)[0.991,0]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[edvax.de]; AUTH_NA(1.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_SPAM_LONG(0.99)[0.986,0]; MID_CONTAINS_FROM(1.00)[]; RCVD_IN_DNSWL_NONE(0.00)[75.192.72.217.list.dnswl.org : 127.0.5.0]; R_SPF_NA(0.00)[]; RCVD_COUNT_TWO(0.00)[2]; IP_SCORE(0.34)[ipnet: 217.72.192.0/20(0.11), asn: 8560(1.59), country: DE(-0.01)] X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Mar 2019 04:48:37 -0000 On Sat, 30 Mar 2019 09:45:38 +0530, Mayuresh Kathe wrote: > On 2019-03-30 08:28 AM, Polytropon wrote: > > On Sat, 30 Mar 2019 08:13:33 +0530, Mayuresh Kathe wrote: > >> On 2019-03-30 08:03 AM, Polytropon wrote: > >> > On Fri, 29 Mar 2019 19:08:16 +0530, Mayuresh Kathe wrote: > >> >> On 2019-03-29 04:59 PM, Daniel Feenberg wrote: > >> >> > On Fri, 29 Mar 2019, Mayuresh Kathe wrote: > >> >> > > >> >> >> Since Tcsh is usually imported, why not send it to packages/ports > >> >> >> collection? > >> >> >> I agree that "csh" is an historically important artifact, but do we > >> >> >> need to still rely on that? > >> >> >> I have been using "csh" ever since I started using FreeBSD, liked it, > >> >> >> but it doesn't feel light like plain old "sh" nor is as feature-full > >> >> >> as "bash". To top that, the installer asks me to choose between "csh" > >> >> >> and "tcsh" in-spite of being the same binary. > >> >> > > >> >> > ed and csh are important for those that use them. I use both, not > >> >> > always, but enough to see the importance of keeping them in the OS. > >> >> > There is a fallacious style of argument that decodes to "If a is > >> >> > better than b, then b is no good and it is a sign of bad character to > >> >> > use b". There are many cases where the transition costs of moving to > >> >> > different dependencies will be significant, especially for less well > >> >> > informed users. > >> >> > >> >> What if you had access to your preferred tools via packages/ports? > >> > > >> > The core problem is an educated consensus about what should > >> > be the default content of the OS. Access to ports or packages > >> > usually implies that you have (a) the installation media, or > >> > (b) Internet access. In cases where this does not apply, for > >> > reasons like "didn't think about that", "our Internet doesn't > >> > work", "Security! Security! Security!" and more, you should > >> > definitely _not_ be left with an OS that doesn't have a usable > >> > interactive shell or an editor. The mentality of "you can always > >> > install it afterwards" should not be applied to basic OS tools > >> > and demands. > >> > >> But the basic operating system tools would include the Bourne Shell > >> (sh), or as you'd stated previously, in the case of FreeBSD, the > >> Almquist Shell (ash). Isn't "ash" interactive enough for most people? > > > > No. This shell is traditionally a scripting shell. The only > > occassion where you would use it is after a severe system > > crash, and even from that point, you'd probably just start > > the C shell for better interactive features. > > > > I hardly know people who use sh for more than "csh" (to start > > csh). > > > > On most Linux systems, there is one shell both for scripting > > and for interactive use, and it's usually /bin/bash. FreeBSD > > differentiates between scripting use, where the POSIX-compliant > > sh is used, and interactive use, where the C shell is the > > traditional shell, but a user can of course install and use > > a different shell. > > > > The scripting shell _must_ always be accessible, and FreeBSD > > provides an interactive shell which also always works. > > > > It's important to understand that a custom user shell might not > > be available in single-user mode, in a condition where the system > > can only operate in a very limited way. That's why it's still > > valid to say you should not change root's interactive shell > > to something like /usr/local/bin/bash which might cause trouble > > logging in when /usr or /usr/local cannot be accessed. That's > > what the toor user is intended for. > > > > Sidenote: > > > > Some historical UNIX systems actually used the C shell for > > scripting to bring the system up into multi-user mode. Luckily, > > this is not done anymore as scripting (!) in csh is terrible > > and confusing. :-) > > Actually, looking it at it from a different angle, "csh" scripting would > be ideal, because then one would need to know only one _style_ of > programming, the "c" style. The core problem with the C shell is that it has several implementation flaws. There is a document by Tom Christiansen, titled "Csh Programming Considered Harmful", summarized: The csh is a tool utterly inadequate for programming, and its use for such purposes should be strictly banned. You can find the full text here: https://www-uxsup.csx.cam.ac.uk/misc/csh.html Personally, I once (!) wrote a C shell script, and this particular script is still working, but I would _never_ again do something like this. :-) That being said, sh (Bourne shell) has become the de-facto standard for scripting, and with the POSIX compliance, it allows you to write scripts that can be run on any OS that provides a POSIX-compliant sh implementation, without needing to test for the OS name, the shell version, or a specific feature. > That's what I love about "Plan 9", it's shell "rc" uses a "c" style > scripting system and the shell is also quite interactive. Even better: rc exposes the "everything is a file" metaphor of the OS in a convenient way, so many things can be done with tools that operate on files, even if that file represents a network connection or a remote audio device. > >> At > >> least I have found it good enough for my day-to-day use. > > > > You are actually using /bin/sh interactively? Not that it's > > impossible, but... well... why use sh when the OS provides you > > csh whose interactive features are much more advanced and > > customizable? > > I don't know why, but I find it peaceful to use "/bin/sh". > Probably because it's so small, so ancient and so well documented. > Plus, I touch-type at a very high speed, so any mistakes, and I can > re-type my command chain effortlessly. Same here, but I'd say that about the C shell, with only a few configuration tweaks to make things appealing, instead of the work I would have to invest to make bash behave in a way comparable to certain csh defaults. :-) By the way, the zsh is often considered the most advanced shell, as it incorporates all the advantages of existing shells without also inheriting their annoying behaviour. It's well documented and highly customizable, but works very good even with only the defaults. -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...