didrocks' blog

apt-get install -f cerveau

Aller au contenu | Aller au menu | Aller à la recherche

mercredi 28 juillet 2010

En direct du Guadec (GNOME developers conference) après une semaine d'ubuntu Sprint

En fait, tout est dans le titre :)

La semaine dernière, j'étais à Prague pour le distro sprint… enfin distro rally maintenant[1] où les employés de Canonical travaillant sur ubuntu se retrouvent pour une semaine de bière travail. :) Malgré une tentative d'assassinat de Robert Ancell (développeur de gcalctool, également membre de la desktop team) lors d'une soirée de kart où il a sauté sur le mien[2] tout s'est bien passé et beaucoup de progrès et de nouvelles features arrivent pour l'alpha3. Je ne vais pas les détailler ici, vous les verrez bien assez tôt ;)

De Prague, nous nous sommes envolés pour Amsterdam, puis pris le train pour la Haye, où le GUADEC (rencontre des développeurs GNOME) bat son plein.

J'essaierais de détailler un peu plus si le temps (et la connexion Internet) le permet, mais en attendant, voici quelques photos:

Bannière Guadec Travail Guadec

Ceux qui me connaissent me reconnaitront en train de travailler activement pendant une discussion avec les développeurs de Shotwell qui sera très certainement l'outil de visionnage par défaut d'Ubuntu 10.10(.10). Pour information, c'est déjà le cas pour la version netbook (UNE).

Notes

[1] on va de plus en plus vite !

[2] dommage qu'il n'y ait pas eu de photo, vous auriez vu les deux karts l'un sur l'autre !

dimanche 11 juillet 2010

De retour des RMLL 2010… (enfin, depuis le train :))

Ubuntu-fr tenait un stand ainsi qu'une install party lors des RMLL 2010. Une fois de plus, je vois cet évènement plus comme un évènement social que technique, et les retours et échanges humains[1] ont rendu la chaleur de Bordeaux supportable. :)

J'ai moi-même donné deux conférences (une sur bughugger qui a failli à cause d'une connexion Internet douteuse) et une sur Quickly qui ont, je pense, touchées leur public.

En plus de rencontrer des veilles connaissances[2] comme Vincent Untz, Frédéric Peters, framasoft[3] le CA de l'April, fedora, mandriva, opensuse, et bien entendu toute la clique ubuntu-fr, j'ai eu le plaisir de faire connaissance avec ubuntu-lyon et quelques nouvelles têtes du TCT[4]. Merci à eux pour les bons moments partagés[5]!

Bref, il est temps de rentrer avant une semaine de travail chargée.

PS: Évidemment, nous avons enfin pu profiter d'une glace ensemble pour terminer les RMLL en beauté !

Notes

[1] et surtout les soirées !

[2] preuve que cet évènement est très très mal fréquenté ;)

[3] pyg, tu as eu ton vol au fait, encore mal à la tête ?

[4] ou TdCT,au choix. Pas de polémique.

[5] Sauf quand on me pique ma bière, pendant que mon attention était fourbement détournée sur une question technique. ;)

lundi 5 juillet 2010

Libre Software Meeting 2010

From tomorrow, I’ll be too present at Libre Software Meeting in Bordeaux! There will be some conferences there which cover all the aspects of free and open source software, from the technical details to the educational and political aspects as well. There is as well a village composed from all French organization about Free Software promotion and advocates.

I’ll be giving two presentations. One in English about "Client to deal with great amount of bug for Launchpad: BugHugger" on Wednesday, 2:40 PM and another one (in French) on "Accelerated development with Quickly", Thursday 3:20 PM. Most of the time of this week (until Sunday), I'll be at ubuntu-fr booth. Please join if you can !

vendredi 11 juin 2010

Simple Comme Ubuntu, my CC:BY-SA book has now 4 years!

Time to celebrate, it's been now 4 years that I released the first version of my French book "Simple Comme Ubuntu" (which can be translated in "Easy As Ubuntu") focused on newcomers. This book tries to help them step by step in discovering the ubuntu environment (no command line, just graphical installation) through 350 pages, so that they can be more confident with their new operating system.

Simple Comme Ubuntu

This book, under CC:BY-SA, is now at his 9th version[1] (updated every 6 months as with Ubuntu releases). It's available in LaTeX sources, pdf format as well as a paper version. Release by release, I was able to make it out closer to the ubuntu release date, and from the last 2 years, the book was out less than 7 days after the release! For instance, the lucid version was announced the 4th of May 2010!

To fully follow the Free Software philosophy, the Launchpad project is here, and the book is versionned in bzr. Also, for a year now, "Simple Comme Ubuntu" is in the ubuntu repo (just install the "simplecommeubuntu" package) and you will be able to find it at /usr/share/doc/simplecommeubuntu/. The French community downloaded the book a lot, and we sold also some thousands of paper version too. This one is now on the front page of the French documentation wiki and we install it by default on the ubuntu-fr (French) CD remix to help newcomers (coming from the Windows world most of the time) to have the documentation and the Operating System (it's a shortcut on the desktop).

lucid CD cover

This book was the 2nd one of the framabook project, French project trying to build a collection of Free books (started in 2006) and we got some good press coverage in national newspapers. liberation coverage

Updating it so frequently by one person is a tedious task, I must admit, but I want first to thanks again all people who prereads and fixes my spelling mystake all over the years. Some people are reading it from the first version[2] and they really deserve a big thank for their patience! My editor, In Libro Veritas, made also a wonderful work on the cover (would be great to make some wallpaper with the different covers we had), and also to the French community for their support during those years!

Next version will be Maverick "Simple Comme Ubuntu", a lot of changes are already in place! covart lucid

Notes

[1] Dapper, Edgy, Feisty, Gusty, Hardy, Intrepid, Jaunty, Karmic, Lucid :)

[2] it was first just an enhanced version of some blog postd under CC:BY-SA of yeKcim

vendredi 4 juin 2010

kinouchou: "Accessibilité: ma modeste contribution"

Note: Je transmets juste la note du blog de kinouchou à sa demande pour le syndiquer sur différents planets

Depuis décembre 2009, je fais partie du groupe accessibilité et logiciel libre de l'April (association francophone de promotion et de défense du logiciel libre). J'ai commencé ensuite à m'intéresser au groupe accessibilité d'ubuntu. Pourquoi avoir commencé par l'April alors que je m'occupe beaucoup d'ubuntu me direz-vous? Tout simplement parce que ce groupe est francophone, et que moi et l'anglais c'est un peu difficile, et, mes connaissances actuelles en accessibilité étant assez limitées, le groupe francophone me suffit.

Le but du groupe n'est surtout pas de créer des logiciels, mais de faire connaitre ceux qui existent et de mettre en relation les besoins avec les personne pouvant apporter une solution. Et là, participer à plein d'événements pour ubuntu-fr est un vrai point fort. C'est comme ça que des personnes de Fédora ou OpenOffice.org nous ont rejointes.

Du côté ubuntu, le groupe, qui était au point mort, reprenait vie. L'UDS (semaine de développement d'ubuntu) fut l'occasion de rencontrer certaines personnes du groupe et de connaitre ses grands axes. Trois réunions concernaient l'accessibilité: l'une sur GNOME, qui fut bien trop technique pour moi, je ferai donc l'impasse dessus pour l'instant. Une autre était sur comment donner une seconde vie au groupe. La troisième - celle qui m'intéresse aujourd'hui - était conjointe avec le groupe design. Durant cette réunion, nous souhaitons faire un thème qui corresponde aux besoins et envies des personnes handicapées selon chaque type de handicap, et, pour cela, nous avons pensé faire un sondage.

De nombreuses réponses sont nécessaires pour que ce sondage soit pertinent. J'ai donc proposé de le propager en France et dans les pays francophones grâce au groupe accessibilité de l'April. Le sondage n'ayant pas pour but de se limiter à ubuntu mais aux Logiciels Libres en général, il répond aux objectifs de l'April, et pourra donc, au travers du groupe, être propagé aux autres communautés. Nous voulons finir ce document pour la fin juin, afin de pouvoir le diffuser lors des Rencontres Mondiales du Logiciel Libre, qui auront lieu à Bordeaux, du 6 au 11 juillet. L'un des deux thèmes de cette édition étant l'accessibilité, il serait dommage de ne pas en profiter.

Ubuntu-fr et la fondation Mozilla étant souvent en relation c'est tout naturellement que j'ai souhaité les inclure dans cette démarche. Lorsque le sondage sera prêt ils pourront le traduire dans d'autres langues. Le travail dans les deux groupes peut donc se mêler et contribuer l'un à l'autre ce qui pour moi est l'un des points important du Logiciel Libre.

kinouchou: "Accessibility: my humble contribution"

Note: I'm forwarding this note as asked by kinouchou to publish it on planet ubuntu (original note there, I didn't translate it either).

Since December 2009, I have joined the accessibility and free software group at APRIL (Association Promoting and protecting Free Software in France). I only later started to be interested by the Ubuntu Accessibility team. Why have I started with APRIL, even though I spend most of my time caring about Ubuntu, will you ask? Simply because this group is using french, and my english is really not that good (don't trust this note, it was translated by a friend), and, my current knowledge of accessibility being relatively limited, I tend not multiply difficulties.

The main goal of this group is absolutely not to develop software, but to know what software solutions exist and to match up those who may need it with those able to make the changes that could be needed. Then, the fact that I am joining so many event on behalf of Ubuntu-fr becomes a true asset. This is how people from the Fedora or OpenOffice.org are now joining us.

On the Ubuntu side, the team, which had been badly stalling, was gaining back a new life. UDS (Ubuntu Developer Summit) has given me the opportunity to meet a few people from the team and to understand its overall startegy. 3 meetings were realted to accessibility: one on GNOME, which has been way too technical for me, I will therefore bypass it for now. A second one was questioning how to give a new life to the team. The third one, the one which will be my focus today, was one organized jointly with the design team. During this meeting, we decided to work on GNOME themes which would match up the requirements and desires of those who have to live with a disability. One way to do so would involve developing a survey.

We obviously need as many responses as possible to make this survey relevant. I therefore proposed to spread this to French speaking countries via the APRIL Accessibility group. The survey will not be limited to Ubuntu, but will address free software in general, and as it matches APRIL's goals, it could, through it, be propagated to other communities. We aim to finish the development of this survey before the end of June, in order to start spread during the RMLL days (Libre Software Meeting days) which will happen from July 6th to 11th in Bordeaux (yes, they also make wine there). One of the two focus area of this event being Accessibility, which would be sad to miss.

Ubuntu-FR and the Mozilla Foundation Europe being often in touch, it is felt natural to include them in this process. When the survey will be ready, they will gladly help translate it to many other languages. The efforts of the three groups can be joined and contributing together, it will prove once more what is very important to me in Free Software: collaboration.

mercredi 19 mai 2010

UDS maverick : videos!

Bien que je n'ai pas eu le temps cette fois-ci de relayer les infos du dernier UDS en long en large et en travers, voici quelques liens utiles.

En effet, quelques sessions de l'UDS ont été enregistrées, vous pouvez les retrouver sur le ubuntu developper channel. Je pense que d'autres viendront très bientôt.

De plus voici une vidéo très sympathique pour vous donner une idée des lieux où s'est déroulé l'UDS et un petit aperçu de l'ambiance qui y régnait.


UDS video

Vivement dans 6 mois ![1]

PS: oui, je suis sûr la vidéo, il faut juste bien chercher car ça passe très vite :)

Notes

[1] quoi, il y a une release à faire entre-temps??? :)

samedi 15 mai 2010

De retour de l'UDS maverick

Un très court billet[1] dans le train de retour pour statuer que je n'ai pas eu/pris le temps de blogguer sur l'UDS maverick (Ubuntu Developer Summit) cette fois-ci.

Pour ceux qui ne connaissent pas l'UDS, il s'agit de la rencontre biannuelle des développeurs et de la communauté Ubuntu pour décider de la direction à prendre pour les 6 prochains mois. Ce cycle, nous étions dans un hôtel près de Bruxelles et de (trop) nombreuses sessions en parrallèles étaient intéressantes.

S'il n'y avait qu'une seule chose à retenir[2] : 10.10.10[3]! Nous ferons tout notre possible pour que la prochaine release d'ubuntu maverick sorte le 10 octobre 2010[4] et par conséquent, ubuntu maverick 10.10 sortira le 10/10/10[5]… Les plus geeks d'entre vous auront fait la relation avec le nombre 42 en binaire :)

La réponse universelle sera donc dans maverick, beaucoup de changements passionnant, aussi bien au niveau du desktop/server que de UNE qui aura droit à une toute nouvelle interface, appellée "unity". Et c'est sans parler d'ubuntu light, de l'intégration avec le cloud, des améliorations d'ubuntu one…

Vous avez aimé lucid ? Le cycle de développement de maverick sera passionnant et un réel nouveau challenge[6] pour Ubuntu et sa communauté, temps de s'y remettre !

Notes

[1] ne vous attendez pas à plus après une nuit de 4h

[2] en fait il y en a beaucoup plus :)

[3] "don't panic"

[4] don't panic ?

[5] don't panic !

[6] vous ai-je déjà dit "don't panic" ? ;)

vendredi 23 avril 2010

Quickly 0.4.1 is out!

0.4.1 is a bug fixing release and will be the one in lucid final. Quickly 0.4.1

It contains of course all the goodness of 0.4 version plus some bug fixes that early users encountered:

  • remove ~/.selected_editor detection. Introduced confusion for users who doesn't understand why (nano, most of the time), was triggered instead of gedit (LP: #565586). It's still possible to override the choosen editor with EDITOR or SELECTED_EDITOR environment variables.
  • fix gpg key creation with no email address. Fortunately, new Quickly user won't have to bother that much with gpg key anymore (see 0.4 blog post to see what's still needed to be done)
  • fix again some tutorial issues which had been lost during html -> docbook transition
  • better message and user help when ppa not found
  • add more debugging info in --verbose mode for gpg keys
  • updated translations

0.4.1 should be building soon on the ubuntu builders, keep it hot! ;) Release tarballs are available as usual on Launchpad

Kudos to Lutin for the photo :)

jeudi 15 avril 2010

Quickly 0.4 available in lucid!

I'm proud to announce the availability of Quickly 0.4 in lucid. This new release brings shiny new features (more than 6 months of heavy development), lowering again the barrier for opportunistic developers. Development should just be easy and fun! Quickly Logo

Thanks to all awesome contributors making this release happened: Philip Peitsch, Petar Vasić, Jens Persson, Łukasz Jernaś Brian, Jonathan Lange and Shane Fagan. Special kudos to Rick Spencer for his continue devotion to opportunistic development and making quickly-widgets.

What's new in 0.4?

Well, a lot of stuff, but more precisely, let's me highlight some special features from the NEWS file content, containing the full story.

The core

  • One of the main matter for a lot of user was to use space and dashes as their name project. This wasn't available due to a lot of technical and packaging issues. This is part of past now! You can create your awesome "FoO bAr" project and enjoy it!
  • What's new in the core is template inheritance. You can now create a template picking commands from other templates. That made possible releasing the ubuntu-cli template with 0 line of code! Just shipping a new boiler plate. We hope that would help people in their template creation. Of course, it's still possible to override some commands locally.
  • We also check and recreate your credential if you deleted it in Launchpad inadvertently. Less thing to care about for you! Let's focus on your app!
  • Did you remember how sweet is Quickly regarding shell completion? Now the same has been extended to Quickly option itself.
  • An apport hook for Quickly itself. To report bugs on Quickly, do not hesitate 'ubuntu-bug quickly' on Ubuntu to fetch all needed information on our side.
  • The core now support -- arguments for subcommands like quickly run -- -help won't run help from Quickly itself but from your app.
  • A Quickly API is available, for people wanting to communicate or integrate Quickly to an IDE, it's fully possible to embed Quickly in your app, spread the Quickly love!

The ubuntu-application template and derivatives:

ubuntu-project renamed

One of the main feature of 0.2.x was the ubuntu-project template. This one has been renamed to ubuntu-application. Your app will be transitioned automatically to this new template thanks to the core supporting upgrade in templates and projects now[1]

Consequently, no more quickly create ubuntu-project fooby, but quickly create ubuntu-application fooby!

GPG key setup

What seemed to have given a lot of trouble to Quickly users in 0.2.x was the gpg key setup. For those who don't know, this key is needed when you upload your package to launchpad. Now, Quickly is more clever about this and doesn't bring random bits to create your email address. This happens in two steps:

  1. collecting all available email addresses that Quickly can find and order them in the best possible order (DEBEMAIL, EMAIL, the AUTHOR file, setup.py your Launchpad emails account…). The thing is that some of those addresses may not be yours if more than one person works on the project, that's where step 2 occurs.
  2. compare with all available local GPG key and those uploaded to launchpad.[2]. This enables us to know who YOU are and what key you should use to sign your package. This part involved patching Launchpad and fun hack evening with jml ;)

Another patch for ssh key has been approved in Launchpad too, bit we will integrate the client side in 0.6. Easy and fun, didn't I say that already?

Choosing and sharing to multiple ppa and bzr branches.

You can now choose to which ppa you want to share/release your code. You can use Use --ppa ppaname or --ppa team/ppaname (shell completion even work with that! I must admit if it's very slow (more than 10s) due to a lot of requests to Launchpad). You can setting that up definitively by quickly configure ppa <ppa_name>.

The same with bzr branch is also possible (quickly configure bzr <bzr_branch>).

Easier licensing

Previously, license command asked you to fill a Copyright file which can contain tweaked copyright and author names. Now, this file has been removed and we keep only one AUTHORS file where you put your name and those participating in the project. You can create your own COPYING file[3] for your own licence, otherwise, it will license with command line supplied license (MIT has been added). At first share/release, the license is now automagic if you didn't licensed previously, and it will take your name/email and license your proect under GPLV3. Each share/release command still update the license to all your files as in 0.2.x.

Again, all your project created with 0.2 will be migrated automatically to this scheme. Don't bother about about licensing if it doesn't interest you. Quickly is doing the right thing (at least, we try) for you.

Automatic about dialog

The about dialog is now fiddled automatically with up-to-date information at each "release" command. It will add your logo, the current version of the program, home page, the copyright, the authors, license… No more need to care about having this updated manually ! (the Credits show the authors, the licence… the licence :))

A Propos de... Quickly 0.4

hum, it seems that Rick is already enjoying using spaces in his project name ;)

New versionning scheme

The ubuntu-application template brings a new version scheme to avoid errors on failed share or release package (the critical section has been narrowed). So, if you release this month (April 2010), your applications would be 10.04. If you release a new version again in the same month, it will be 10.04.1 and so on… When you share, it just takse the last version and adds -publicX like 10.04.1-public1, then 10.04.1-public2 and so on. Of course, it's still possible to provide your own version as a parameter of quickly release or quickly share, but you won't have the full sweet safety field of Quickly for avoiding rejected package :)

Enhanced release command.

Making a release is quite tedious. In addition to push your code in your branch and the package (well, that's the goal of the ubuntu-application template after all), you should also release an upstream tarball, signing it, pushing those, create a milestone, attaching them and also provide a list of what's NEW for the release note. Seems a long task, no? Well, good news is that quickly release does all of this for you! for completing and releasing the changelog as a release note, it takes relevant message from quickly save "your message" or manual bzr commit to create a changelog with all those information. Next step in 0.6 will be to make a Launchpad announce the new release automatically, but this requires again extending the API, so, some Launchpad hacking[4].

You can have a look here for a dummy example (see "Series and milestones").

Adding dependencies

python-distutils-extra rocks at detecting with a lot of magic your python dependencies. Unfortunately, it can't detect the dependencies for non python stuff and manually launched commands. It's now possible to provide a manual list of dependencies for your app. For this, quickly configure dependencies is your new sweet friend.

Silent create/package/share/release commands

All those command now will show some dots about the progress (--verbose for full log), but filter annoying output to only focus on what matters. If some warnings and errors are encounters, it will print them in a summary asking you if you wish to continue

$ quickly release

Récupération de la configuration Launchpad

Connexion à Launchpad réussie

......................

--

Command returned some ERRORS:

--

ERROR: Python module slip_coverconfig not found

--

Command returned some WARNINGS:

--

WARNING: the following files are not recognized by DistUtilsExtra.auto:

bin/slip-coverc

--

Do you want to continue (this is not safe!)? y/n: y

Paquet Ubuntu créé dans le répertoire debian/

......

This is to avoid the whole bunch of information that can lost people in focusing on the important ones.

Apport and Launchpad Integration

Now, all projects will contain an apport hook and a launchpad integration in the menu. Of course, they only appears if you have the current package integrated. So, the project will still work on other distros, just not showing the integration.

Currently this only works for installed package (so, you can't run that for trunk). Existing project are updated as well to get this goodness. Some more work are waiting approval to get it work from trunk too (liblaunchpad waiting merges) Launchpad Integration

New debug command

Just run quickly debug for some sweetness in the debug world with winpdb!

Misc

  • Some commands have been renamed, to avoid cluttering you with multiple commands and being more descriptive:
  • quickly glade is now quickly design
  • quickly lp-project-change is now quickly configure lp-project (configure is used for bzr, dependencies, lp-project, ppa)
  • quickly dialog is now quickly add dialog to enable later boilerplate addition.
  • The tutorial is now in docbook format and ready for translation
  • The boiler plate is now fully i18n compliant

ubuntu-cli template

So, with the importing tempate feature, here is a new template resulting from some requests about building command line only application. Again, there is 0 line of code, just importing commands from ubuntu-application template!

after running quickly create ubuntu-cli "my CLI app", I got a new fresh my-cli-app program showing: quickly run foo

I'm launched and my args are: foo

You also have a full of default binded option like:

$ quickly run help

Usage: my-cli-app options

Options:

--version show program's version number and exit

-h, --help show this help message and exit

-d, --debug Print the maximum debugging info (implies -vv)

-v, --verbose set error_level output to warning, info, and then debug

-f FOO, --foo=FOO foo should be assigned to bar@@

those are good examples to see how to handle debugging level and random command line options (with eventually, parameters, counting occurrences of a parameter, …).

Of course, only a subset of ubuntu-application commands are available in this template (no quickly add dialog, neither quickly design, for instance ;)). Hope that will bring fun for making CLI application too!

ubuntu-pygame template

Who said developers don't have fun? Rick provided a new template for developing games:

ubuntu pygame template

Like ubuntu-cli, ubuntu-pygame shares a large part of ubuntu-application commands and is just a new boilerplate (no command written, again). You should check out the full and complete tutorial available at quickly tutorial

What's next?

Well, that was only a subpart of what was backed out in Quickly 0.4. We have tons of fixes and small enhancements that would have deserve to be put there. This post is already quite long so, I won't continue on. Check out the NEWS file if you want the full story!

Now, let's see what will be in 0.6. We will discuss the new features at next UDS, hope you can join either in person or by IRC. One of the next features will be nautilus integration thanks to the API. Some prototypes are already available as you can see them below. Launching a dedicated gedit session with some plugin enabled is also on track.

Nautilus outside any project nautilus inside an ubuntu-application project

Let's keep it hot and don't hesitate to comment on the new features. Also, what do you think should be added to 0.6 (maybe renamed to Quickly 10.10)?

We have already a good bunch of documentation for Quickly, even if some like my blog posts should be refreshed for 0.4, the wiki page is still a good starting point, and I heard that there will be soon some new videos available…

Hope you will enjoy 0.4 and we always welcome your feedback on #quickly on freenode!

Notes

[1] so, you will understand that once running 0.4, you won't be able to switch back to 0.2.x due to this transition (a lot of things will happen the first time you will either launch a command or use shell completion in your existing project. The good news is that, you don't have even to care about this ;)

[2] it'll create one for you if you don't have any. However, it won't still upload it to Launchpad as it raises some security concerns by the launchpad guys. We will try to tackle those issues at Maverick UDS with them to have clearly nothing to do for 0.6.

[3] no more LICENCE one

[4] should be easier than the gpg/ssh stuff though

lundi 18 janvier 2010

Moving away from (screen + irssi) to (bip + weechat)

I have been a highly screen + irssi user for some years running on my server and then, just sshing to it. Apart from the high latency on typing you can get when your connection begins to lag, everything fulfil my need.

However, last week, pitti told me that he was using a wonderful feature which is called "smart filtering". If you are a long time IRC user and particularly if you go to crowded channels, you know how seeing all this join/part messages can be annoying. Of course, most of IRC clients can hide all join/part/quit/away messages on selected channels.

But smart filtering brings the concept a little bit further: you can tell "show me /quit /join only if the user was speaking on the channel in the last xxx minutes". Great to not speak into the wild when you're not always looking at your channel user list every minute! Unfortunately, it seems there is no such extension for irssi. As writing a plugin in perl is not my taste, I moved to weechat where this feature has been implemented. It was the right time to try as well bip (an IRC proxy).

bip gaves me some hard time because intrepid[1] version is buggy: it preprends backlogs with - (and xchat doesn't highlight the channel if a message begins with "-") and adds "+" to other messages. Well, updating it just fix it, but it took some time to figure out (xchat was hiding those - et +).

Once done, I tried weechat, which seems to be a very great IRC client in a modular architecture. No more latency in typing things as the client is now local and connecting to my bip proxy. The only annoying part is that I'm connected to 4 different IRC networks (and consequently, 4 bip networks) and buffers[2] aren't properly ordered after restarting it. I have to run /layout apply 3 times to get the correct ordering at each start :( This is a known bug.

Then, I installed the notification script. The annoying bit for me was that I got spammed with too many notifications:

  • you are notified everytime someone highlight you in a channel (seems logical for a notification script)
  • you are notified at each private message someone sent you!

And there is where the nightmare begin: if you begin with a long private conversation to someone, you'll get spammed for endless time (especially when notification are shown for 10 secondes at each message!). To fix that, I've just hack quickly on notify.py script (yes, it's in python) to add a smart_notification option (off by default).

If you run: /set plugins.var.python.notify.smart_notification on then smart notification is activated. That means that you won't get notified if someone is either highlighting you in the current channel you have a buffer opened to, or in your current private conversation. That means, logically, you won't get notification if you're looking at the channel you are currently looking at. You'll only see the red/yellow/whatever color line weechat highlight your text. Of course, if your are highlighted not in your current buffer (someone is beginning a private conversation you didn't switch to), you'll still be notified. The idea is only to warn you if you have something that needs to get your attention you're not currently looking at right now, sweet isn't? :)

The new version (0.0.4) is sent upstream, if it won't get it before lucid, I'll upload it to Ubuntu to get it there.

You can find this new version there: notify.py

Notes

[1] yes, my server runs intrepid, I'll reinstall a clean architecture when lucid will be released

[2] name of channel or private window screen

samedi 9 janvier 2010

Nouvelle année, nouveau travail.

La nouvelle année arrive et il était temps de changer de vie professionnellement parlant.

Je quitte donc une société éditrice de logiciel propriétaire pour un travail plus en relation avec le logiciel Libre.

Mais pourquoi publier tout cela sur le planet ubuntu francophone et quel est le lien avec ce dernier ? Tout simplement parce que mon nouvel employeur est Canonical Ltd, sponsor officiel d'Ubuntu!

Je vais donc continuer une part de mes actions que je faisais précédemment en tant que contributeur bénévole (packager et mettre à jour GNOME dans Ubuntu) en joignant la desktop team de Canonical. Je serais également responsable du packaging de la version Ubuntu Netbook Edition (précédemment nommée Ubuntu Netbook Remix). Bref, que du bonheur de pouvoir enfin travailler à plein temps sur des projets libres, et encore plus sur Ubuntu même !

Je continuerai bien entendu à vous donner des informations sur la distribution (par exemple, le suivi des Ubuntu Developer Summit) et la vie de la communauté ubuntu-fr (restant pour l'instant secrétaire de l'association). J'essayerai de m'accorder plus de temps afin de partager ici un peu plus ce qu'il se fait sur la version de développement de la distribution.

L'année s'annonce bien en résumé, vivement lundi. :)

lundi 30 novembre 2009

Ubuntu Party Paris: 5 000 visitors \o/

It's another milestone that the ubuntu-fr French team has achieved this week-end. We had in Paris 5 000 attendees[1] at the Karmic Koala ubuntu party!

After the ubuntu release party (just a few people, mainly ubuntu-fr directly related, joining to have a great time on a dinner) we finished to prepare the Ubuntu Party as our last sprint on Karmic. Only few core organizers[2] but more than 100 of volunteers all over the week-end were present to give an hand on helping people, being at the different booths and others miscellaneous tasks!

mark.jpg This party was particular in the sense that Mark Shuttleworth visited us on Saturday, following the Party the whole day. Mark's kindness was greatly appreciated inside the community and a lot of people have been able to discuss with him. He also had, of course, some interviews at the radio and by press... The first day was concluded by his plenary session where a lot of questions has been answered too. We hope to be able to broadcast the videos very soon.

plenary9.10.jpg

The public seems to have enjoyed this event and that was our goal! You can see below before the plenary when Tristan Nitot asked to "raise both hands if you use Ubuntu!"

use_ubuntu9.10.jpg

We also had a roundtable on Internet neutrality which had attracted a bunch of people. Internet neutrality is unquestionably one of next hot subject that FLOSS has to dealt with great care.

hadopi_table_ronde9.10.jpg

As usual, our party tries to cover a lot of different activities for a wide range of public: obviously, people are able to install Ubuntu with a volunteer, but we also had a bug jam, workshops (drupal and "how to make a conference"), multiple multimedia demonstrations (gimp, video, music, compiz, cairo-dock), video games...

Some non profit organizations related to FLOSS also had a booth to show the whole "Libre" ecosystem to the visitors and present the philosophy behind Ubuntu, and more generally, the free software movement. Namely, April, Framasoft, FDN and La Quadrature du Net joined the pary!

couloir9.10.jpg

As at each Party, we also had our ubuntu-fr booth with a lot of goodies : our French localized ubuntu CD, stickers, Tee-Shirts, Framakey Ubuntu-fr remix (USB key), our updated mug, Simple Comme Ubuntu (ubuntu book)... I'll specifically talk about them in the following days.

boutique9.10.jpg

Conferences was also a great place to get and covered interesting topics as on other GNU/Linux distributions (debian, mandriva, fedora...), how to contribute, design experience at Canonical, free software in France... In a nutshell, more than 20 conferences over the two days.

We also gave different lessons on discovering ubuntu, GNU/Linux shell learning level 1 and 2, customizing your desktop... formations9.10.jpg

Of course, Oxyradio covered the whole event and made possible the link with people who can't attend it.

oxyradio9.10.jpg

5000 attendees is just awesome for a voluntary only non profit organization. Thanks to everyone who made this possible in a 4 months preparation. It's time to get some rest until we have to start again for another round!

groupe9.10.jpg

Photos licenses:

* Tristan Nitot / CC BY-NC-SA 2.0
* Nicolas Barcet / CC BY 2.0
* Raps / CC BY-SA 2.0

Notes

[1] using the La cite des sciences et de l'industrie count system

[2] thanks again to olive for all his work

samedi 21 novembre 2009

UDS Lucid Jour 5

Dernier jour et il est déjà temps de se quitter…

L'UDS a été très bon, de nombreux sujets couverts pour cette future LTS lucid, et des matchs d'antologie OpenSuse (vuntz) VS Ubuntu (seb128) à wii sport, mais revenons d'abord aux sessions de ce vendredi.

La première fut sur la table round de conclusion de la desktop track. IL y a eu un résumé des décisions prises comme celle de la suppression de The Gimp. Encore une fois, je vous urge de voir la session vidéo disponible (toutes les sessions sont disponibles sur blip tv).

J'ai ensuite assisté à "Prepare Firefox for Major-Minor Version upgrades" où une politique particulière (tout en restant sur le principe une version stable sortie = on ne change pas l'expérience utilisateur en essayant de rester sur la même version) sera mise en place. Beaucoup de discussion avec la team Mozilla dans ce sens.

Concernant la session suivante "Parental Control Lucid", il y aura des développements pour fournir un élément graphique afin de configurer ce dernier (non installé par défaut). La solution de Zeitgeist ne sera pas retenue (écouter les frappes clavier et tuer l'application actuelle), mais une possibilité de restreindre l'accès avec des heures fixes sera implémentée.

J'ai ensuite passé une heure à bosser sur un plugin gedit avec james_w, mais chhh… more on that soon :)

Les plénières après le repas ont été intéressantes, comme celle sur de Lucas sur UDD et montrer les interactions debian et ubuntu. Il a été invité cette semaine pour justement voir le statut et améliorer les intéractions entre les deux distributions. Quelques présentations rapides ont suivi (5 min par présentation) comme celle de James Westby que je recommande particulièrement (et non, le crash n'était pas prévu).

L'après-midi a donné lieu à un code snippet où chacun a pu partager ses meilleurs astuces python. Tout a été copié sur une page wiki et sera bientôt formatté proprement.

Après que chaque track leader ait pu présenter plus ou moins rapidement en plénière les décisions prises durant l'UDS et la traditionnelle session de feedback, la fête fut conclue par un repas texan et les joies d'entendre les cris chants Ubuntu All Stars !

Bonne semaine, temps de rentrer en France, au revoir Dallas et vivement le prochain UDS !

vendredi 20 novembre 2009

UDS Lucid Jour 4

4ème jour, la fatigue se fait sentir, je me permets donc d'être concis :)

Première session sur "Adding a namespace for panel/symbolic icons". L'idée est d'ajouter une sorte de standard pour les noms d'icône afin de préférer les icônes monochromes dans le panel pour être plus concis.

Le futur de l'écran d'accueil et son introduction avec Xsplash ont été abordés lors de la session Karmic GDM greeter and xsplash. Beaucoup de changements à attendre pour lucid+1. Concernant lucid, la sélection du premier compte utilisateur (qui n'aura alors plus qu'à entrer son mot de passe) dans le cas d'une machine qui n'a qu'un seul utilisateur.

La session suivante fut sur l'amélioration du démarrage du desktop. 4 secondes est le crédit sur la machine référence (un Dell mini 10). 4 secondes et très peu et le challenge est de taille. Vincent et Ryan ont pu donner leur point de vue upstream. Certains changements pourraient subvenir pour lancer quelques processus supplémentaires en parallèle. Cependant, à nouveau, le challenge est rude :)

La dernière session de la matinée a consisté à l'ajout de fonctionnalités dans le gdmsetup. Comme beaucoup de personnes ont remarqué, GDM a changé sur karmic et le nouveau GDM ne supporte pas autant d'options pour changement son comportement que le dernier (Canonical a ajouté pour l'instant uniquement des fonctionnalités de base comme le choix de l'utilisateur à connecter automatiquement). Il y aura un aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[1]. Donc je disais, il y aura un moyen de changer le thème gtk+, le fond d'écran…

Dell a ensuite présenté leur nouvelle offre et contraintes d'installation et de vente d'Ubuntu par défaut sur leurs ordinateurs depuis 3 ans. Beaucoup de virtualisation après par des plénières sur KVM et Eucalyptus par les développeurs upstreams. Ubuntu on the cloud!

Une nouvelle session sur hacking on Launchpad, pourrait être intéressant de jeter un œil dna sun proche futur.

La session sur Ubuntu Server tips a introduit l'idée d'utiliser des "astuces du jour", très courtes, pour ubuntu serveur à chaque connexion$$en utilisant bien entendu MOTD).

La dernière session de la journée a présenté un nouvel outil pour scanner[2] mais en ayant une GUI simplifiée et utilisable par un être humain classique. :) Robert Ancell a écrit une première version qui devrait remplacer xsane par défaut dans Lucid.

Plus qu'une journée ! Le meilleur reste à venir :)

Notes

[1] © vuntz

[2] utilisant sane en arrière plan

mercredi 18 novembre 2009

UDS Lucid Jour 2

Petit à petit le jet lag devient de moins en moins présent même si Lucas s'est réveillé à 5h30[1] et on a donc commencé à récupérer nos mails et faire quelques commits, dév, etc.[2] :)

La première du matin auquelle je devais assister n'a… pas eu lieu. Mais ça a été un bon moment pour jouer un peu avec UNR… oupsss UNE (Ubuntu Netbook Remix deviendra Ubuntu Netbook Edition sur Lucid).

J'ai ensuite assisté à la session "Update syslinux" qui consistait principalement à retravailler l'expérience utilisateur dès la mise en place du Desktop CD (le premier menu qui affiche la langue, puis les différents choix proposés). Une autre session est proposée car le fait de ne plus afficher le menu de langue par défaut fait débat: est-ce que l'utilisateur pourra trouver l'option pour changer la langue, est-ce que cela devrait être géré graphiquement une fois X lancé? Bref, pas de réponse évidente n'a été trouvée au terme de la session à ces questions.

La session suivante était sur "Créer une session UNR/UNE pour le desktop". L'idée est de rendre possible pour tous l'installation de UNR et de la session GNOME par défaut (Ubuntu classique) en parallèle. Beaucoup de problèmes se posent, notamment la non configuration du nouveau GDM introduit dans Karmic, l'autologin d'UNR, les applications supplémentaires installés. Mais les tests commenceront dès la semaine prochaine[3] pour avoir un paquet qui rend cela possible. Ensuite, il suffira de choisir sa session dans GDM pour bénéficier de l'expérience des différents DE (sachant que UNR est un peu particulier car s'appuyant sur GNOME).

La session suivante était sur "Social From The Start - Gwibber Integration". L'intégration par défaut de tous les éléments comme Facebook, et autres outils de socialisation est un point où la Design Team donne beaucoup d'effort. Des résultats sur les études de différents types d'utilisateur de ces services ont été exposés et quelques travaux préparatoires seront éventuellement visibles dans Lucid (Gwibber, possibilité de poster des images directement, intégration avec Empathy…)

Après le repas, j'ai pu aider une personne à faire une transition de son projet vers Quickly (j'ai reçu et fait beaucoup de travail/bug fixes depuis la présentation d'hier et Quickly devient un peu un buzzword ici :)). Les sessions en plénières couvraient Kubuntu Netbook Remix (qui sera intégré directement chez KDE comme une version supportée), une présentation des processeurs ARM par un intégrateur travaillant chez Dell, une présentation de la Launchpad API (abondamment utilisée par des applications comme bughugger ou Quickly) et finalement la présentation de TestDrive, qui synchronise pour vous la dernière version en cours de développement (lucid à l'instant), et lance une machine virtuelle avec ce système pour vous. Plus de raison pour ne pas tester. Il y a même une version graphique créée par Quickly!

L'après-midi a été ponctuée par une session sur les nouveaux développements et configuration du nouveau GDM qui seront fait par Canonical. gdmsetup qui propose aujourd'hui deux choix (la connexion automatique et l'utilisateur par défaut) sera éventuellement et éventuellement Quickly sera utilisé pour créer un template afin de rendre la création de nouveaux thème plus facile.

Une session sur la mise à jour de l'ancienne LTS (hardy) vers la future Lucid a mis en avant beaucoup d'idées intéressantes. Notamment beaucoup de tests automatisées sur la mise à jour seront fait. Comme déjà expliqué hier, il y aura quelques mises à jours plus agressives pour nettoyer la configuration de l'utilisateur, à sa demande.

Enfin, la dernière session sur les futurs améliorations de GTK et notamment le fait que la barre supérieure soit supportée par GTK et non le Window Manager. Cela soulève une fois de plus quelques problèmes comme le fait de pouvoir toujours fermer l'application quand celle-ci freeze. Il sera par contre possible de supprimer ou de changer le décorateur comme Chrome le permet et également de pouvoir appliquer des effets comme la transparence sur certains composants et nons sur toute l'application comme le fait compiz aujourd'hui.

C'est tout (et c'est déjà pas mal) pour une deuxième journée. Il est de sortir un peu sur Dallas et d'aller boire quelques bières ;)

-> Goûter la Budweiser -> Fait -> Ok

-> Goûter la Root Bier -> Fait -> FAIL!

Notes

[1] et un portable allumé, ça éclaire la pièce !

[2] la routine quoi

[3] par votre serviteur, si tout va bien ;)

mardi 17 novembre 2009

UDS Lucid Jour 1

Voici que se termine la première journée de l'UDS lucid.

Beaucoup de discussions intéressantes, sur divers sujet. Cela fait toujours plaisir de rencontrer les veilles connaissances aussi bien upstream (projets amont) que ceux de la communauté Ubuntu.

Voici un rapide résumé de la journée : - Première plénière de bienvenue avec la présentation des différentes tracks[1] et de la position globale pour la prochaine LTS, lucid lynx. Le déroulement des sessions et de l'UDS en général est également présenté. - Roundtable Mobile: présentation sur ce quoi va porter la team Mobile pour lucid, c'est à dire principalement le portage des applications sur ARM et optimisations de ces derniers. - Session sur Geoclue: imaginez, vous voyagez et allez, par exemple, de Paris à Dallas. Il ne serait pas appréciable que votre horloge puisse se synchroniser automatiquement sur le bon timezone. Le fait également de permettre la géolocalisation et le partage de votre position actuelle par empathy a été abordée. Il va y avoir des tests et des patchs testés afin de savoir si cela sera disponible pour lucid (mais sûrement pas activé par défaut concernant le partage de la position actuelle).

Après le repas, les sessions en plénières de midi se sont déroulées. La première étant sur « comment avoir une bonne session de travail ». Jono a partagé ses 7 dernières expériences à l'UDS sur ce sujet. Ensuite, Matthew Paul Thomas a présenté le travail qui sera effectué sur le Software Center pour lucid au niveau Design. Par mal de travail sur les sessions à venir cette semaine. Ensuite, Rick Spencer et moi-même avons présenté une session sur Quickly. Pas mal de retours et d'intérêt sur ce projet qui a débuté au dernier UDS. Mercredi donnera lieu à une session de deux heures sur le sujet et le devenir de la 0.4.

L'après-midi a été rythmée sur les différents moyens et métriques disponibles pour qualifier le niveau de qualité des bugs reportés et comment s'y retrouver dans cette jungle. Nous avons ensuite eu droit à une session sur comment apporter une meilleure expérience de mise à jour entres versions et proposer de permettre à l'utilisateur de prendre les choix par défaut (par exemple, le passage de pidgin à empathy, la remise par défaut des éléments du panel…). Ce désir semble contreversé et un proof of concept sera proposé dans les semaines à venir. Enfin, j'ai assisté à une session sur le process de packaging en environnement distribué. Les habitudes sont longues à changer, mais ce qu'apporte ces éléments par rapport aux méthodes tradictionnelles semble particulièrement alléchant.

Notes

[1] sujets d'intérêt

lundi 16 novembre 2009

UDS Lucid Day 0

Après quelques 13 heures de voyages, me voici à Dallas afin de vous faire partager l'UDS Lucid!

Pour les personnes qui ne le savent pas, l'UDS (Ubuntu Developer Summit) est la réunion binannuelle des dévelopeurs ubuntu (Canonical et la communauté) ainsi que quelques personnes de projets amonts qui sont invités (debian, GNOME…).

J'ai la chance d'être sponsorisé pour la deuxième fois consécutive par Canonical pour assister et participer à ces réunions. Mais même si vous ne pouvez pas participer physiquement, il reste les chans IRC et le progamme disponible sur le wiki d'ubuntu.com. Et le programme des conférences/discussions: programme complet ici

En fait, il est tout juste lundi matin et le sommeil fût difficile à trouver avant cette première journée.

J'essayerais de m'astreindre à un compte-rendu journalier des activités et discussions auxquelles je participe afin de tenir un petit journal de ce qui pourrait arriver lors de la prochaine release d'ubuntu.

dimanche 8 novembre 2009

Ubuntu-fr French release party

On 30th October, it was time to celebrate the new Koala invasion!

Contrary to our Ubuntu Party (next one will be in Paris on 28 and 29th November) opened to any kind of public and especially computer science non specialist, we also have at each release a dinner in Paris with few people more or less in the FLOSS ecosystem. 51 persons came this time and enjoying sharing good time with friends.

It was also the perfect time to have some little meetings to prepare all futur (and past) ubuntu-fr events and actions (I'll speak about them in my next post, coming soon!). Karmic photo 1

jeudi 8 octobre 2009

NotifyThis 0.1: notify everything easily!

In our French ubuntu party organized by ubuntu-fr, we have approximately 20 free and ready to use computers for people to be able to try ubuntu on their own (we have someone around to help new users).

But that's a lot of wasted space for advertising our conferences, scheduled demonstrations, lessons we have during the party! So, the idea was to create a daemon notifying this, resulting in: example.png

notifythis192.png NotifyThis is here to fulfill this need. It's a desktop daemon (no pid file) using dbus for single instance and actions like pausing, stopping, forcing configuration file reload[1]

Source file is in XML (default in /etc/notifythis-data.xml):

 <?xml version="1.0" encoding="UTF-8"?>
 <notifythis xmlns='http://launchpad.net/notifythis' xml:lang='fr'>
   <notiftypes>
       <type>
           <name>lesson</name>
           <priority>low</priority>
           <icon>/usr/share/icons/Humanity/apps/22/gnome-terminal.svg</icon>
       </type>
       <type>
           <name>conference</name>
           <priority>low</priority>
           <icon>/usr/share/icons/Humanity/stock/22/stock_people.svg</icon>
       </type>
       <type>
           <name>demos</name>
           <priority>low</priority>
           <icon>/usr/share/icons/Humanity/places/22/user-desktop.svg</icon>
       </type>
       <type>
           <name>miscellaneous</name>
           <priority>low</priority>
           <icon>http://awesomeurl/dialog-warning.svg</icon>
       </type>
   </notiftypes>
   <notifevents>
       <event>
           <title>Beginners lesson</title>
           <content>Lesson for beginners in 10 min</content>
           <type>lesson</type>
           <time>2009-09-27 12:33</time>
       </event>
       <event>
           <title>Advanced lesson</title>
           <content>Advanced lesson starting in 15 min</content>
           <type>lesson</type>
           <icon>http://unexistingurl/stock_dialog-warning.svg</icon>
           <time>2009-09-26 22:01</time>
       </event>    
       <event>
           <title>Awesome conference</title>
           <content>An awesome conference on Ubuntu will start in 5 min.\nKeep it hot!</content>
           <type>conference</type>
           <time>2009-09-27 23:54</time>
       </event>
       <event>
           <title>End of the event</title>
           <content>Well… I guess you will have to leave NOW!</content>
           <type>miscellaneous</type>
           <icon>/usr/share/icons/Humanity/status/22/stock_dialog-warning.svg</icon>
           <time>2009-09-27 23:55</time>
       </event>
   </notifevents>
 </notifythis>

What can I do in this notifythis namespace?



You associate an event instance (in notifevents/event ) to a notifytypes/type/name declared in the file. Types enables you to set some default priorities and icons to events. <Icon> refers to a path to an icon, which can be local to your computer or distant served by your preferred web server (http://…). In the latter case, NT will cache it for you locally. Consequently, using multiple times the same icon in different types or events will download it only once.

Title is used as… notification title and content as… content :) <time> is used to specify when the event will be notified. Categorizing your event is just a way to avoid multiple icon/priority definitions, but those two values can be overridden for a particular event simply specifying corresponding tag (<icon> for instance). If it can't be found, event type icon will be shown. If this one doesn't exist/can't be reachable either, a warning is spawn in log file and no icon will be displayed.

So, you can for your event, but it can be bound with any kind of other things like calendar, TODO items, and so on…

But well, as unscheduled event changes may happen[2], you surely want to upload your xml file online and reload it in all NotifyThis daemon dynamically. It's possible too (and what we will do during our party).

In /etc/notifythis, you can set where the xml file is:

 # time in minutes beteen two xml file reloading, default is 30 minutes
 DELTA_BETWEEN_XML_RELOAD=30
 
 # xml files (separated by ';') by order of preferences.
 # It can an absolute or a relative path to this file.
 # It can be a network path (http://) too
 XML_FILES=notifythis-data.xml

You can even specify multiple XML_FILES and first found one will be use (like in XML_FILES=http://my/central/xml/file.xml; /usr/local/mybackupfile1.xml;notifythis-data.xml). XML file will be reloaded every $DELTA_BETWEEN_XML_RELOAD min (30 min if not specified) in each daemon. If no xml file is found, previous working configuration is preserved and a retry is done every minutes then.

By default, NotifyThis is a desktop daemon[3] launched with a classical .desktop file in /etc/xdg/autostart/. Log are in ~/.local/share/notifythis/notifythis.log

Well, NT uses Quickly to simplify project handling. I guess we should investigate in a desktop-daemon template, making properly the double forking, using dbus instead of a pid file and dbus communication to reload configuration file, stop, pause… this can be handy! We can perhaps add a way for a template to reference another template to avoid redefining same commands twice and gives an easy way to call them (without having specifying --template ubuntu-project, for instance).

Well, if you want to give it a try, NotifyThis 0.1 is out and is available in my ppa.

Notes

[1] --help is your friend

[2] and will certainly happen actually

[3] you can launch it interactively as well, with --no-daemon and set different verbosity levels

- page 1 de 3