# screen/cfg - "Build" settings for package #--------------------------------------------------------------------- [technotes] 1. "terminfo/screeninfo.src" must be modified to remove the setting "smso=..." or blinking will occur. This is handled by a patch. #--------------------------------------------------------------------- 2. "/etc/termcap" must be modified to remove existing "screen" en- tries. This is handled by a script. #--------------------------------------------------------------------- 3. "screen" seems to have "forked" in the 2000s. As of early 2007, the official GNU "screen" distribution site (ftp. gnu.org) had releases 3.9.15 and 4.0.2, which were several years old. However, release 4.0.3 (dated late 2006) was available from numerous sites (although it didn't seem to have an official home page). As of October 2008, the official GNU "screen" site carried release 4.0.3. As of February 2010, there had been no new official releases since 2008. From 2018 to 2021, this distro used a single exact version of the pro- gram obtained as follows: DIR=screen-local rm -fr $DIR && git clone https://git.savannah.gnu.org/git/screen.git $DIR && cd $DIR && git checkout bf1c6739a678457dc12df746eaa04e3e0ba5cd48 In February 2021, this distro switched to the following release of "screen" plus Debian and local patches: https://ftp.gnu.org/gnu/screen/screen-4.8.0.tar.gz #--------------------------------------------------------------------- 4. As of February 2021, there was a significant problem with "screen" 4.8.0: It proved to be impossible to use "autoreconf", "autoupdate", etc., with the sources. Attempts to do so led to uncorrectable "m4" errors. Until a solution is found, the copy of "autogen.sh" provided with the source code should *not* be used. This might mean that eventually it'll become difficult or impossible to build the package. #--------------------------------------------------------------------- 5. Initially, the arrow keys may work incorrectly at the command-line level inside "screen". Possible fix: Exit "screen" and add the follow- ing definitions to "/etc/inputrc" (global "bash" settings) or $HOME/ .inputrc (per-user "bash" settings): "\eOw": beginning-of-line "\eOq": end-of-line "\eOt": backward-char "\eOv": forward-char "\eOx": history-search-backward "\eOr": history-search-forward "\eOy": beginning-of-history "\eOs": end-of-history "\eOn": delete-char Note: These definitions don't fix the INS key (which is supposed to toggle insert/overwrite mode). The appropriate INS definition hasn't been identified. #--------------------------------------------------------------------- 6. If you'd like to use the "joe" editor inside a "screen" session, you may need to add the following key-definition entries to the edit- or's configuration file ("joerc", which may be located in any of sev- eral directories): pgdn ^[ O s # GNU screen PGDN key pgup ^[ O y # GNU screen PGUP key bol ^[ O w # GNU screen BOL sequence [outside X] bol ^[ O H # GNU screen BOL sequence [inside X] eol ^[ O q # GNU screen EOL sequence [outside X] eol ^[ O F # GNU screen EOL sequence [inside X] ltarw ^[ O t # GNU screen left -arrow rtarw ^[ O v # GNU screen right -arrow uparw ^[ O x # GNU screen up -arrow dnarw ^[ O r # GNU screen down -arrow delch ^[ O n # GNU screen DEL keyw These definitions don't fix the INS key (which is supposed to toggle insert/overwrite mode). The appropriate INS definition hasn't been identified. #--------------------------------------------------------------------- 7. Additionally, when you run "joe" under "screen", you won't be able to use the control-A key normally, because it's reserved for use by "screen". #--------------------------------------------------------------------- 8. You may encounter similar problems when running other text editors under "screen". #--------------------------------------------------------------------- 9. If you start "screen" outside X, then start X under "screen", X may work correctly in most respects. However, this isn't recommended. Some navigation keys may fail to work correctly in this mode. Additionally, if you start an "xterm" session and try to run "screen", "screen" may complain. #--------------------------------------------------------------------- 10. The "postbuild" block used by this package removes the "terminfo" entries provided in "screen's" default configuration file. This seems to be necessary. If the "terminfo" entries aren't removed, "screen" locks up when it's executed. #--------------------------------------------------------------------- [buildtimes] 00.00 hours (or 000.27 minutes) - HP EliteBook 8560w 32GB RAM 00.00 hours (or 000.27 minutes) - ThinkPad E540 i7 4x2 16GB RAM 00.01 hours (or 000.37 minutes) - 2021 L.A. dedi box: 6x2 CPU 32GB RAM 00.01 hours (or 000.77 minutes) - Dell Inspiron 6400 2.0 GHz Intel Duo 7200 2GB RAM 00.05 hours (or 003.15 minutes) - Compaq 1.7 GHz Intel Pentium 4 512MB RAM #--------------------------------------------------------------------- [settings] exepack = no # "screen" has special attributes license = See "license*.txt" in installed tree licfile = COPYING setpaths = ncurses #--------------------------------------------------------------------- [depends] actools elfutils # For libelf gawk grep ncurses:strict sed termcap:strict #--------------------------------------------------------------------- [configure] ETCDIR=$PKGDIR_PROD/etc MANBASE=$PKGDIR_PROD/man mkdir -p $ETCDIR $MANBASE #ifdef NOTDEF # Don't do this presently # ./autogen.sh #endif NOTDEF SCREENRC=$ETCDIR/screenrc sed -e "s|/usr/local/etc/screenrc|$SCREENRC|" -i {etc,doc}/* bash ./configure \ --prefix=$PKGDIR_PROD \ --build=$LACARCHBUILD \ --host=$LACARCHHOST \ --disable-locale \ --disable-pam \ --disable-socket-dir \ --disable-telnet \ --with-pty-mode=0620 \ --with-pty-group=5 \ --mandir=$MANBASE \ --with-sys-screenrc=$SCREENRC #--------------------------------------------------------------------- [build] smpmake && make install #--------------------------------------------------------------------- [postbuild] BINDIR=$PKGDIR_PROD/bin ETCDIR=$PKGDIR_PROD/etc mkdir -p $BINDIR $ETCDIR cp -p etc/etcscreenrc $ETCDIR/screenrc sed -e "/^terminfo/d" -i $ETCDIR/screenrc ln -nsf $ETCDIR/screenrc /etc/ tic terminfo/screeninfo.src ETCCAP=$PRODTREE/termcap/etc/termcap perl $PKGDIR_SPECIAL/fix-termcap-screen FOO=`grep "SC|screen|" $ETCCAP | wc -l` if [ "x$FOO" \!= x0 ]; then echo Error: fix-termcap-screen failed exit 1 fi cat terminfo/screencap >> $ETCCAP touch /var/run/utmp chown root:utmp /var/run/utmp chmod 664 /var/run/utmp #--------------------------------------------------------------------- # Original URLs. These URLs were valid at one point, but may have died # since then. If you download newer versions of tarballs [etc.], don't # delete the original versions, as you may not be able to replace # them. [urls] url_debian = http://packages.debian.org/unstable/source/screen url_home = http://www.gnu.org/software/screen/ url_lfs = http://www.linuxfromscratch.org/blfs/view/stable/\ general/screen.html url_tarball = special # See "technotes" in "cfg" file #--------------------------------------------------------------------- [history] 170502 Updated from 4.0.3 to 4.5.1 170711 Updated to 4.6.1 171024 Updated to 4.6.2 180501 Updated to 180501 210222 updated to 4.8.0 240728 Replaced visual bell with silence