Lynx is a text based web browser.
Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.
Download (HTTP): https://invisible-mirror.net/archives/lynx/tarballs/lynx2.8.9rel.1.tar.bz2
Download MD5 sum: 44316f1b8a857b59099927edc26bef79
Download size: 2.5 MB
Estimated disk space required: 31 MB
Estimated build time: 0.3 SBU
GnuTLS-3.8.3 (experimental, to replace openssl), Zip-3.0, UnZip-6.0, an MTA (that provides a sendmail command), and Sharutils-4.15.2 (for the uudecode program)
First, apply a patch to fix a security vulnerability:
patch -p1 -i ../lynx-2.8.9rel.1-security_fix-1.patch
Install Lynx by running the following commands:
./configure --prefix=/usr \ --sysconfdir=/etc/lynx \ --with-zlib \ --with-bzlib \ --with-ssl \ --with-screen=ncursesw \ --enable-locale-charset \ --datadir=/usr/share/doc/lynx-2.8.9rel.1 && make
This package does not come with a test suite.
Now, as the root
user:
make install-full && chgrp -v -R root /usr/share/doc/lynx-2.8.9rel.1/lynx_doc
--sysconfdir=/etc/lynx
: This parameter is used so that the configuration files are located in /etc/lynx
instead of /usr/etc
.
--datadir=/usr/share/doc/lynx-2.8.9rel.1
: This parameter is used so that the documentation files are installed into /usr/share/doc/lynx-2.8.9rel.1
instead of /usr/share/lynx_{doc,help}
.
--with-zlib
: This enables support for linking libz
into Lynx.
--with-bzlib
: This enables support for linking libbz2
into Lynx.
--with-ssl
: This enables support for linking SSL into Lynx.
--with-screen=ncursesw
: This switch enables the use of advanced wide-character support present in the system NCurses library. This is needed for proper display of characters and line wrapping in multibyte locales.
--enable-locale-charset
: This switch allows Lynx to deduce the proper character encoding for terminal output from the current locale. A configuration step is still needed (see below), but unlike the situation without this switch, the configuration step becomes the same for all users (without the switch one must specify the display character set explicitly). This is important for environments such as a LiveCD, where the amount of system-specific configuration steps has to be reduced to the minimum.
--enable-ipv6
: This switch allows Lynx to use IPv6, along with IPv4. Use it if your ISP provides an IPv6 configuration.
--enable-nls
: This switch allows Lynx to print translated messages (such as questions about cookies and SSL certificates).
--with-gnutls
: This enables experimental support for linking GnuTLS into Lynx. Remove the --with-ssl
switch if you want to use gnutls.
make install-full: In addition to the standard installation, this target installs the documentation and help files.
chgrp -v -R root /usr/share/doc/lynx-2.8.9rel.1/lynx_doc : This command corrects the improper group ownership of installed documentation files.
The proper way to get the display character set is to examine the current locale. However, Lynx does not do this by default. As the root
user, change this setting:
sed -e '/#LOCALE/ a LOCALE_CHARSET:TRUE' \ -i /etc/lynx/lynx.cfg
The built-in editor in Lynx Breaks Multibyte Characters. This issue manifests itself in multibyte locales, e.g., as the Backspace key not erasing non-ASCII characters properly, and as incorrect data being sent to the network when one edits the contents of text areas. The only solution to this problem is to configure Lynx to use an external editor (bound to the “Ctrl+X e” key combination by default). Still as the root
user:
sed -e '/#DEFAULT_ED/ a DEFAULT_EDITOR:vi' \ -i /etc/lynx/lynx.cfg
Lynx handles the following values of the DEFAULT_EDITOR option specially by adding cursor-positioning arguments: “emacs”, “jed”, “jmacs”, “joe”, “jove”, “jpico”, “jstar”, “nano”, “pico”, “rjoe”, “vi” (but not “vim”: in order to position the cursor in Vim-9.0.2189, set this option to “vi”).
By default, Lynx doesn't save cookies between sessions. Again as the root
user, change this setting:
sed -e '/#PERSIST/ a PERSISTENT_COOKIES:TRUE' \ -i /etc/lynx/lynx.cfg
Many other system-wide settings such as proxies can also be set in the /etc/lynx/lynx.cfg
file.