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