Nouveautés pour les développeurs
La plate-forme de développement GNOME 2.22 fournit une base stable aux développeurs de logiciels pour créer des applications tierces. La licence de GNOME et de sa plate-forme permet à la fois la création de logiciels libres et de logiciels propriétaires fonctionnant sous GNOME.
Les bibliothèques de la plate-forme GNOME ont une garantie de rétro-compatibilité et de stabilité API et ABI pour toutes les versions 2.x de GNOME. Les bibliothèques GNOME qui ne font pas partie de la plate-forme n'ont pas cette garantie, mais la plupart d'entre elles gardent une compatibilité de version en version.
- VI.I. GVFS et GIO
- VI.II. EDI Anjuta
VI.I. GVFS et GIO
GVFS est un système de fichiers virtuel en espace utilisateur, avec des moteurs pour des protocoles comme SFTP, FTP, DAV, SMB, ObexFTP, etc. GVFS remplace GNOME-VFS. GNOME-VFS doit maintenant être considéré comme déconseillé et ne devrait plus être utilisé dans de nouvelles applications.
GVFS est composé de deux parties :
- GIO, une nouvelle bibliothèque partagée, partie intégrante de GLib, et qui fournit l'API pour GVFS ;
- et GVFS lui-même, un nouveau paquet contenant les moteurs pour de nombreux systèmes de fichiers et protocoles tels SFTP, FTP, DAV, SMB et ObexFTP.
GVFS/GIO vise à fournir un système de fichiers virtuel moderne et facile à utiliser. Son but est de fournir une API que les développeurs préfèrent aux appels E/S POSIX bruts. Plutôt que de reproduire l'API E/S POSIX, il fournit une interface de haut niveau, centrée sur les documents. En plus de la lecture et l'écriture des fichiers, GIO facilite la surveillance des fichiers, les appels E/S asynchrones et le complètement des fichiers.
GVFS fonctionne grâce à un démon maître unique (gvfsd) qui garde une trace des montages GVFS actuels. Chaque montage s'exécute dans un démon différent (certains montages partagent un démon, mais la plupart ne le font pas). Les clients conversent avec les montages via une combinaison d'appels D-Bus (sur le bus de session et en utilisant des appels D-Bus pair-à-pair) et un protocole personnalisé pour le contenu des fichiers. Déplacer les moteurs en dehors des processus minimise les dépendances lourdes pour les applications et rend l'ensemble du système plus robuste.
GVFS offre également un point de montage FUSE dans ~/.gvfs/ permettant ainsi aux montages GVFS d'être utilisés par les applications existantes utilisant les E/S POSIX standards.
Contrairement à GNOME-VFS, les connexions dans GVFS sont avec état. Cela signifie qu'un utilisateur n'a besoin de saisir son mot de passe qu'une seule fois, et non pas à chaque nouvelle connexion.
Avec le passage à GVFS, le montage et le démarrage automatique sont dorénavant gérés directement par Nautilus au lieu de gnome-volume-manager.
La documentation API pour utiliser GIO est disponible en ligne, au côté des guides de migration pour passer des E/S POSIX et de GNOME-VFS vers GIO.
- VI.I.I. Régressions
VI.I.I. Régressions
Bien que GVFS corrige de nombreux problèmes pré-existants résultant de l'utilisation de GNOME-VFS, il existe actuellement encore quelques régressions de fonctionnalités. Les plus notables sont le manque des cibles fonts:// et themes:// .
Ces problèmes seront corrigés dès que possible. Certaines applications doivent encore être portées vers GVFS. L'état actuel de ce portage est disponible en ligne.
VI.II. EDI Anjuta
L'environnement de développement intégré (EDI) Anjuta fait dorénavant partie de la suite de développement GNOME. Anjuta est un EDI intégré à GNOME qui offre de nombreuses fonctionnalités pour les développeurs, tels un logiciel de débogage, l'éditeur d'interface utilisateur Glade et une interface Valgrind.
