Contenu
/usr/lib/seamonkey
Seamonkey est une suite internet, un successeur de Netscape. Elle inclut le navigateur, le compositeur, des clients de messagerie et de nouvelles et un client IRC.
C'est le successeur communautaire de la suite d'application Mozilla, créée après que Mozilla a décidé de se concentrer sur des applications séparées pour la navigation et les courriels. Ces applications sont Firefox-128.1.0 et Thunderbird-128.1.0esr.
Ce paquet est connu pour pouvoir être construit et fonctionner correctement avec une plateform 12.2.
Téléchargement (HTTP) : https://archive.seamonkey-project.org/releases/2.53.18.2/source/seamonkey-2.53.18.2.source.tar.xz
Somme de contrôle MD5 du téléchargement : 266a86651348e21934707a7ccb3abef3
Taille du téléchargement : 241 Mo
Estimation de l'espace disque requis : 3,0 Go (148 Mo installés)
Estimation du temps de construction : 3,5 SBU (avec parallélisme = 8)
Correctif recommandé (requis pour construire avec la version du système d'ICU-75 ou supérieur) : https://www.linuxfromscratch.org/patches/blfs/12.2/seamonkey-2.53.18.2-cxx17-1.patch
L'archive seamonkey-2.53.18.2.source.tar.xz se décompactera dans le répertoire seamonkey-2.53.18.2.
Cbindgen-0.27.0, GTK+-3.24.43, nodejs-20.16.0, Python-3.11.1, UnZip-6.0, yasm-1.3.0 et Zip-3.0
ICU-75.1, libevent-2.1.12, libwebp-1.4.0, LLVM-18.1.7 (avec clang), NASM-2.16.03, NSPR-4.35, nss-3.103 et PulseAudio-17.0
Si vous n'installez pas les dépendances recommandées, alors des copies internes de ses paquets seront utilisées. Elles sont testées pour fonctionner, mais elles peuvent être dépassées ou contenir des trous de sécurité.
alsa-lib-1.2.12, dbus-glib-0.112, startup-notification-0.12, Valgrind-3.23.0, Wget-1.24.5, Wireless Tools-29, Hunspell, Gconf et Watchman
La configuration de Seamonkey se
fait en créant un fichier mozconfig
contenant les options de configuration désirées. Un fichier
mozconfig
par défaut est créé
ci-dessous. Pour voir toute la liste des options de configuration
disponibles (et une description abrégée de chacune), exécutez
./configure --help.
Il se peut que vous vouliez aussi relire tout le fichier et
dé-commenter d'autres options souhaitées. Créez le fichier en
exécutant la commande suivante :
cat > mozconfig << "EOF"
# If you have a multicore machine, all cores will be used
# 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
# Uncomment the following option if you have not installed PulseAudio
#ac_add_options --disable-pulseaudio
# and uncomment this if you installed alsa-lib instead of PulseAudio
#ac_add_options --enable-alsa
# Comment out the 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 --with-system-icu
ac_add_options --with-system-libevent
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-webp
# Disabling debug symbols makes the build much smaller and a little
# faster. Comment this if you need to run a debugger.
ac_add_options --disable-debug-symbols
# The elf-hack is reported to cause failed installs (after successful builds)
# on some machines. It is supposed to improve startup time and it shrinks
# libxul.so by a few MB. With recent Binutils releases the linker already
# supports a much safer and generic way for this.
ac_add_options --disable-elf-hack
ac_add_options --enable-linker=bfd
export LDFLAGS="$LDFLAGS -Wl,-z,pack-relative-relocs"
# Seamonkey has some additional features that are not turned on by default,
# such as an IRC client, calendar, and DOM Inspector. The DOM Inspector
# aids with designing web pages. Comment these options if you do not
# desire these features.
ac_add_options --enable-calendar
ac_add_options --enable-dominspector
ac_add_options --enable-irc
# The BLFS editors recommend not changing anything below this line:
ac_add_options --prefix=/usr
ac_add_options --enable-application=comm/suite
ac_add_options --disable-crashreporter
ac_add_options --disable-updater
ac_add_options --disable-tests
# The SIMD code relies on the unmaintained packed_simd crate which
# fails to build with Rustc >= 1.78.0. We may re-enable it once
# Mozilla port the code to use std::simd and std::simd is stabilized.
ac_add_options --disable-rust-simd
ac_add_options --enable-strip
ac_add_options --enable-install-strip
# You cannot distribute the binary if you do this.
ac_add_options --enable-official-branding
# The option to use system cairo was removed in 2.53.9.
ac_add_options --enable-system-ffi
ac_add_options --enable-system-pixman
ac_add_options --with-system-bz2
ac_add_options --with-system-jpeg
ac_add_options --with-system-png
ac_add_options --with-system-zlib
export CC=clang CXX=clang++
EOF
Si vous compilez ce paquet dans un chroot vous vous assurer que
/dev/shm
est monté. Si vous ne le
faites pas, la configuration en Python échouera avec une trace faisant
référence à /usr/lib/pythonN.N/multiprocessing/synchronize.py
.
En tant qu'utilisateur root
,
exécutez :
mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
Tout d'abord, si vous construisez avec le paquet ICU du système, adaptez les retours à la ligne pour ICU-74 et supérieur, et appliquez un correctif pour construire ce paquet avec le standard C++17 car les en-têtes de ICU-75 et supérieur nécessitent des fonctionnalités de C++17 :
(for i in {43..47}; do sed '/ZWJ/s/$/,CLASS_CHARACTER/' -i intl/lwbrk/LineBreaker.cpp || exit $? done) && patch -Np1 -i ../seamonkey-2.53.18.2-cxx17-1.patch
Ensuite, corrigez un problème avec le module python « distro » intégré :
sed -e '1012 s/stderr=devnull/stderr=subprocess.DEVNULL/' \ -e '1013 s/OSError/(OSError, subprocess.CalledProcessError)/' \ -i third_party/python/distro/distro.py
Compilez Seamonkey en exécutant les commandes suivantes :
export PATH_PY311=/opt/python3.11/bin:$PATH && PATH=$PATH_PY311 AUTOCONF=true ./mach build
Ce paquet n'a pas de suite de tests.
Installez Seamonkey en exécutant
les commandes suivantes en tant qu'utilisateur root
:
Si sudo ou
su est invoqué pour
ouvrir un shell qui tourne en root
, assurez-vous que PATH PY311
est correctement passé ou la commande
suivante échouera. Pour sudo, utilisez l'option
--preserve-env=PATH_PY311
. Pour
su, n'utilisez
pas les options
-
ou --login
.
PATH=$PATH_PY311 ./mach install && chown -R 0:0 /usr/lib/seamonkey && cp -v $(find -name seamonkey.1 | head -n1) /usr/share/man/man1
Enfin, désactivez la variable PATH_PY311
:
unset $PATH_PY311
export CC=clang CXX=clang++ : avec l'introduction de gcc-12, bien plus d'avertissements sont générés lors de la compilation des applications mozilla et cela rend la construction plus lente et plus grosse. En plus, la construction avec GCC sur i?86 est actuellement cassée. Bien que le code de mozilla en amont utilise llvm par défaut à moins d'être modifié, l'ancien code de configuration de Seamonkey utilise gcc par défaut.
./mach build --verbose
: utilisez
cette alternative si vous avez besoin de détails sur les fichiers
qui sont compilés, avec les drapeaux C ou C++ utilisé. Mais
n'ajoutez pas « --verbose » à la commande d'installation,
l'option n'y est pas acceptée.
./mach build -jN
: la construction
devrait, par défaut, utiliser tous les cœurs de CPU en ligne. Si
utiliser tous les cœurs fait utiliser l'espace d'échange à la
construction parce que vous n'avez pas asse de mémoire, utiliser
moins de cœurs peut être plus rapide.
Pour installer les différents plugins de Seamonkey, reportez-vous à Greffons pour Seamonkey.
Tout en utilisant le menu « Préférences » pour configurer les
options et les préférences de Seamonkey pour les adapter à vos propres
goûts, un contrôle bien plus approfondi de nombreuses options n'est
disponible qu'en utilisant un outil non disponible depuis le
système de menu général. Pour accéder à cet outil, vous devrez
ouvrir une fenêtre du navigateur et saisir about:config
dans la barre d'adresse. Cela
affichera une liste des préférences de configuration et des
informations liées à chacune. Vous pouvez utiliser la barre de
« Filtre: » pour saisir des critères de
recherche et réduire les éléments listés. La modification d'une
préférence se fait en utilisant deux méthodes. L'une, si la
préférence a une valeur booléenne (True/False, Vrai/Faux),
double-cliquez simplement sur la préférence pour basculer la
valeur, et l'autre, pour les préférences, faites simplement un clic
droit sur la ligne désirée, choisissez « Modifier »
dans le menu et modifiez la valeur. La création de nouveaux
éléments de préférence se fait de la même façon, sauf qu'il faut
choisir « Nouveau » depuis le menu et fournir les
données désirées dans les champs quand on vous le demande.
Si vous utilisez un environnement de bureau comme Gnome ou KDE
vous pourriez souhaiter créer un fichier seamonkey.desktop
pour que Seamonkey apparaisse dans les menus du bureau.
Si vous n'avez pas activé Startup-Notification dans votre mozconfig,
modifiez la ligne StartupNotify en false. En tant qu'utilisateur
root
:
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/chrome/icons/default/default128.png \
/usr/share/pixmaps/seamonkey.png
/usr/lib/seamonkey