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.


LibreOffice em nuvem - Crie seu servidor Web Office

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:

Partindo do código fonte

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

Modo fácil

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".

Iniciando o servidor LibreOffice Web

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:

Conclusão

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...

Dicas

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

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Alessandro de Oliveira Faria