Fresh Player no Slackware (sim, FRESH)
Instalação do plugin Fresh Player no Slackware, que "chama" o plugin do Google Chrome, que continua com atualizações, para permitir o seu uso no Firefox.
Resolvendo as dependências
Procedimento testado no Slackware 14.1.
As versões dos softwares neste artigo servem como exemplo, pois com o passar do tempo, ficarão desatualizados.
Como deve saber, a Adobe não atualiza mais o plugin Flash para o GNU/Linux. A única maneira de te-lo atualizado no GNU/Linux, é usando o Google Chrome. Porém, o Google Chrome deixou de usar o NPAPI e passou a usar o PPAPI, o que tornou o Google Chrome incompatível com o plugin Java.
Dentre as possíveis soluções para ter o Flash atualizado e a compatibilidade com o plugin Java no mesmo navegador (Firefox), está o Fresh Player.
Site do projeto:
O Fresh Player exige algumas dependências, que são:
Se você fez uma instalação FULL do DVD do Slackware, terá quase todas. Vai ficar faltando apenas a liburiparser e vai precisar também recompilar o MesaLib, para ter o glesv2.
Vamos lá. Primeiro faça o download do MesaLib, para recompilar:
wget -m -np -p http://slackbuilds.org/mirror/slackware/slackware-14.1/source/x/mesa/
Depois, acesse o diretório:
cd slackbuilds.org/mirror/slackware/slackware-14.1/source/x/mesa/
Altere o script de compilação:
nano mesa.SlackBuild
Procure pelo seguinte bloco de texto:
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--docdir=/usr/doc/mesa-$VERSION \
--with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
--with-dri-drivers="$DRI_DRIVERS" \
--with-gallium-drivers=nouveau,r300,r600,svga \
--enable-gallium-llvm \
--enable-shared-glapi \
--enable-xa \
--enable-osmesa \
--build=$ARCH-slackware-linux
Agora, o segredo é adicionarmos um novo parâmetro ao ./configure, que é o --enable-gles2. Deixando assim:
Salve e feche o arquivo.
Como eu sei disso? Eu li no site oficial do mesa: Mesa EGL
Em seguida, remova o mesa que está instalado:
# slackpkg remove mesa
Obs.: se houver multilib habilitado, não remova o pacote de compatibilidade (mesa-compat32).
Agora, recompile o novo pacote com o novo parâmetro que foi adicionado:
chmod +x mesa.SlackBuild
# sh mesa.SlackBuild
Aguarde e quando terminar, haverá um pacote em /tmp. Basta instalar:
# installpkg /tmp/mesa-9.1.7-x86_64-1.txz
Com isso, concluímos a resolução de uma das dependências. Agora, vamos ao segundo arquivo faltante.
Antes de instalarmos o liburiparser, será necessário instalarmos o src2pkg, cuja página é:
Faça o download do arquivo .txz, em:
Instale o pacote:
# installpkg src2pkg-3.0-noarch-2.txz
# src2pgk --setup
Agora sim, você baixa o liburiparser em:
Ou, diretamente em:
Não use o ports para Slackware, pois está desatualizado. Baixe o código fonte mesmo, exemplo: uriparser-0.8.0.tar.bz2
Usando o src2pkg, prepare o pacote para ser instalado:
src2pkg uriparser-0.8.0.tar.bz2 -e='--disable-test --disable-doc'
Isso irá gerar o seguinte arquivo: /tmp/uriparser-0.8.0-x86_64-1.txz
Basta instalar:
# installpkg /tmp/uriparser-0.8.0-x86_64-1.txz
Com isso, as duas dependências para o Fresh Player foram sanadas.
Continuemos.
As versões dos softwares neste artigo servem como exemplo, pois com o passar do tempo, ficarão desatualizados.
Como deve saber, a Adobe não atualiza mais o plugin Flash para o GNU/Linux. A única maneira de te-lo atualizado no GNU/Linux, é usando o Google Chrome. Porém, o Google Chrome deixou de usar o NPAPI e passou a usar o PPAPI, o que tornou o Google Chrome incompatível com o plugin Java.
Dentre as possíveis soluções para ter o Flash atualizado e a compatibilidade com o plugin Java no mesmo navegador (Firefox), está o Fresh Player.
Site do projeto:
O Fresh Player exige algumas dependências, que são:
- alsa
- glib-2.0
- x11
- xinerama
- egl
- glesv2
- liburiparser
- libconfig
- libevent
- libevent_pthreads
- cairo
- pango
- pangocairo
- pangoft2
- freetype2
- gtk+-2.0
Se você fez uma instalação FULL do DVD do Slackware, terá quase todas. Vai ficar faltando apenas a liburiparser e vai precisar também recompilar o MesaLib, para ter o glesv2.
Vamos lá. Primeiro faça o download do MesaLib, para recompilar:
wget -m -np -p http://slackbuilds.org/mirror/slackware/slackware-14.1/source/x/mesa/
Depois, acesse o diretório:
cd slackbuilds.org/mirror/slackware/slackware-14.1/source/x/mesa/
Altere o script de compilação:
nano mesa.SlackBuild
Procure pelo seguinte bloco de texto:
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--docdir=/usr/doc/mesa-$VERSION \
--with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
--with-dri-drivers="$DRI_DRIVERS" \
--with-gallium-drivers=nouveau,r300,r600,svga \
--enable-gallium-llvm \
--enable-shared-glapi \
--enable-xa \
--enable-osmesa \
--build=$ARCH-slackware-linux
Agora, o segredo é adicionarmos um novo parâmetro ao ./configure, que é o --enable-gles2. Deixando assim:
CFLAGS="$SLKCFLAGS" \
./configure \
--enable-gles2 \
--prefix=/usr \
--sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--docdir=/usr/doc/mesa-$VERSION \
--with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
--with-dri-drivers="$DRI_DRIVERS" \
--with-gallium-drivers=nouveau,r300,r600,svga \
--enable-gallium-llvm \
--enable-shared-glapi \
--enable-xa \
--enable-osmesa \
--build=$ARCH-slackware-linux
./configure \
--enable-gles2 \
--prefix=/usr \
--sysconfdir=/etc \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--mandir=/usr/man \
--docdir=/usr/doc/mesa-$VERSION \
--with-dri-driverdir=/usr/lib${LIBDIRSUFFIX}/xorg/modules/dri \
--with-dri-drivers="$DRI_DRIVERS" \
--with-gallium-drivers=nouveau,r300,r600,svga \
--enable-gallium-llvm \
--enable-shared-glapi \
--enable-xa \
--enable-osmesa \
--build=$ARCH-slackware-linux
Salve e feche o arquivo.
Como eu sei disso? Eu li no site oficial do mesa: Mesa EGL
Em seguida, remova o mesa que está instalado:
# slackpkg remove mesa
Obs.: se houver multilib habilitado, não remova o pacote de compatibilidade (mesa-compat32).
Agora, recompile o novo pacote com o novo parâmetro que foi adicionado:
chmod +x mesa.SlackBuild
# sh mesa.SlackBuild
Aguarde e quando terminar, haverá um pacote em /tmp. Basta instalar:
# installpkg /tmp/mesa-9.1.7-x86_64-1.txz
Com isso, concluímos a resolução de uma das dependências. Agora, vamos ao segundo arquivo faltante.
Antes de instalarmos o liburiparser, será necessário instalarmos o src2pkg, cuja página é:
Faça o download do arquivo .txz, em:
Instale o pacote:
# installpkg src2pkg-3.0-noarch-2.txz
# src2pgk --setup
Agora sim, você baixa o liburiparser em:
Ou, diretamente em:
Não use o ports para Slackware, pois está desatualizado. Baixe o código fonte mesmo, exemplo: uriparser-0.8.0.tar.bz2
Usando o src2pkg, prepare o pacote para ser instalado:
src2pkg uriparser-0.8.0.tar.bz2 -e='--disable-test --disable-doc'
Isso irá gerar o seguinte arquivo: /tmp/uriparser-0.8.0-x86_64-1.txz
Basta instalar:
# installpkg /tmp/uriparser-0.8.0-x86_64-1.txz
Com isso, as duas dependências para o Fresh Player foram sanadas.
Continuemos.
O estranho foi que instalei o google chrome mais recente e mesmo assim, o flash player não é o mais atual, pois no site da Adobe a versão mais recente é a 14.
"Arquivo: libfreshwrapper.so
Caminho: /home/ifch/.mozilla/plugins/libfreshwrapper.so
Versão: 13.1.2.3
Status: Ativo
Shockwave Flash 13.1.2.3 (actual version unknown) (FreshPlayerPlugin)"
Obrigado pela dica.