xbright’s world

« Wikipédia est une œuvre du seigneur jesus, qui es-tu pour contredire ses actes ? » ~ fluo★

 

Bluemindo 0.2.1

Ce billet s'adresse à tout ceux qui ont pris le temps de tester la version 0.2 de Bluemindo ou aux autres, d'ailleurs. En effet, je viens de mettre en ligne la nouvelle version, la 0.2.1. Cette version apporte son petit lot de nouveautés et surtout, plein de bugs plus ou moins graves fixés.

Au sommaire des nouveautés :

  • Ajout de la traduction complète du logiciel en Slovaque (en plus du Français et de l'Anglais)
  • Ajout d'un Makefile, d'un .desktop et tout le tralala pour pouvoir installer Bluemindo simplement
  • Ajout d'un système de gestions de plugins
  • Ajout d'un plugin qui change le message de statut avec la musique que l'on écoute (ne marche qu'avec Gajim)
  • Ajout de trois nouvelles commandes, --volume, --current-cover et --current-lyrics
  • Affichage de la chanson en cours dans la playlist en gras

De même, de nombreux bugs ont été corrigés (grâce à ceux rapporté sur le tracker ou en privé). Si vous aviez des bugs embêtants en rapport avec les éléments suivants, sachez qu'ils sont corrigés :

  • &, < et > dans les cellules
  • nouvelle API de GNOME pour les touches multimédia
  • récupération d'informations sur les artistes
  • si un module ne peut pas être chargé, Bluemindo quittera
  • unicode
  • les boutons lecture, suivant, précédent et stop
  • l'internationalisation (fr_FR, c'était pas très gentil pour les suisses)
  • notifications de bureau
  • popup d'affichage de la pochette d'un album
  • classement par colonnes

Les améliorations de cette nouvelle version sont principalement sous le capot et il y a vraiment très peu de choses « graphiques » qui changent, c'est pourquoi je n'ai pas fait de nouvelles copies d'écran. Cependant, on peut dire que c'est vraiment plus agréable de l'utiliser, avec tous ces bugs corrigés (même si griffin peut en trouver des marrants in-reproductibles toutes les 5 minutes :o).

Merci donc à tous les contributeurs qui m'ont bien aidé, dont la liste est sur le dépôt subversion. Ils ont apporté un coup de main au niveau du code, des traductions ou du logo (merci terr1en, si tu me lis et que tu vis encore \o_). Et un petit merci aussi à ceux qui ont rapporté des bugs tout comme à Devil505 qui nous concocte un FrugalBuild, à elghinn qui a intégré le support de Bluemindo dans le plugin MusicActionButtonBox de Pycawm, ou à MsieurHappy qui a bien intérêt de nous concocter un pkgbuild (sinon, je le tue ! :o).

Télécharger et installer Bluemindo

Vous devez récupérer bluemindo-0.2.1.tar.gz.
Ensuite, après avoir extrait le contenu de l'archive, il suffit d'installer les dépendances (listées dans le fichier INSTALL) et de lancer (en tant que root) l'installation : make install. Si vous ne voulez pas l'installer mais juste l'essayer (malheureux !), lancez-le juste via : ./launch.sh.

Vous pouvez aussi récupérer Bluemindo depuis le dépôt Subversion, ce qui donnera :
svn export http://svn.codingteam.net/code/bluemindo/tags/0.2.1 bluemindo Ou bien, pour utiliser la version de développement :
svn checkout http://svn.codingteam.net/code/bluemindo/trunk bluemindo

Pour tout ceux qui sont intéressés par ce système de gestion de plugins, voici un exemple de plugin très basique. On sait jamais que vous voudriez apporter votre pierre ou tout simplement étendre les fonctionnalités du lecteur pour votre usage personnel.

class Exampleplugin:
    def __init__(self, plugin):
        self.plugin = {'name': 'Exampleplugin',
                       'version': 0.1,
                       'logo': None,
                       'configurable': False,
                       'authors': 'John Doe <john@doe.net>',
                       'license': 'GNU General Public License 3',
                       'description': 'Show the title of the new song.'}

        plugin.connect('OnPlayNewSong', self.handler_play_new_song)

    def handler_play_new_song(self, song):
        print song[1]
Comme on peut le voir, ici, le plugin se connecte au signal OnPlayNewSong et affiche le titre de chaque nouvelle chanson lancée. Pour le faire fonctionner, il faudra alors créer un dossier exampleplugin dans src/plugins (peut-être qu'il serait intéressant de créer un autre répertoire où les plugins seraient chargés dans le dossier de l'utilisateur). Ce dossier contiendra le code donné plus haut dans un __init__.py. Si vous voulez ajouter une interface de configuration à votre plugin, c'est très simple, il suffit de changer 'configurable': False, en 'configurable': True, et de se connecter aux signaux OnModuleConfiguration et OnModuleConfigurationSave. La liste des signaux disponibles se trouve au début du fichier qui s'occupe de gérer les modules et les extensions dans Bluemindo.
Plus d'informations au niveau de la création de plugins seront bientôt disponibles sur le wiki de Bluemindo (il y aura un beau tir groupé d'ici quelques temps, avec plein de nouveautés un peu partout).

PS : Je pense que je peux me le permettre : à chaque fois que vous lancerez Bluemindo, des ninjas sur-entrainés planterons des arbres sans OGM. Je vous laisse conclure par vous même qu'utiliser Bluemindo c'est bon pour la planète (eh oui, je ne peux pas m'empêcher de ne pas être constructif).

Publié le dimanche 22 juin 2008, 22:05 par xbright | 10 commentaires
Tags : biquette bière Bluemindo logiciel libre Planet Python
 

Nouvelle version de Bluemindo ! Sortie de la 0.2

Une trentaine de révisions après le lancement du projet, la 0.2 est de sortie !
Cette deuxième version apporte plein de nouveautés et de fonctionnalités intéressantes ainsi que de nombreux bugs fixés. Pour les personnes qui m'avait fait remarqué qu'il était désagréable de ne pouvoir l'utiliser qu'en anglais, sachez que la version française a été ajoutée, elle se chargera automatiquement si votre système est en français.

Voici, une liste des nouvelles fonctionnalités apportées par cette nouvelle version :

  • 4 modes de vue
    1. Léger : affichage de la liste de lecture uniquement (convient pour les petites collections ou pour les listes de lectures)
    2. Basique : affichage de la liste de lecture ainsi que d'une arborescence artiste > albums > chansons (mode original de Bluemindo)
    3. Normal : affichage de la liste de lecture ainsi que d'une liste d'artistes et une liste d'albums (mode que l'on retrouve dans la plupart des lecteurs)
    4. Complet : affichage de la liste de lecture, des listes sauvegardées, des artistes avec une image les décrivant, un clic sur un artiste provoque l'affichage des pochettes de ses albums (mode très intuitif, qu'on voit d'ailleurs sur la droite)
  • Des fonctionnalités supplémentaires activables ou non :
    • téléchargement d'une image représentant l'artiste via Last.fm (uniquement en mode complet)
    • téléchargement de la pochette de l'album via Amazon
    • téléchargement des paroles de la chanson en cours, 3 serveurs sont gérés
    • envoie des notifications d'écoute sur votre profil Last.fm
    • envoie des notifications d'écoute sur Jabber, via PEP
    • changement du titre de la fenêtre pour afficher la chanson en cours
    • affichage de notifications d'écoute sur votre bureau

De plus, il est intéressant de noter que cette nouvelle version propose encore plus de nouveautés telles que la possibilité de n'afficher que le lecteur (affichage compact) ou bien toute l'interface et aussi la possibilité de mettre Bluemindo en plein-écran.
Autre nouveauté intéressante, le support complet des listes de lecture m3u/m3u8 que vous pouvez alors importer, exporter, créer, supprimer ou modifier (ajout/suppression de titres). De même, vous pouvez aussi choisir les colonnes à afficher dans la liste de lecture, afin de ne pas afficher les informations qui ne vous intéresseraient pas. Enfin, la possibilité de filtrer votre liste de lecture par titre, album ou artiste est un plus non négligeable, pour les grosses listes ou pour l'utilisation du mode léger.

Notons aussi la possibilité de gérer Bluemindo en ligne de commande, comme en témoigne ceci :

./bluemindo.py --help
Bluemindo  Copyright (C) 2007-2008  Erwan Briand
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to
redistribute it under certain conditions.

Utilisation : bluemindo.py [options]

Options disponibles:
--reload            Recharger les chansons de votre dossier musical
--current            Afficher l'artiste et le titre de la chanson en cours
--playpause, --play, --pause    Lire ou mettre en pause une chanson
--stop                Stopper une chanson
--previous            Aller à la précédente chanson dans la liste de lecture
--next                Aller à la suivante chanson dans la liste de lecture
--volume-more [STEP]        Augmenter le volume, vous pouvez spécifier un pas (0 > 100)
--volume-less [STEP]        Diminuer le volume, vous pouvez spécifier un pas (0 > 100)
--volume=VOLUME            Régler le volume: 0 > 100
--quit, --plunge        Quitter Bluemindo

Pleins de copies d'écran sont disponibles sur cette page, dont voici quelques unes :
   

Du lecteur simpliste et peu développé, Bluemindo se déplace vers le créneau du logiciel polyvalent, s'adaptant aux gouts de l'utilisateur et gagnant chaque jour, des fonctionnalités.

Pour installer Bluemindo, vous devez avoir toutes les dépendances listées dans le fichier README, à savoir : python, python-gtk2, python-glade2, python-gst0.10, python-tagpy et python-notify. De même, si votre version de Python est inférieure à la 2.5 (ce qui est fort probable), vous devez aussi installer les paquets : python-pysqlite2 et python-elementtree. Enfin, pour bénéficier d'encore plus de fonctionnalités (gérer Bluemindo depuis votre clavier via les touches multimédia ou envoyer des notifications sur votre compte Jabber), vous devez installez ces dépendances : python-dbus et python-xmpp. Tous ces paquets sont normalement disponibles dans votre distribution (à part python-tagpy qui semble poser problème pour certaines d'entre elles comme en témoigne ce rapport de bug).
Ensuite, vous pouvez vous rendre sur la page de téléchargement de Bluemindo afin de récupérer la dernière version (0.2). De même, certains d'entre vous peuvent être intéresés par le dépôt SVN, disponible à cette adresse et consultable (historiques, versions...) ici.

Pour la suite, il est plus ou moins prévu d'intégrer les statistiques d'écoute, la lecture depuis différentes sources (CDs audios, clefs USB, webradios...). Ou peut-être complètement autre chose, n'hésitez pas à proposer si vous avez des idées. Concernant les possibles bugs (ce n'est qu'une 0.2), merci d'utiliser cette page.

Enfin, merci aux contributeurs listés dans le THANKS qui ont apporté de l'aide, du code ou un très beau logo. Et merci aussi aux testeurs de cette version, qui ont fait remonter des bugs et qui m'ont permis d'en corriger à la dernière minute, que sont LubomirR, fluo★, P'tit FR[e]D et MsieurHappy.

Publié le mardi 27 mai 2008, 19:03 par xbright | 4 commentaires
Tags : biquette bière Bluemindo logiciel libre Planet Python
 

Intégration de Jabber dans Bluemindo et autres nouveautés croustillantes

La version de développement de Bluemindo a bien avancé depuis la 0.1, j'ai fait pas mal de corrections de bugs et j'ai aussi ajouté des fonctionnalités intéressantes.

La dernière en date est l'intégration de Jabber : en effet, Bluemindo est maintenant capable de se connecter à votre compte Jabber quand vous l'allumez et d'envoyer des notifications via PEP (Personal Eventing via Pubsub) à chaque nouvelle chanson jouée (le support est minime et sûrement améliorable mais il a le mérite d'exister O:-)).

Aussi, Bluemindo est utilisable maintenant en deux modes d'exploration : le premier est le basique, qu'on peut voir sur la capture d'écran de ce billet et le deuxième, nouveau et plus conventionnel donne ce qu'on a sur la gauche. C'est quelque chose qu'on retrouve dans beaucoup de lecteurs audios, on choisit un artiste, puis un album et enfin une chanson. Notons quand même qu'aucun mode ne sera supprimé, les deux ont leurs adeptes et les deux resteront dans Bluemindo (si tant est qu'il y ait réellement des utilisateurs de Bluemindo à part moi).

Pour ce qui est de l'intégration de Jabber, donc, voici une copie d'écran de la configuration du compte :

Ensuite, pour terminer ce petit guide en image des nouveautés sympathiques dans Bluemindo, voici une dernière copie d'écran représentant une interaction entre un certain bousintesting via Bluemindo et moi, via Gajim (je me suis d'ailleurs bien amusé à flouter mes contacts) !

Voilà donc un petit éventail des dernières nouveautés de Bluemindo. N'hésitez pas à faire remonter vos remarques afin d'améliorer ce petit logiciel et de me permettre de l'améliorer ! Pour rapporter des bugs, voici l'endroit où aller, et sinon, vous pouvez carrément me contacter (on devrait pouvoir se croiser entre deux « sessions » Random Chat). Si vous êtes allergique à l'anglais, sachez que je traduirai bientôt le logiciel en français (et ça sera d'ailleurs peut-être l'occasion de sortir une petite 0.2 ou 0.1.1 ou un truc du genre).

C'est sûr que pour le moment, Bluemindo étant un projet naissant et ayant encore quelques petits bugs à corriger, ce n'est peut être pas _le_ meilleur choix pour utiliser un lecteur audio. Mais, il bénéficie de plusieurs avantages, notamment sa simplicité (ce qui n'empêche pas qu'il y ait deux-trois options sympas) ! En tout cas, n'hésitez pas à l'installer, ne serait-ce que pour le tester ! Voici l'adresse du dépôt Subversion : http://svn.codingteam.net/code/bluemindo/trunk

De plus, j'en profite pour présenter au monde entier de mes lecteurs (comprendre : quatre ou cinq péquenauds) la proposition dessinée de terr1en qu'il m'avait fait avant de disparaitre mystérieusement, un peu comme MsieurHappy :
J'avouerai que tout ça reste un peu flou pour moi (même plusieurs semaines après !), mais si des gens ont des idées en voyant cette illustration sur comment réaliser ça, je suis preneur. Je me demande d'ailleurs si les notifications via PEP ne seraient pas à la base de ce schéma (le fameux « B* → Gajim »).

Et en plus, avec ce billet, je prouve bien à un ou deux trolleurs que ce blog peut vivre avec des billets réguliers. Si si.
Publié le vendredi 16 mai 2008, 19:03 par xbright | 12 commentaires
Tags : Bluemindo Jabber logiciel libre Planet Python
 

Bluemindo 0.1 \o/

Et voilà un billet joyeux pour vous annoncer la sortie de la première version (comprendre que c'est pas stable, qu'il y a des bugs que j'ai pas trouvé, que certaine parties du code seront peut être réécrites mais que c'est plus qu'utilisable !) de Bluemindo, un petit projet que j'ai lancé ce mois ci et qui m'a permis de toucher un peu à GStreamer, tagpy et à deux trois autres choses intéressantes. Il s'agit en fait d'un lecteur audio, une petite Jukebox.


C'est un logiciel écrit en Python et qui requiert python-gtk2, python-glade2, python-gst0.10, python-tagpy, python-notify et optionnellement python-dbus pour gérer les touches multimédia du clavier (tout est détaillé dans le README).

Bien entendu, il est libre, sous GPLv3 et le projet peut être suivi à cette adresse : http://bluemindo.codingteam.net !

Téléchargez la à cette adresse. Une fois votre archive extraire, vous n'avez plus qu'à aller dans le répertoire src/ et à exécuter bluemindo.py, rien de bien méchant (pensez à installer les dépendances avant) ou bien utilisez le launch.sh pour vos lanceur d'applications.

Pour ceux qui préfèrent subversion, faites (en sachant que cette version ne sera pas suivie, pour avoir des mises à jour, je vous conseille le trunk) :
svn co http://svn.codingteam.net/code/bluemindo/tags/0.1


(voilà un aperçu,vous remarquerez que la « barre de seek » n'est gérée sur la copie d'écran mais depuis la prise de ce screenshot, elle l'est - et c'est bien pratique)

Je me suis en fait inspiré de la présentation de Decibel Audio Player (j'avais récupéré les sources de projet et j'avais commencé quelques modifications dessus mais en fait, pour le plaisir de réinventer la roue :-)). Bluemindo est capable de :

  • se loger dans la zone de notification (pour pouvoir fermer sa fenêtre sans quitter Bluemindo)
  • d'importer toute la musique du dossier de votre choix (et des sous dossiers bien entendu...), notez que pour améliorer la rapidité d'ouverture, vous pouvez désactiver l'importation au lancement (il y a un menu pour actualiser la base)
  • de sauvegarder votre playlist en quittant
  • d'afficher de jolies notifications sur votre bureau, que vous pouvez entièrement configurer
  • de télécharger les paroles de la chanson que vous écoutez (gère actuellement 3 serveurs), vous pouvez aussi modifiez les paroles et sauvegarder vos modifications d'un clic !
  • de télécharger la pochette du CD que vous écoutez, si aucune pochette n'est trouvée, vous pouvez en spécifier une manuellement !
  • d'envoyer vos notifications d'écoutes sur Last.fm
  • Bluemindo ne va pas écrire ses fichiers n'importe où ! Les fichiers de configurations sont dans .config/bluemindo et les données sont dans .local/share/bluemindo (lisez ça)
Je pense que c'est un bon début !
Voici une petite liste non exhaustive de ce que je prévois d'implémenter pour la 0.2 (mon bêta testeur m'a assaillit) :
  • possiblité de « switcher » entre le mode actuel orienté playlist et un mode orienté exploration, à la Rhythmbox (avec recherche...) (fait dans la SVN \o/)
  • gérer la fin de la chanson (en fonction du mode repeat, que la playlist soit vide...)
  • meilleure gestion des préférences, ce qui impliquera de ne pas avoir à relancer Bluemindo pour quelques modifications
  • possibilité d'explorer la bibliothèque toute entière plutôt que par artiste ou album
  • possibilité de classer la playlist par titre, artiste, album, durée ou piste plutôt que par piste (fait dans la SVN \o/)
  • ajouter la pochette sur les notifications à la place de l'image d'information (fait dans la SVN \o/)
  • possibilité de supprimer, réorganiser et ajouter des chansons dans la playlist via drag'n'drop
  • possibilité de lire une chanson sans l'ajouter à la playlist (fait dans la SVN \o/)
  • apparition de la notification au survol de l'icone de la zone de notification (impossible via PyGTK)
N'hésitez pas vous aussi à faire vos propositions, ça me permettra d'améliorer ce logiciel !
(Si quelqu'un insiste pour m'envoyer des patchs, je finirai par céder :-D)

Au final, merci à terr1en pour son très joli logo (comme quoi, ça existe des graphistes qui pondent des jolis trucs sous GPL, j'en connais 2 \o/), à MsieurHappy pour son coup de pouce au niveau du module « explorer » et à jijipowa pour son bêta test en pleine fête. En espérant qu'il y aura quelques testeurs pour me rapporter les bugs et me proposer des améliorations :-)

Publié le mardi 25 décembre 2007, 00:32 par xbright | 17 commentaires
Tags : bière Bluemindo logiciel libre Planet Python