Seamonkey-2.53.18.2

Introdução ao 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.

Informação do Pacote

Transferências Adicionais

[Nota]

Nota

O tarball seamonkey-2.53.18.2.source.tar.xz desempacotará para o diretório seamonkey-2.53.18.2.

Dependências do Seamonkey

Exigidas

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

Recomendadas

[Nota]

Nota

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.

Opcionais

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

Instalação do Seamonkey

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
[Nota]

Nota

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:

[Nota]

Nota

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

Explicações do Comando

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.

Configurando Seamonkey

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

Conteúdo

Aplicativos Instalados: seamonkey
Bibliotecas Instaladas: Numerosas bibliotecas, navegadores e componentes de mensagens eletrônicas/grupo de notícias, plug-ins, extensões e módulos auxiliares instalados em /usr/lib/seamonkey
Diretório Instalado: /usr/lib/seamonkey

Descrições Curtas

seamonkey

é a suíte de clientes de navegador/mensagens eletrônicas/grupo de notícias/chat da Mozilla