O que há de novo para desenvolvedores
A plataforma GNOME 2.22 para desenvolvedores fornece uma base estável para desenvolvedores independentes de software criarem suas próprias aplicações. O GNOME e sua plataforma são licenciados de forma a permitir a criação tanto de software livre como de software proprietário, que rodem com base no GNOME.
As bibliotecas na plataforma GNOME têm garantia de serem estáveis - API e ABI - para o resto das séries 2.x. As bibliotecas no ambiente ("desktop") GNOME não têm esta garantia, mas a maioria se mantém estável de versão para versão.
- 6.1 GVFS e GIO
- 6.2 IDE Anjuta
6.1 GVFS e GIO
GVFS é um sistema de arquivos virtual (em espaço de usuário) com backends para protocolos como SFTP, FTP, DAV, SMB, ObexFTP, etc. O GVFS é o substituto do GNOME-VFS. Agora o GNOME-VFS é considerado obsoleto, e os desenvolvedores não devem usá-lo em novas aplicações.
O GVFS consiste em duas partes:
- GIO, uma nova biblioteca compartilhada que é parte da GLib e fornece a API para GVFS; e
- GVFS propriamente dito, que é um novo pacote contendo backends para vários tipos de sistemas de arquivos e protocolos, tais como SFTP, FTP, DAV, SMB e ObexFTP.
GVFS/GIO almeja ser um sistema de arquivos virtual moderno e fácil de usar. Seu objetivo é fornecer uma API que os desenvolvedores prefiram às chamadas POSIX padrão. Ao invés clonar a API de E/S POSIX, ele fornece uma interface de alto nível, centrada em documentos. Além de ler e escrever arquivos, GIO tem mecanismos para monitoramento de arquivos, E/S assíncrona e complementação de nomes de arquivos.
A forma como GVFS funciona é assim: ele executa um único processo principal (gvfsd), que fica de olho nas montagens atuais. Cada montagem roda em um processo separado (algumas montagens compartilham o mesmo processo, mas a maioria não). Os clientes se comunicam com os recursos remotos através de uma combinação de chamadas D-Bus e de um protocolo personalizado para os conteúdos dos arquivos. Mover os backends para processos separados minimiza o inchaço das dependências nas aplicações e torna o sistema como um todo mais robusto.
O GVFS também oferece um pontos de montagem FUSE em ~/.gvfs/ de forma que as pastas GVFS possam ser acessadas por aplicações legadas usando a E/S padrão POSIX.
Diferentemente do GNOME-VFS, as conexões no GVFS são permanentes. Isso significa que um usuário só precisa digitar sua senha uma única vez, e não a cada conexão sucessiva.
Com a migração para o GVFS, as montagens e execução de programas automáticas passaram a ser gerenciadas diretamente pelo Nautilus, e não mais pelo gnome-volume-manager.
A documentação está disponível online — tanto a API quanto guias de migração de POSIX e GNOME-VFS para GIO.
- 6.1.1 Regressões
6.1.1 Regressões
Ainda que o GVFS tenha corrigido muitos problemas que existiam no GNOME-VFS, existem algumas regressões de funcionalidades. Em especial, falta suporte às URL's fonts:// e themes://.
Estes problemas serão resolvidos o mais rápido possível. Existem também algumas aplicações que ainda precisam ser migradas para o GVFS. O estado dessa migração está documentado online.
6.2 IDE Anjuta
O IDE Anjuta agora faz parte da Suíte de Desenvolvimento GNOME. Anjuta é um IDE (ambiente de desenvolvimento integrado) que oferece muitas funcionalidades para desenvolvedores, tais como um depurador integrado, um editor de interfaces GLADE e uma interface para o Valgrind.
