Présentation de GBirthday et appel à contribution

Posté par (page perso) . Édité par Davy Defaud. Modéré par Christophe Guilloux. Licence CC by-sa
Tags : aucun
24
13
sept.
2012
Gnome

GBirthday est un petit logiciel sans prétention, qui affiche une icône dans la zone de notification système pour signaler les anniversaires à souhaiter. Il présente une icône différente selon qu’on a un anniversaire à souhaiter aujourd’hui, bientôt ou pas du tout. Il peut importer‐exporter (au format .ics, pour ne pas réinventer la roue) sa liste d’anniversaires depuis/vers plusieurs formats :

Logo GBirthday

Il est disponible sous licence GPL v2 ou ultérieure. La suite de la dépêche vous donne quelques détails complémentaires sur cette petite application et sur l’appel à contribution de l’auteur.

NdM : Merci à jihele pour ses journaux sur le sujet. Il était temps de lui donner un peu plus de visibilité.

Quelques détails en images

Une image valant mille mots, vous constaterez sur la capture d’écran ci‐dessous, que c’est l’icône avec le « 1 » qui symbolise un calendrier accompagné d’un gâteau et sa bougie :

Capture d'écran

C’est aussi via cette zone de notification que l’utilisateur a accès à son menu de configuration (via un clic droit), et surtout à une liste déroulante des anniversaires à venir ou passés (via le clic gauche). Ce logiciel n’apporte pas grand chose à ceux qui sont satisfaits de leur solution intégrée de gestion de contacts et d’alarmes, mais elle offre aux autres une solution simple et légère, avec une intégration facile depuis des sources variées. Les nouveautés de la version 0.6.6 sont :

  • suppression de la dépendance historique à Evolution ;
  • exportation de la liste d’anniversaires au format .ics ;
  • amélioration générale de l’interface ;
  • correction de bogues.

Techniquement

GBirthday est prévu pour fonctionner avec un environnement GNOME ou XFCE. Cependant, il doit pouvoir marcher avec KDE, dans l’hypothèse où vous travaillez avec Evolution, Lightning ou Sunbird comme gestionnaire de contacts, ou si vous souhaitez utiliser une base de données. Il est écrit en Python et utilise GTK (PyGTK). Son code source est basé sur :

  • EvoBdayReminder.py, d’Axel Heim ;
  • pygtk-demo Status Icon de Nikos Kouremenos.

Appels à contribution

Seules les traductions en anglais, français et allemand sont complètes, mais l’auteur est ouvert à toute autre traduction.

Un utilisateur d’Ubuntu a aussi signalé qu’avec Unity, il faut désormais utiliser non plus la zone de notification, en voie d’obsolescence, mais les Application Indicators.

Titre de l'image

L’auteur de GBirthday, qui ne connaît pas et découvre cet environnement, n’éprouve pas un intérêt particulier à développer cette fonction, notamment car il n’utilise pas Unity, ni même Ubuntu. Il n’a donc pas les moyens de le faire correctement. Il a créé une demande de fonctionnalité sur SourceForge.

Si vous recherchez un exercice (un peu) utile pour apprendre à utiliser ces Application Indicators, cela vous intéressera peut‐être. Comme précisé plus haut, le langage utilisé est Python, et des bindings sont disponibles.

  • # PyGTK -> PyGI

    Posté par (page perso) . Évalué à 5.

    PyGTK est obsolète. Avec GObject Introspection et PyGI, les bindings pour Python des bibliothèques basées sur GObject (comme GTK+) se font de manière automatique.

    C'est intéressant de faire la migration, parce que je pense que PyGTK n'est plus maintenu.

    En tout cas je trouve que ce genre de programmes est intéressant. De plus en plus de personnes utilisent des services web comme Facebook ou autre pour ce genre de choses, alors que des applications font très bien l'affaire.

    « Un animal d'une atterrante stupidité : il est persuadé que si vous ne le voyez pas, il ne vous voit pas non plus » (H2G2)

    • [^] # Re: PyGTK -> PyGI

      Posté par . Évalué à 8.

      En tout cas je trouve que ce genre de programmes est intéressant.

      Moui. Mais en quoi n'importe quelle application de calendrier générique ne pourrait-elle pas répondre à ce besoin (se rappeler les anniversaires) ?

      • [^] # Re: PyGTK -> PyGI

        Posté par . Évalué à 6.

        Un élément de réponse est que l'existence d'une application dédiée permet simplement d'avoir l'idée de le faire.

    • [^] # Re: PyGTK -> PyGI

      Posté par . Évalué à 2.

      C'est une bonne remarque. (Je te pertinente au passage.)

      Le passage à PyGI ne motive sans doute personne puisque "pour l'instant ça fonctionne" (TM).

      Et puis j'ai déjà essayé, et j'ai eu des problèmes. J'en parle un peu dans ce journal.

      Mais dans le fond, je suis d'accord.

  • # Format BSD calendar

    Posté par (page perso) . Évalué à 9.

    Il serait utile de prendre en charge l'import-export au format BSD calendar(1). C'est assez simple, ça ressemble à ça, cf. le man pour plus de détails :

    12 juin   Fête à Toto
    
    
    • [^] # Re: Format BSD calendar

      Posté par . Évalué à 2.

      C'est standard ? Parce que le format iCalendar provient d'une RFC, ce qui a le mérite d'être standardisé.

      Article Quarante-Deux : Toute personne dépassant un kilomètre de haut doit quitter le Tribunal. -- Le Roi de Cœur

    • [^] # Re: Format BSD calendar

      Posté par . Évalué à 4.

      Je ne connais pas. Si c'est un truc de geeks, peut-être qu'il s'en trouvera un qui aura envie de faire vite fait un backend…

      Le mode de développement (cf. ce commentaire), c'est un peu "j'ai besoin, je développe, c'est intégré".

  • # Shell & Contacts

    Posté par (page perso) . Évalué à 2.

    Est-ce prévu d'intégrer ça dans le calendrier du shell ? À mon avis, une petite extension piochant dans Contacts les dates d'anniversaires et les transposant en évènement dans l'agenda ferai l'affaire !

    • [^] # Re: Shell & Contacts

      Posté par (page perso) . Évalué à 2.

      Qu'est-ce que c'est que ça, le calendrier du shell ?

    • [^] # Re: Shell & Contacts

      Posté par (page perso) . Évalué à 2.

      Est-ce prévu d'intégrer ça dans le calendrier du shell ?

      Cette phrase n'a pas de sens :)

      • Gnome-Shell, il me semble, ne supporte plus Xembed pour ses applications
      • Le calendrier du shell est en js
      • Cela existe surement déjà dans le calendrier du shell avec les anniversaires d'Evolution, non?
      • [^] # Re: Shell & Contacts

        Posté par (page perso) . Évalué à 10.

        Non mais vous désignez sérieusement de GNOME Shell quand vous parlez « du shell » ? Il va falloir perdre cette habitude, parce qu'on ne va plus rien comprendre sinon…

    • [^] # Re: Shell & Contacts

      Posté par . Évalué à 2.

      Je ne suis pas sûr de comprendre (cf. remarque Tanguy sur ambiguïté shell, peut-être que Gnome peut encore déposer un brevet sur le mot Shell, pour clarifier les échanges futurs…).

      En tout cas (voir ici), rien n'est prévu.

      Je ne sais pas si les utilisateurs d'une solution toute intégrée genre Gnome-Evolution-… y verraient un grand intérêt et je pense que les développeurs de ces solutions pourraient leur ajouter des fonctionnalités si le besoin existe.

  • # Précisions / suppléments

    Posté par . Évalué à 5.

    Merci Florent pour la dépêche.

    ICS

    Petite correction : ics n'est disponible qu'en export. L'idée est de générer un fichier .ics qui peut être sourcé dans un calendrier tiers pour affichage et éventuellement alarmes, par exemple chez moi dans Orage (Xfce). J'ai ajouté la possibilité de mettre des champs personnalisés parce que par exemple Orage utilise des champs à lui pour définir le mode de notification des alarmes, par exemple.

    (Attention, l'alarme créée déclenche un bug d'Orage <= 4.8.3.1 dont la correction n'est peut-être pas encore intégrée dans toutes les distributions. Rassurez-vous c'est intégré dans Debian Wheezy.)

    Pourquoi gbirthday

    Pour la petite histoire, j'ai commencé à regarder vers gbirthday parce que j'oubliais trop d'anniversaires, et je n'étais pas enchanté par les systèmes tout-en-un. Chez moi c'est Xfce, et je n'arrivais pas à faire fonctionner les alarmes d'Orage. D'une manière générale, je n'utilise pas trop Orage pour m'organiser.

    Et surtout, les anniversaires ont quelque chose de spécifique. Je veux les voir à l'avance (penser à un cadeau ?), savoir quand ça se rapproche (et si je n'étais pas là le jour même ?) et éventuellement quand c'est passé. Ce n'est pas tout à fait pareil qu'un rendez-vous ordinaire (ça se discute, surtout un vendredi, mais c'est mon expérience utilisateur).

    Je comprends tout à fait que les utilisateurs d'environnement où tout est intégré ne voient pas trop l'intérêt. J'avais hésité à une époque à modifier Orage au lieu d'utiliser gbirthday, mais ça me semblait plus compliqué.

    Le développement

    gbirthday est un truc tout petit, à côté. C'est, je crois, un gars qui est parti de l'exemple de GtkStatusIcon pour afficher les anniversaires depuis évolution, puis un autre qui a ajouté le support pour une autre source, etc.

    Il n'y a pas de développement de prévu pour le futur. Certains anciens développeurs ne l'utilisent plus. Les autres sont contents de l'état actuel.

    Mais rien n'empêche quiconque de proposer une fonctionnalité supplémentaire, un backend, etc. C'est le sens de mon appel pour l'Application Indicator, et les autres contributions sont aussi bienvenues.

    L'API pour les backends n'est pas documentée, mais ça ne doit pas être trop dur à comprendre.

    Côté architecture, c'est pour des raisons historiques assez rustiné, donc il ne faut pas s'étonner si par moment c'est inutilement tordu…

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.