From owner-dev-commits-src-all@freebsd.org Fri Feb 26 20:26:03 2021 Return-Path: Delivered-To: dev-commits-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id B358A54DCB5; Fri, 26 Feb 2021 20:26:03 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4DnLlH0mWxz4r8v; Fri, 26 Feb 2021 20:26:02 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.229.168]) by shaw.ca with ESMTPA id FjgVlmLtyHmS3FjgWlzqk5; Fri, 26 Feb 2021 13:26:01 -0700 X-Authority-Analysis: v=2.4 cv=MaypB7zf c=1 sm=1 tr=0 ts=60395959 a=7AlCcx2GqMg+lh9P3BclKA==:117 a=7AlCcx2GqMg+lh9P3BclKA==:17 a=xqWC_Br6kY4A:10 a=8nJEP1OIZ-IA:10 a=qa6Q16uM49sA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=1X5WsqQov_YCb2dtGS4A:9 a=wPNLvfGTeEIA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [IPv6:fc00:1:1:1::5b]) by spqr.komquats.com (Postfix) with ESMTPS id 5162F317; Fri, 26 Feb 2021 12:25:58 -0800 (PST) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.16.1/8.16.1) with ESMTP id 11QKPwCe003888; Fri, 26 Feb 2021 12:25:58 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <202102262025.11QKPwCe003888@slippy.cwsent.com> X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Baptiste Daroussin cc: rgrimes@freebsd.org, Cy Schubert , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a50a9de8340 - main - terminfo: add terminfo database In-reply-to: References: <202102261420.11QEKJoX006569@slippy.cwsent.com> <202102261730.11QHUh8n031156@gndrsh.dnsmgr.net> <20210226173629.2sc6wlaasxjep3le@aniel.nours.eu> Comments: In-reply-to Baptiste Daroussin message dated "Fri, 26 Feb 2021 19:23:48 +0000." Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Date: Fri, 26 Feb 2021 12:25:58 -0800 X-CMAE-Envelope: MS4xfJX2gfGwQHXj+XaGdH08Oz1FhoQmIUmtYcumBWM/lb2Q32fwAQj5gyXU8/ptTBbBZxa9HoQ0xTdVqjsAOIsj5mFBWiq66ZgLCFPer/rt5Aa7GoBYyTIP DwztzYFiU6zqzySCY1/UuxYs/BFqpKjzVIOAqLb06JX5ZcYqU1LBn5MoSmLZSKJEFDYsTg8iz25H/zTfEYrsPMT3z4+hvfYTE1xLM68uJxx/juT2fgAg3gZZ 7W9+A4RYIKLPNEyOFyLHwbEE96kHSRm98rwdiQnP2c6ivsbxfIpsUa0zbyYZNMM7cVyh6vAtka5Du1iYmAbFiYE613pkTweNv1Fa/TvqScEhYNXTl7vAcZlA TGM9hVka X-Rspamd-Queue-Id: 4DnLlH0mWxz4r8v X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: dev-commits-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the src repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Feb 2021 20:26:03 -0000 In message , Baptiste Darouss in writes: > > > 26 févr. 2021 18:36:40 Baptiste Daroussin : > > > On Fri, Feb 26, 2021 at 09:30:43AM -0800, Rodney W. Grimes wrote: > >>> In message <202102251327.11PDR4eC083842@gitrepo.freebsd.org>, Baptiste > >>> Daroussi > >>> n writes: > >>>> The branch main has been updated by bapt: > >>>> > >>>> URL: https://cgit.FreeBSD.org/src/commit/?id=2a50a9de8340f08bd876e9e5993 > 332ae > >>>> 14376f80 > >>>> > >>>> commit 2a50a9de8340f08bd876e9e5993332ae14376f80 > >>>> Author:     Baptiste Daroussin > >>>> AuthorDate: 2021-02-23 16:17:32 +0000 > >>>> Commit:     Baptiste Daroussin > >>>> CommitDate: 2021-02-25 13:25:32 +0000 > >>>> > >>>>     terminfo: add terminfo database > >>>>     > >>>>     Tested by:      manu, jbeich > >>>> --- > >>>> share/Makefile          |  1 + > >>>> share/terminfo/Makefile | 34 ++++++++++++++++++++++++++++++++++ > >>>> 2 files changed, 35 insertions(+) > >>>> > >>>> diff --git a/share/Makefile b/share/Makefile > >>>> index c4e12b05f7db..d6854b230ae5 100644 > >>>> --- a/share/Makefile > >>>> +++ b/share/Makefile > >>>> @@ -26,6 +26,7 @@ SUBDIR= ${_colldef} \ > >>>>   ${_syscons} \ > >>>>   tabset \ > >>>>   termcap \ > >>>> + terminfo \ > >>>>   ${_timedef} \ > >>>>   ${_vt} \ > >>>>   ${_zoneinfo} > >>>> diff --git a/share/terminfo/Makefile b/share/terminfo/Makefile > >>>> new file mode 100644 > >>>> index 000000000000..7bb11f3fdf24 > >>>> --- /dev/null > >>>> +++ b/share/terminfo/Makefile > >>>> @@ -0,0 +1,34 @@ > >>>> +PACKAGE= runtime > >>>> + > >>>> +.PATH: ${SRCTOP}/contrib/ncurses/misc > >>>> +TINFOBUILDDIR= ${.OBJDIR}/builddir > >>>> +CLEANDIRS+=  builddir > >>>> + > >>>> +.include > >>>> + > >>>> +.if !defined(_SKIP_BUILD) > >>>> +all: terminfo > >>>> +.endif > >>>> +META_TARGETS+= terminfo install-terminfo > >>>> + > >>>> +terminfo: terminfo.src > >>>> + mkdir -p ${TINFOBUILDDIR} > >>>> + ${TIC_CMD} -x -o ${TINFOBUILDDIR} ${.ALLSRC} > >>>> + > >>>> +.if make(*install*) > >>>> +TINFOS!=  cd ${TINFOBUILDDIR} && find * -type f | LC_ALL=C sort > >>>> +TINFOSDIRS=  ${TINFOS:C/(.).*/\1/g:O:u} > >>>> +.endif > >>>> + > >>>> +beforeinstall: install-terminfo > >>>> +install-terminfo: > >>>> + mkdir -p ${DESTDIR}/usr/share/terminfo > >>>> + cd ${DESTDIR}/usr/share/terminfo; mkdir -p ${TINFOSDIRS} > >>>> +.for f in ${TINFOS} > >>>> + ${INSTALL} ${TAG_ARGS} \ > >>>> +     -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ > >>>> +     ${TINFOBUILDDIR}/${f} ${DESTDIR}/usr/share/terminfo/${f} > >>>> +.endfor > >>>> + > >>>> +.include > >>>> + > >>>> > >>> > >>> I think this had some unintended consequences, a POLA violation that shou > ld > >>> be documented. Our termcap didn't support alternate screen buffers while > >>> terminfo does. Termcap did through t_te and t_ti but we didn't use them. > >>> Terminfo as delivered from the ncurses factory does supply rmcup and smcu > p; > >>> our fullscreen apps such as nvi and top see them and use the alternate > >>> screen buffer. > >>> > >>> The use of the alternate screen buffer is one of the things I hate about > >>> Linux. After running vi or top I expect the output to remain on the scree > n > >>> so I can use some bit of information in my next command. We now have this > >>> behaviour too. > >> > >> Oh, I so hate that mis-feature of Linux, please please tell me there is > >> a simple knob to turn this off?  I believe LESS also does this kind > >> of stuff, or atleast "man" on linux does, and that pees me off to no > >> end when I quit the man page and what I wanted is no longer on the screen. > >> > >> > > No this is not and I clear have 0 intention to have a complex patch on top > of > > the linux terminfo which would prefer easy sync in the futur. > > > > We can document how to use a definition which does not have the feature you > do > > not like. > > > > Best, > > Bapt > > Wow I think that is one of the most terrible mail I have ever written! > > Let me rephrase it. I won t patch ncurses terminfo as that would make the mai > ntenance a huge pain. Ncurses is already not an easy beast to maintain ( shou > ld be a bit easier now). > > The solution is to document how to workaround for the people who dislike the > new behaviour I think this is the best solution. TERM=xterm1 or TERM=vt100. If we absolutely have to, we could document how people can create their own terminfo databases. Simply change rmcup= and smcup= to rmcup@ and smcup@. This is what xterm1 does. xterm1 is already in the upstream and we have it. Having unpacked the RH SRPM, I don't see where Red Hat actually removes xterm1, it's in the tarball within the SRPM but it doesn't appear in their terminfo database. Simply change your TERM to xterm1. Having said this, one would need to add tset -Q -s -m xterm1:xterm to your Red Hat and Fedora machines to make sure your FreeBSD TERM=xterm1 doesn't cause any grief. Much of the problem is that the various Linux distros have created incompatibilities which affect the traditional UNIX world (I put us in the traditional UNIX space) requiring the rest of us to either follow suit or break. I can think other changes coming down the turnpike which will affect us but that is better left for a freebsd-arch thread. Documenting how people can create their own terminfo database in say, ~/.terminfo and point $TERMINFO to it would go a long way. I will try it myself over the next week or two when I get some free time. -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org The need of the many outweighs the greed of the few.