Novedades para los desarrolladores
La plataforma de desarrollo de GNOME 2.22 proporciona una base estable para que los desarrolladores de software independiente creen aplicaciones para terceras partes. GNOME y su plataforma están licenciados para permitir la creación, sobre GNOME, tanto de software propietario como libre.
Las bibliotecas de la Plataforma GNOME tienen garantizada la estabilidad de su API y de su ABI durante el resto de la serie de lanzamientos 2.x. Las bibliotecas del Escritorio GNOME no tienen esta garantía, pero la mayoría mantienen la consistencia de lanzamiento en lanzamiento.
- 6.1. GVFS y GIO
- 6.2. EID Anjuta
6.1. GVFS y GIO
GVFS es un sistema de archivos virtual en el espacio de usuario con «backends» para protocolos tales como SFTP, FTP, DAV, SMB y ObexFTP. GVFS es el reemplazo para GNOME-VFS. Ahora GNOME-VFS debería considerarse obsoleto y los desarrolladores no deberían usarlo en las nuevas aplicaciones.
GVF consta de dos partes:
- GIO, la nueva biblioteca compartida que es parte de GLib y proporciona la API para GVFS; y
- GVF en si es un paquete nuevo que contiene «backends» para varios tipos de sistemas de archivos y protocolos tales como SFTP, FTP, DAV, SMB y ObexFTP.
GVFS/GIO intenta proporcionar un sistema virtual de archivos moderno y fácil de usar. Su finalidad es proporcionar una API que los desarrolladores prefieran usar más que llamadas POSIX IO crudas. En lugar de clonar la API de POSIX IO, proporciona una interfaz de alto nivel y centrara en el documento. Así como facilidades para lectura y escritura de archivos, GIO proporciona características para monitorizar archivos, E/S asíncrona y completado de nombres.
GVFS trabaja ejecutando un demonio maestro único (gvfsd) que mantiene el seguimiento de los montajes GVFS actuales. Cada montaje se ejecuta en un demonio separado. (Algunos montajes comparten el proceso del demonio, pero la mayoría no.) Los clientes se comunican con los montajes a través de una combinación de llamadas D-Bus (sobre el bus de sesion y usando D-Bus punto-a-punto) y protocolos personalizados para los contenidos de archivo. Al mover los «backend» fuera del proceso se minimiza la hinchada dependencia para aplicaciones y hace el sistema entero más robusto.
GVFS también ofrece un punto de montaje FUSE en ~/.gvfs/ de tal forma que los montajes GVFS pueden usar aplicaciones obsoletas usando el estándar POSIX IO.
A diferencia de GNOME-VFS, las conexiones en GVFS perduran. Esto significa que el usuario sólo tiene que introducir su contraseña una vez, no una y otra vez para cada sucesiva conexión.
Con el cambio a GVFS, el montado y el arranque automáticos son gestionados directamente por Nautilus en vez de por gnome-volume-manager.
La documentación del API para usar GIO está disponible en línea junto con las guías de migración desde POSIX IO y GNOME-VFS a GIO.
- 6.1.1. Regresos
6.1.1. Regresos
Si bien es cierto que GVFS soluciona muchos problemas que existían previamente al usar GNOME-VFS, existen, aún, algunas regresiones de funcionalidad. La más crítica es la falta de las direcciones fonts:// y themes://.
Estos problemas se solucionaran tan pronto como sea posible. También hay algunas aplicaciones que aún no se han «portado» a GVFS. El estado del «porte» está documentado en linea.
6.2. EID Anjuta
Ahora el EID Anjuta es parte de la Suite de desarrollo de GNOME. Anjuta es un EID integrado en GNOME que ofrece muchas características para los desarrolladores, tales como un depurador integrado, un editor de IU Glade integrado y un interfaz Valgrind.
