glfs/general/genutils/screen.xml
2024-01-19 22:39:35 +01:00

230 lines
6.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY screen-download-http "&gnu-http;/screen/screen-&screen-version;.tar.gz">
<!ENTITY screen-download-ftp " ">
<!ENTITY screen-md5sum "9a9bdc956bd93e4f0cb9e48678889e26">
<!ENTITY screen-size "1020 KB">
<!ENTITY screen-buildsize "9.5 MB">
<!ENTITY screen-time "0.1 SBU">
]>
<sect1 id="screen" xreflabel="Screen-&screen-version;">
<?dbhtml filename="screen.html"?>
<title>Screen-&screen-version;</title>
<indexterm zone="screen">
<primary sortas="a-Screen">Screen</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Screen</title>
<para>
<application>Screen</application> is a terminal multiplexor that runs
several separate processes, typically interactive shells, on a single
physical character-based terminal. Each virtual terminal emulates a DEC
VT100 plus several ANSI X3.64 and ISO 2022 functions and also provides
configurable input and output translation, serial port support,
configurable logging, multi-user support, and many character encodings,
including UTF-8. Screen sessions can be detached and resumed
later on a different terminal.
</para>
&lfs120_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&screen-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&screen-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &screen-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &screen-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &screen-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &screen-time;
</para>
</listitem>
</itemizedlist>
<!--
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Required patch:
<ulink url="&patch-root;/screen-&screen-version;-upstream_fixes-1.patch"/>
</para>
</listitem>
</itemizedlist>
-->
<bridgehead renderas="sect3">Screen Dependencies</bridgehead>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="linux-pam"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Screen</title>
<!--
<para>
First, apply a patch from upstream that fixes a security vulnerability:
</para>
<screen><userinput remap="pre">patch -Np1 -i ../screen-&screen-version;-upstream_fixes-1.patch</userinput></screen>
-->
<para>
Install <application>Screen</application> by running the
following commands:
</para>
<screen><userinput>sh autogen.sh &amp;&amp;
./configure --prefix=/usr \
--infodir=/usr/share/info \
--mandir=/usr/share/man \
--with-socket-dir=/run/screen \
--with-pty-group=5 \
--with-sys-screenrc=/etc/screenrc &amp;&amp;
sed -i -e "s%/usr/local/etc/screenrc%/etc/screenrc%" {etc,doc}/* &amp;&amp;
make</userinput></screen>
<para>
This package does not come with a test suite.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install &amp;&amp;
install -m 644 etc/etcscreenrc /etc/screenrc</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>--with-socket-dir=/run/screen</parameter>: This option
places the per-user sockets in a standard location.
</para>
<para>
<parameter>--with-sys-screenrc=/etc/screenrc</parameter>: This option
places the global screenrc file in <filename
class='directory'>/etc</filename>.
</para>
<para>
<parameter>--with-pty-group=5</parameter>: This option sets the gid
to the value used by LFS.
</para>
<para>
<command>sed -i -e "s%/usr/local/etc/screenrc%/etc/screenrc%"
{etc,doc}/*</command>: This command corrects the configuration and
documentation files to the location that is used here for the global
screenrc file.
</para>
</sect2>
<sect2 role="configuration">
<title>Configuring Screen</title>
<sect3 id ="screen-config">
<title>Config Files</title>
<para>
<filename>/etc/screenrc</filename> and
<filename>~/.screenrc</filename>
</para>
<indexterm zone="screen screen-config">
<primary sortas="e-AA.screenrc">~/.screenrc</primary>
</indexterm>
<indexterm zone="screen screen-config">
<primary sortas="e-etc-screenrc">/etc/screenrc</primary>
</indexterm>
</sect3>
<sect3>
<title>Configuration Information</title>
<para>
You may want to look at the example configuration file that was
installed and customize it for your needs.
</para>
</sect3>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>screen (symlink) and screen-&screen-version;</seg>
<seg>None</seg>
<seg>/usr/share/screen and /run/screen</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="screen-prog">
<term><command>screen</command></term>
<listitem>
<para>
is a terminal multiplexor with VT100/ANSI terminal emulation
</para>
<indexterm zone="screen screen-prog">
<primary sortas="b-screen">screen</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>