Alban’s blog

September 25, 2007

Wiki, Google Docs et Abiword

Filed under: Uncategorized — alban @ 9:50 pm

Je viens de voir une publicité vidéo pour Google Docs vraiment bien faite depuis le blog d’Olivier. Google Docs répond à un vrai besoin: écrire un document à plusieurs. Voici comment je résume la situation:

  1. Les logiciels de bureautique lourds comme OpenOffice.org, KOffice ou GNOME-Office. Beaucoup de fonctionnalités mais très difficile de synchroniser les documents par email.
  2. Les wikis. Plus facile à synchroniser puisqu’il n’y a qu’une seule version: celle du serveur. Mais on perd beaucoup en fonctionnalités.
  3. Google Docs. Il tente d’assembler les avantages des logiciels de bureautique lourds et des wiki. La vidéo montre très bien les avantages. Ca supporte le OpenDocument, et il y a pas mal de fonctionnalités, même si ça reste du web. Mais c’est centralisé chez Google et ce n’est pas du Logiciel Libre.
  4. Imaginons une autre solution avec seulement les avantages!

Regardez du côté d’AbiCollab. C’est un plugin pour Abiword permettant d’éditer à plusieurs un document en temps réel, à l’aide de Jabber. J’ai fait une démo d’AbiCollab pour Toulibre:

Pour résumer, il faut configurer son compte Jabber dans Abiword (plus tard, Abiword devrait pouvoir utiliser Telepathy pour réutiliser la connexion Jabber du bureau et ne plus demander à l’utilisateur les détails inintéressants comme le login et mot de passe). Puis cliquer sur “Partager le document” dans le menu “Collaborer”. Ensuite, vos contacts peuvent voir votre document en cliquant sur “Documents disponibles”, toujours dans le menu “Collaborer”. C’est tout! Vous voyez votre curseur mais aussi celui de vos contacts, et vous voyez leurs modifications aussi rapidement que le permet votre réseau.

Cela pose bien quelques problèmes techniques mais AbiCollab explique comment ils sont résolus (enfin, c’est encore très instable).

Ce que je voudrais pour la suite, c’est que d’autres logiciels de bureautique utilisent la messagerie instantanée pour permettre l’édition collaborative. Il faut aussi qu’ils utilisent Telepathy et les tubes pour éviter à l’utilisateur de configurer sa messagerie instantanée dans chaque logiciel, pour partager la connexion au serveur de messagerie instantanée, et pour pouvoir utiliser plusieurs messageries instantanées différentes (Jabber pour Internet, Bonjour pour le réseau local). Il faudrait aussi standardiser le protocole de synchronisation pour que plusieurs logiciels utilisant OpenDocument puissent collaborer ensemble. Enfin, il faudrait que cela marche même quand l’initiateur du document coupe sa connexion Internet en utilisant la XEP-0049 XEP-0223 par exemple.

Oui, ça fait beaucoup de travail. Mais on a le droit de rêver, non?

September 23, 2007

Tester Telepathy sans être root

Filed under: Uncategorized — alban @ 10:42 pm

En règle générale sous GNU/Linux, il est tout à fait possible de compiler et de tester des logiciels sans être root. Il suffit pour cela de les compiler avec:

./configure –prefix=$HOME/prefix –datadir=$HOME/prefix/share

Dans le cas des logiciels Telepathy, il y a une difficulté supplémentaire car ils utilisent D-Bus. Il faut alors:

  1. Isoler la session de test des autres logiciels utilisant D-Bus
  2. Configurer D-Bus pour pour que l’activation automatique de D-Bus recherche les services dans le bon répertoire.

Isoler la session D-Bus est utile si vous utilisez un logiciel comme dbus-viewer ou kdbus pour observer les connexion, objets, interfaces, méthodes et signaux créés sur la session D-Bus. Cela vous évite d’être inondé d’informations de tous les logiciels qui utilisent D-Bus. De plus, vous pouvez utiliser en même temps une version stable de Telepathy et ne pas perturber vos conversations normales avec vos tests.

Créez un fichier session-telepathy.conf en prenant modèle sur /etc/dbus-1/session.conf. La seule modification à faire est la suivante:

-  <standard_session_servicedirs /> +  <servicedir>/home/user/prefix/share/dbus-1/services</servicedir>

Dans une console, lancez une nouvelle session D-Bus avec la commande:

$ dbus-daemon --config-file=session-telepathy.conf --print-address unix:abstract=/tmp/dbus-mE8IBzoPYU,guid=6776297e41bc1480b92b770046f6c187

Avant de lancer vos logiciels, affectez à la variable d’environnement DBUS_SESSION_BUS_ADDRESS la valeur indiquée par dbus-daemon afin de lancer vos logiciels sur la bonne session D-Bus:

export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-mE8IBzoPYU,guid=6776297e41bc1480b92b770046f6c187

Vous n’avez rien oublié? Hé si, il manque encore ceci:

export XDG_DATA_DIRS=$HOME/prefix/share/:/usr/share/

comme expliqué sur la page XDG Base Directory Specification. C’est utile pour trouver la liste des connection managers installés. Si vous ne le faites pas, cette liste sera recherchée dans les répertoires définis sur cette page. Il faut le faire sur la console où vous lancez vos applications, mais il peut être aussi nécessaire de le faire sur la console où tourne dbus-daemon car il peut lancer lui même des applications qui récupéreront ainsi la variable d’environnement par héritage.

September 21, 2007

Présentation de Jabber et Telepathy avec Toulibre (2)

Filed under: Uncategorized — alban @ 9:58 pm

Ma présentation Messagerie instantanée, Jabber et Telepathy est disponible sur la page Documents de Toulibre. J’ai mis une copie sur ce serveur au cas où:

September 12, 2007

Bash: la commande hash -r

Filed under: Uncategorized — alban @ 7:25 pm

A quoi sert la commande hash -r dans bash? A ceci:

# cat /sbin/toto #!/bin/bash echo toto # toto toto # mv /sbin/toto /usr/sbin/toto # toto bash: /sbin/toto: Aucun fichier ou répertoire de ce type # hash -r # toto toto #

Bash ne recherche pas votre programme dans $PATH à chaque fois. Il conserve en mémoire le chemin des programmes déjà exécutés. S’il ne trouve pas le chemin de la commande en mémoire, il recherche réellement dans tous les répertoires du $PATH. Mais si l’information est en mémoire, alors il utilise cette information en espérant ne pas se tromper. Il peut se tromper, comme dans cet exemple où il ne trouve plus le programme toto. Il se peut aussi que l’ordre de recherche dans le $PATH ne soit pas respecté.

Pour tcsh, c’est le même principe mais la commande à utiliser est rehash.

September 11, 2007

Présentation de Jabber et Telepathy avec Toulibre

Filed under: Uncategorized — alban @ 8:20 pm

«Après un été calme, l’activité de Toulibre reprend doucement», nous dit Thomas. Le 19 Septembre, je vais faire une présentation de Jabber, juste après celle de Bruno sur Kdenlive.

Au départ, je voulais faire une démonstration plutôt pour débutants afin de montrer comment utiliser Jabber en pratique et expliquer le principe des transports dans Jabber comme celui de MSN. Mais cela m’a donné l’occasion d’essayer Telepathy. A première vue, c’est assez compliqué. Il y a plein de logiciels qui gravitent autour, voici par exemple: DBus, Gabble, Salut, Tapioca, Galago, Mission Control, Empathy, Gaim/Pidgin, Decibel, Kopete, Inskape, Abiword, Jokosher.

Et donc finalement, j’ai plutôt envie d’insister sur Telepathy, et de montrer les possibilités que cela offre pour des développeurs. Je ne vais sans doute pas aller très loin dans les détails car je suis débutant aussi! Mais je peux faire une démo d’Abiword avec la fonctionnalité d’édition collaborative avec Jabber et expliquer comment ça marche.

Powered by WordPress