Conteúdo
/usr/lib/seamonkey
Seamonkey é uma suíte de navegadores, um descendente do Netscape. Ele inclui o navegador, o compositor, clientes de mensagens e notícias e um cliente de IRC.
É a continuação do Mozilla Application Suite, controlado pela comunidade, criado depois que a Mozilla decidiu focar em aplicativos separados para navegação e mensagens eletrônicas. Esses aplicativos são Firefox-128.1.0 e Thunderbird-128.1.0esr.
Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.2.
Transferência (HTTP): https://archive.seamonkey-project.org/releases/2.53.18.2/source/seamonkey-2.53.18.2.source.tar.xz
Soma de verificação MD5 da transferência: 266a86651348e21934707a7ccb3abef3
Tamanho da transferência: 241 MB
Espaço em disco estimado exigido: 3,0 GB (148 MB instalado)
Tempo de construção estimado: 3,5 UPC (com paralelismo=8)
Remendo recomendado (exigido para construir com ICU-75 do sistema ou mais recente): https://www.linuxfromscratch.org/patches/blfs/12.2/seamonkey-2.53.18.2-cxx17-1.patch
O tarball seamonkey-2.53.18.2.source.tar.xz desempacotará para o diretório 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 e Zip-3.0
ICU-75.1, libevent-2.1.12, libwebp-1.4.0, LLVM-18.1.7 (com clang), NASM-2.16.03, NSPR-4.35, nss-3.103 e PulseAudio-17.0
Se você não instalar as dependências recomendadas, então cópias internas desses pacotes serão usadas. Elas podem ter sido testadas para funcionar, mas podem estar desatualizadas ou conter falhas de segurança.
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 e Watchman
A configuração do Seamonkey é
realizada criando-se um arquivo mozconfig contendo as opções desejadas de
configuração. Um arquivo mozconfig
padrão é criado abaixo. Para ver a lista completa de opções
disponíveis de configuração (e uma descrição abreviada de cada
uma), emita ./configure
--help. Você também possivelmente revise o arquivo
inteiro e descomente quaisquer outras opções desejadas. Crie o
arquivo emitindo o seguinte comando:
cat > mozconfig << "EOF"
# Se você tiver uma máquina multi cores, todos os cores serão usados
# Se você tiver instalado o DBus-Glib, comente esta linha:
ac_add_options --disable-dbus
# Se você tiver instalado o dbus-glib e tiver instalado (ou instalará)
# o "wireless-tools" e deseja usar serviços de geolocalização da web,
# comente esta linha
ac_add_options --disable-necko-wifi
# Descomente estas linhas se você tiver instalado dependências opcionais:
#ac_add_options --enable-system-hunspell
#ac_add_options --enable-startup-notification
# Descomente a seguinte opção se você não tiver instalado o PulseAudio:
#ac_add_options --disable-pulseaudio
# e descomente esta se você instalou alsa-lib em vez de PulseAudio:
#ac_add_options --enable-alsa
# Comente a seguinte opção se você tiver o gconf instalado:
ac_add_options --disable-gconf
# Comente as seguintes opções se você não tiver instalado
# as dependências recomendadas:
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
# Desabilitar símbolos de depuração torna a construção muito menor e um pouco
# mais rápida. Comente isto se você precisar executar um depurador.
ac_add_options --disable-debug-symbols
# Foi informado que o elf-hack causa instalações falhas (depois de construções bem-sucedidas)
# em algumas máquinas. Supõe-se que melhore o tempo de inicialização e reduza
# a libxul.so em alguns MB. Com os lançamentos recentes do Binutils, o vinculador já suporta
# uma maneira muito mais segura e genérica para isso.
ac_add_options --disable-elf-hack
ac_add_options --enable-linker=bfd
export LDFLAGS="$LDFLAGS -Wl,-z,pack-relative-relocs"
# Seamonkey tem alguns recursos adicionais que não estão ativados por padrão,
# como cliente IRC, calendário e Inspetor DOM. O Inspetor DOM auxilia no
# projeto de páginas da web. Comente estas opções se você não deseja
# esses recursos.
ac_add_options --enable-calendar
ac_add_options --enable-dominspector
ac_add_options --enable-irc
# Os(as) editores(as) do BLFS recomendam não mudar nada abaixo desta linha:
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
# O código SIMD depende da caixa pack_simd não mantida que falha para
# construir com Rustc >= 1.78.0. Nós podemos reabilitá-lo assim que a
# Mozilla portar o código para usar std::simd e std::simd estiver estabilizado.
ac_add_options --disable-rust-simd
ac_add_options --enable-strip
ac_add_options --enable-install-strip
# Você não pode distribuir o binário se fizer isso.
ac_add_options --enable-official-branding
# A opção de usar o Cairo do sistema foi removida em 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
Se você estiver compilando esse pacote em chroot, você precisa
assegurar que /dev/shm esteja
montado. Se você não fizer isso, a configuração do Python falhará com um informe de
rastreamento reverso referenciando /usr/lib/pythonN.N/multiprocessing/synchronize.py.
Como o(a) usuário(a) root,
execute:
mountpoint -q /dev/shm || mount -t tmpfs devshm /dev/shm
Primeiro, se você estiver construindo com o ICU do sistema, adapte o mapeamento de quebra de linha para ICU-74 ou posterior e aplique um remendo para construir esse pacote com o padrão C++17, porque os cabeçalhos de ICU-75 ou posterior exigem alguns recursos da 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
A seguir, corrija um problema com o módulo incluído 'distro' do python:
sed -e '1012 s/stderr=devnull/stderr=subprocess.DEVNULL/' \
-e '1013 s/OSError/(OSError, subprocess.CalledProcessError)/' \
-i third_party/python/distro/distro.py
Compile Seamonkey executando os seguintes comandos:
export PATH_PY311=/opt/python3.11/bin:$PATH && PATH=$PATH_PY311 AUTOCONF=true ./mach build
Esse pacote não vem com uma suíte de teste.
Instale Seamonkey emitindo os
seguintes comandos como o(a) usuário(a) root:
Se sudo ou
su for invocado
para abrir um shell executando como o(a) usuário(a) root, certifique-se de que PATH_PY311 foi passado corretamente ou o comando a
seguir falhará. Para sudo, use a opção --preserve-env=PATH_PY311. Para su, não use as opções - 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
Finalmente, desconfigure a variável PATH_PY311:
unset $PATH_PY311
export CC=clang CXX=clang++: Com a introdução do gcc-12, muitos mais avisos são gerados ao compilar-se aplicativos Mozilla e isso resulta em uma construção muito mais lenta e maior. Além disso, construir com GCC no i?86 atualmente está quebrado. Embora o código de fluxo de desenvolvimento da Mozilla tenha como padrão usar o llvm, a menos que substituído, o código de configuração mais antigo no Seamonkey tem como padrão o gcc.
./mach build --verbose: Use essa
alternativa se você precisar de detalhes de quais arquivos estão
sendo compilados, juntamente com quaisquer sinalizadores C ou C++
sendo usados. Mas não adicione '--verbose' ao comando de
instalação; não é aceito lá.
./mach build -jN: A construção deveria,
por padrão, usar todos os Elementos de Processamento de CPU online.
Se usar todos os Elementos de Processamento fizer com que a
construção use a área de troca porque você tem memória
insuficiente, usar menos Elementos de Processamento poderá ser mais
rápido.
Para instalar vários complementos do Seamonkey, consulte Complementos para Seamonkey.
Juntamente com usar o menu “Preferências” para configurar opções e
preferências do Seamonkey para
atender aos gostos individuais, um controle mais refinado de muitas
opções somente está disponível usando-se uma ferramenta não
disponível a partir do sistema geral de menus. Para acessar essa
ferramenta, você precisará abrir uma janela do navegador e digitar
about:config na barra de endereço.
Isso exibirá uma lista das preferências de configuração e
informações relacionadas a cada uma. Você pode usar a barra
“Pesquisar:”
para inserir critérios de pesquisa e restringir os itens listados.
Mudar uma preferência pode ser feito usando-se dois métodos.
Primeiro, se a preferência tiver um valor booleano
(Verdadeiro/Falso), simplesmente clique duas vezes na preferência
para alternar o valor; e dois, para outras preferências,
simplesmente clique com o botão direito na linha desejada, escolha
“Modificar”
no menu e mude o valor. Criar novos itens de preferência é
realizado da mesma maneira, exceto que escolha “Novo” no menu e forneça
os dados desejados nos campos quando solicitado(a).
Se você usar um ambiente de área de trabalho, como Gnome ou KDE,
você possivelmente deseje criar um arquivo seamonkey.desktop, de forma que Seamonkey apareça nos menus do painel. Se você
não habilitou Startup-Notification
em teu mozconfig, mude a linha StartupNotify para false. Como o(a)
usuário(a) root:
mkdir -pv /usr/share/{applications,pixmaps} &&
cat > /usr/share/applications/seamonkey.desktop << "EOF"
[Desktop Entry]
Encoding=UTF-8
Type=Application
Name=Seamonkey
Comment=A Suíte Mozilla
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