I have built GNU screen
for the Tivo.
screen
is a utility to allow multiple terminal sessions
on a single port.
It is particularly useful on the Tivo console port as, in addition
to allowing multiple sessions, those sessions have full job control, etc.
Please see the documentation for more information on the screen
program.
Get my screen package and unzip it. This contains the sources as well as the executable and required libraries
Copy the following files to the Tivo:
screen
-- this is the executable. It can go anywhere you put executables.
I use /var/hack/bin/
.
lib-tivo/libncurses.so.5
, lib-tivo/libutil.so.1
,
lib-tivo/libcrypt.so.1
-- these are the libraries it uses.
You can put these anywhere (I use /var/hack/lib/
) as long as you define
the environment variable LD_LIBRARY_PATH
to point to the directory.
etc/etcscreenrc
-- this must be copied to /var/hack/screenrc
.
The location of this can be changed by recompiling or by defining the SYSSCREENRC
environment variable.
You will also need the terminfo package installed.
You must define the TERMINFO
environment variable to point to it.
You can then invoke screen
from the bash prompt.
If you want to replace the console bash prompt with a screen session you can add
the following lines to your rc.sysinint:
export TERMINFO=/var/hack/terminfo
export LD_LIBRARY_PATH=/var/hack/lib
/var/hack/bin/screen < /dev/ttyS3 >& /dev/ttyS3 &
This build is based on the V3.9.8 release of GNU screen
.
The configure script will not run because of the cross-compiler environment. However, I have created a config.tivo script which seems to work. Executing this script recreates the makefile and the config.h.
I only had to make one small code change: window.c needs to not try to change
ownership of the pty device as the root filesystem is read-only.
This is conditional on a new config.h parameter PTYRO
.
There is a patch file in screen.diff
.
Initial Tivo port.