SeaMonkey-2.46

Introduction to SeaMonkey

SeaMonkey is a browser suite, the Open Source sibling of Netscape. It includes the browser, composer, mail and news clients, and an IRC client. It is the follow-on to the Mozilla browser suite.

The Mozilla project also hosts two subprojects that aim to satisfy the needs of users who don't need the complete browser suite or prefer to have separate applications for browsing and e-mail. These subprojects are Firefox-52.0.1 and Thunderbird-45.8.0. Both are based on the Mozilla source code.

This package is known to build and work properly using an LFS-8.0 platform.

Package Information

[Note]

Note

The tarball seamonkey-2.46.source.tar.xz will untar to seamonkey-2.46 directory.

SeaMonkey Dependencies

Required

alsa-lib-1.1.3, Autoconf-2.13, GTK+-2.24.31, UnZip-6.0, yasm-1.3.0, and Zip-3.0

Recommended

[Note]

Note

If you don't install recommended dependencies, then internal copies of those packages will be used. They might be tested to work, but they can be out of date or contain security holes.

[Note]

Note

You must have installed Openssl before Python 2 or the build system will quickly fail with output including "ImportError: cannot import name HTTPSHandler". If you are in any doubt about this (e.g. upgrading from an older version of Seamonkey), check if /usr/lib/python2.7/lib-dynload/_ssl.so exists. If it does not, reinstall Python-2.7.13 (after installing OpenSSL-1.0.2k. The latest version of any currently maintained version of Openssl should be satisfactory if already installed.

Optional

cURL-7.53.1, dbus-glib-0.108, Doxygen-1.8.13, GConf-3.2.6, gst-plugins-base-1.10.4 (and other plugins, only for tests), OpenJDK-1.8.0.121, PulseAudio-10.0, startup-notification-0.12, Valgrind-3.12.0, Wget-1.19.1, Wireless Tools-29, and Hunspell

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/seamonkey

Installation of SeaMonkey

The configuration of SeaMonkey is accomplished by creating a mozconfig file containing the desired configuration options. A default mozconfig file is created below. To see the entire list of available configuration options (and an abbreviated description of each one), issue ./configure --help. You may also wish to review the entire file and uncomment any other desired options. Create the file by issuing the following command:

cat > mozconfig << "EOF"
# If you have a multicore machine, all cores will be used by default.
# If desired, you can reduce the number of cores used, e.g. to 1, by
# uncommenting the next line and setting a valid number of CPU cores.
#mk_add_options MOZ_MAKE_FLAGS="-j1"

# If you have installed DBus-Glib comment out this line:
ac_add_options --disable-dbus

# If you have installed dbus-glib, and you have installed (or will install)
# wireless-tools, and you wish to use geolocation web services, comment out
# this line
ac_add_options --disable-necko-wifi

# Uncomment these lines if you have installed optional dependencies:
#ac_add_options --enable-system-hunspell
#ac_add_options --enable-startup-notification

# Comment out the following option if you have PulseAudio installed
ac_add_options --disable-pulseaudio

# Comment out following option if you have gconf installed
ac_add_options --disable-gconf

# Comment out following options if you have not installed
# recommended dependencies:
ac_add_options --enable-system-sqlite
ac_add_options --with-system-libevent
ac_add_options --with-system-libvpx
ac_add_options --with-system-nspr
ac_add_options --with-system-nss

# Us the internal version of icu due to execution problems
#ac_add_options --with-system-icu

# The BLFS editors recommend not changing anything below this line:
ac_add_options --prefix=/usr
ac_add_options --enable-application=suite

ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-tests

ac_add_options --enable-optimize
ac_add_options --enable-strip
ac_add_options --enable-install-strip

ac_add_options --enable-gio
ac_add_options --enable-official-branding
ac_add_options --enable-safe-browsing
ac_add_options --enable-url-classifier

# Use internal cairo due to reports of unstable execution with
# system cairo
#ac_add_options --enable-system-cairo
ac_add_options --enable-system-ffi
ac_add_options --enable-system-pixman

ac_add_options --with-pthreads

ac_add_options --with-system-bz2
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib
EOF
[Note]

Note

If you are compiling SeaMonkey in chroot, make sure you have the SHELL environment variable set or prepend SHELL=/bin/sh to the first make command below.

Compile SeaMonkey by running the following commands:

CFLAGS_HOLD=$CFLAGS           &&
CXXFLAGS_HOLD=$CXXFLAGS       &&
EXTRA_FLAGS=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2" &&
export CFLAGS+=$EXTRA_FLAGS   &&
export CXXFLAGS+=$EXTRA_FLAGS &&
unset EXTRA_FLAGS             &&

sed -e 's/256/224/'                                   \
    -i mozilla/netwerk/protocol/http/Http2Session.cpp &&

sed -e '/version=/s/:space:/[&]/' \
    -i ./mozilla/build/autoconf/icu.m4 &&

sed -e s/_EVENT_SIZEOF/EVENT__SIZEOF/ \
    -i mozilla/ipc/chromium/src/base/message_pump_libevent.cc

make -f client.mk

This package does not come with a test suite.

Install SeaMonkey by issuing the following commands as the root user:

make  -f client.mk install INSTALL_SDK= &&
chown -R 0:0 /usr/lib/seamonkey-2.46    &&

cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1

Set the compilation flags back to their original values:

export CFLAGS=$CFLAGS_HOLD     &&
export CXXFLAGS=$CXXFLAGS_HOLD &&
unset CFLAGS_HOLD CXXFLAGS_HOLD

All the Development Libraries and Headers

If you want to install the full SeaMonkey development environment, as the root user:

make -C obj* install
[Note]

Note

The build directory is set by the make procedure and is dependent on the system archetecture, but the directory name starts with 'obj'.

Command Explanations

export CFLAGS= ... export CXXFLAGS= ...: These settings work around code which gcc6 would otherwise regard as out-of-specification and allow it to produce a working program.

sed -e 's/256/224/' ...: Make the required key length for ECDSA encryption compatible with RFC7540 9.2.1. Otherwise some web sites cannot be accessed.

sed ... icu.m4: Fix an error identified by sed-4.4 and later.

sed ... message_pump_libevent.cc: Fix an error due to changes in libevent-2.1.8 and later.

make -f client.mk: Mozilla products are packaged to allow the use of a configuration file which can be used to pass the configuration settings to the configure command. make uses the client.mk file to get initial configuration and setup parameters.

Configuring SeaMonkey

For installing various SeaMonkey plugins, refer to Mozdev's PluginDoc Project.

Along with using the “Preferences” menu to configure SeaMonkey's options and preferences to suit individual tastes, finer grain control of many options is only available using a tool not available from the general menu system. To access this tool, you'll need to open a browser window and enter about:config in the address bar. This will display a list of the configuration preferences and information related to each one. You can use the “Filter:” bar to enter search criteria and narrow down the listed items. Changing a preference can be done using two methods. One, if the preference has a boolean value (True/False), simply double-click on the preference to toggle the value and two, for other preferences simply right-click on the desired line, choose “Modify” from the menu and change the value. Creating new preference items is accomplished in the same way, except choose “New” from the menu and provide the desired data into the fields when prompted.

[Tip]

Tip

There is a multitude of configuration parameters you can tweak to customize SeaMonkey. A very extensive list of these parameters can be found at http://preferential.mozdev.org/preferences.html.

If you use a desktop environment like Gnome or KDE you may wish to create a seamonkey.desktop file so that SeaMonkey appears in the panel's menus. If you didn't enable Startup-Notification in your mozconfig change the StartupNotify line to false. As the root user:

mkdir -pv /usr/share/{applications,pixmaps}              &&

cat > /usr/share/applications/seamonkey.desktop << "EOF"
[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=SeaMonkey
Comment=The Mozilla Suite
Icon=seamonkey
Exec=seamonkey
Categories=Network;GTK;Application;Email;Browser;WebBrowser;News;
StartupNotify=true
Terminal=false
EOF

ln -sfv /usr/lib/seamonkey-2.46/chrome/icons/default/seamonkey.png \
        /usr/share/pixmaps

Contents

Installed Programs: seamonkey
Installed Libraries: Numerous libraries, browser, and email/newsgroup components, plugins, extensions, and helper modules installed in /usr/lib/seamonkey-2.46
Installed Directory: /usr/lib/seamonkey-2.46

Short Descriptions

seamonkey

is the Mozilla browser/email/newsgroup/chat client suite.

Last updated on 2017-02-21 19:57:55 -0600