De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Alessandro de Oliveira Faria
Data de Publicação: 28 de maio de 2013
O recurso que permite transformar aplicativos LibreOffice em Web Services (modo servidor) sobre o GTK+, encontra-se disponível a partir da versão 3.4 da suíte. Entretanto, existem alguns requisitos obrigatórios com o GTK+ 3 e outros.
O grande pulo do gato, é compilar o GTK+ (3.2 ou superior) utilizando as opções "--enable-x11-backend --enable-broadway-backend".
Resumidamente, este recurso permite criar aplicações Web não somente do LibreOffice, e sim de qualquer aplicativo que utilizar o GTK+. O interessante é a utilização da aplicação gráfica utilizando o back-end GTK+ 3.2 Broadway para renderizar/transformar a interface GTK+ em HTML5.
Nem tudo são flores. Até a versão 3.6, devemos utilizar uma sessão da aplicação em cada porta, por exemplo, o editor de texto na porta 8080, a planilha de cálculo na porta 8081 e assim por diante.
Porém, a partir da versão 3.8 do GTK+ foi implementado um server separado, o Broadwayd (mas isto fica para o próximo artigo ou dica).
Vale a pena? Sim.
A seguir, um vídeo demonstrativo do uso desta tecnologia. Estou elaborando uma imagem LiveCD baseado no openSUSE, cujo principal objetivo é prover um servidor Web Office de forma simples, objetiva e produtiva:
Mão na massa
Primeiramente, a seguir, o ambiente utilizado para elaboração deste documento:
Para compilar a partir do código fonte, efetue o download de todo o código fonte, em: http://download.documentfoundation.org/libreoffice/src/
E o descompacte com o comando tar:
# tar -xvf libreoffice-4.0.3.3.tar.xz
Com o pacote descompactado, vamos agora atender às dependências de compilação instalando os softwares necessários:
# zypper in libxslt-devel # zypper in krb5-devel # zypper in gconf-2.0 # zypper in gconf2-devel # zypper in gnome-vfs2-devel # zypper in doxygen
Atenção: utilize apenas os comandos cujos pacotes não se encontram presentes em seu sistema operacional. Caso não utilize a distribuição openSUSE, procure o pacote com o nome correspondente em sua distribuição favorita e troque a sintaxe de instalação junto ao comando zypper por apt-get, rpm, dpkg ou outros.
Com o ambiente preparado, agora entre na pasta recém criada (no meu caso: "libreoffice-4.0.3.3"), e execute o comando autogen precedidos dos comandos conforme o exemplo a seguir:
$ ./autogen.sh --with-system-cairo --enable-gtk3 --without-help --disable-mozilla --with-system-libs --without-system-libcmis --without-java -- without-junit --without-system-graphite --without-system-sampleicc --disable-extensions --without-system-lpsolve --without-system-libexttextcat -- without-doxygen --with-num-cpus=4 --without-myspell-dicts --without-system-orcus --without-system-altlinuxhyph --without-system-mythes --without- system-libexttextcat --without-system-poppler --without-system-liblangtag**
Se tudo estiver funcionando corretamente, execute o comando make e make install e vá tomar um café, caso contrário, resolva as dependências (geralmente voltada aos pacotes de desenvolvimento) e repita a operação.
# make
Após muitoooo tempo:
# make install
Se você estiver utilizando a distribuição openSUSE 12.3, pode optar pelo modo fácil, bastando entrar no link http://software.opensuse.org/package/libreoffice
E clique no botão: "Instalar diretamente".
Com tudo instalado e funcionando corretamente, primeiramente, declare as variáveis ambientais conforme o exemplo abaixo:
$ export SAL_USE_VCLPLUGIN=gtk3 $ export GDK_BACKEND=broadway $ export BROADWAY_DISPLAY=8080**
As declarações acima informam para o LibreOffice utilizar a renderização Broadway, que faz toda mágica de transformação para HTML5.
Agora, basta utilizar um dos comandos para iniciar o servidor:
$ soffice --writer $ soffice --calc $ soffice --draw $ soffice --impress $ soffice --base $ soffice --math $ soffice --global $ soffice --web
Agora, para acessar o seu servidor, basta entrar no endereço http://localhost:8080
Ou:
http://IP.do.seu.equipamento:8080
E teremos o resultado a seguir:
Estou trabalhando nas poucas horas vagas em um projeto que consiste em uma imagem Linux baseada no openSUSE, que traz tudo pronto e funcionando de maneira eficaz e transparente.
Nesta imagem, pretendo inserir o GTK+3.8 para trabalhar com várias sessões do Browser e utilizar o servidor apartado. Em breve, novidades...
Porém, atualmente, para levantar múltiplas instâncias, pode-se configurar a porta 8080 para o comando "soffice --writer", a porta 8081 para o "soffice --calc" e assim por diante...
Para finalizar o artigo, para inserir uma senha no serviço, bastar criar um arquivo na pasta "~/.config/broadway.passwd" ou "$XDG_CONFIG_HOME/broadway.passwd", conforme o exemplo:
$ openssl passwd -1 > ~/.config/broadway.passwd**
Mais dicas sobre este assunto, disponibilizarei no meu blog:
Inteligência Coletiva « cabelovivaolinux.wordpress
Para finalizar, críticas e sugestões: cabelo[ at ]opensuse.org
Este artigo foi publicado originalmente no portal Viva o Linux
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários