Mes activités libres en juin 2016

Mon rapport mensuel couvre une grande partie de mes contributions au logiciel libre. Je l’écris pour mes donateurs (merci à eux !) mais aussi pour la communauté Debian au sens large parce que cela peut donner des idées aux nouveaux venus et que c’est également un des moyens les plus effectifs de trouver des volontaires pour travailler sur les projets qui me tiennent à cœur.

Empaquetage Debian

Django et Python J’ai poussé la version 1.9.7 de Django, et créé auprès de l’amont le ticket n°26755, concernant l’échec aux tests DEP-8.

J’ai empaqueté/parrainé python-django-modeltranslation et python-paypal. J’ai ouvert une demande de pull pour model-translation, afin de corriger les échecs des tests de compilation de paquet Debian.

J’ai empaqueté une nouvelle version de python-django-jsonfield (la 1.0.0), créé un rapport de bug et découvert une régression dans le support PostgreSQL. J’ai apporté mon aide sur le ticket amont, et me suis vu accorder les droits de commit. J’ai profité de cette opportunité pour faire un peu de tri dans les bogues, et pousser quelques corrections. J’ai également discuté du futur du module et fini par lancer la discussion sur la liste de diffusion des développeurs Django, concernant la possibilité d’ajouter un champ JSONField au noyau.

CppUTest J’ai poussé une nouvelle version amont (3.8), contenant plus d’un an de travail. J’ai découvert que « make install » n’installait pas un des header requis, et j’ai donc créé le ticket correspondant, accompagné d’un patch. Le paquet ayant échoué à la compilation pour plusieurs architectures, j’ai créé un autre rapport de bogue et préparé un correctif pour certaines de ces erreurs, avec l’aide des développeurs amont. J’ai également ajouté un test DEP-8 après avoir envoyé un paquet cassé (et non testé)…

Support de systemd pour net-snmp et postfix J’ai travaillé à l’ajout de service units systemd natifs pour net-snmp (n°782243) et postfix (n°715188). Dans les deux cas, les mainteneurs n’ont pas été très réactifs jusqu’à présent, en conséquence de quoi j’ai poussé mes modifications en tant que non-mainteneur.

Équipe pkg-security Lancée doucement il y a quelques mois, l’équipe que j’ai créée est maintenant en croissance, que ce soit du point de vue du nombre de membres ou de celui du nombre de paquets. J’ai créé la page wiki Teams/pkg-security obligatoire, et parrainé les paquets xprobe et hydra. Enfin, j’ai poussé une mise à jour de medusa, pour incorporer les changements en provenance de Kali dans Debian (et soumettre le patch à l’amont dans le même temps).

fontconfig Après avoir lu l’analyse de Jonathan McDowell au sujet du bogue que de nombreux utilisateurs de Kali et moi-même ont rencontré à de multiples reprises, j’ai créé le ticket n°828037, afin que celui-ci soit corrigé une bonne fois pour toutes. Malheureusement, rien n’a changé à ce jour.

DebConf 16

Ce mois-ci, une partie de mon temps a été consacré à la préparation des deux conférences et de la table ronde que je vais présenter/animer à Cape Town entre le 2 et le 9 juillet :

Distro Tracker

J’ai continué le parrainage de Vladimir Likic, qui a réussi à terminer son premier patch. Il travaille maintenant sur la documentation à destination des nouveaux contributeurs, sur la base de son expérience récente.

J’ai amélioré la configuration tox pour pouvoir lancer des tests sur Django 1.8 LTS avec les avertissements bloquants (python -Werror) activés. De la sorte, je serai sûr de ne pas me baser sur une fonctionnalité abandonnée, et donc que la base de code sera fonctionnelle avec la prochaine version LTS Django (1.11). Cela m’a permis de découvrir les quelques endroits où j’utilisais effectivement des API obsolètes, et où j’ai mis à jour le code pour ne plus en dépendre (la mise à jour de JSONField vers la 1.0.0 dont j’ai parlé plus haut en est un parfait exemple).

J’ai également corrigé quelques problèmes supplémentaires avec les en-têtes d’emails « repliés », qui ne peuvent pas être réutilisés dans un nouvel objet Message, à qui il manque le champ Objet. Tous ces soucis ont été détectés via des exceptions déclenchées par une activité de spam, exceptions qui m’ont ensuite été transmises par email.

Travaux relatifs à Kali

j’ai poussé un nouveau live-boot (5.20160608) vers Debian, pour corriger un problème où le processus de boot était bloqué à cause d’un timeout.

J’ai transféré un bogue Kali affectant libatk-wrapper-java (n°827741), qui s’est trouvé être finalement un bogue OpenJDK.

J’ai créé le rapport de bogue n°827749 concernant reprepro, et demandant une méthode de suppression des références à des fichiers internes sélectionnés. C’est nécessaire si l’on souhaite pouvoir faire disparaître un fichier, et si ce dernier fait partie d’une sauvegarde que l’on veut garder malgré cela. En vérité, je souhaite avant tout pouvoir remplacer le fichier .orig.tar.gz utilisé par Kali par le orig.tar.gz utilisé par Debian… ces conflits cassent les scripts de réplication/import.

Salt

J’ai utilisé salt pour déployer un nouveau service, et j’ai développé plusieurs patchs pour quelques problèmes rencontrés dans les formules salt. J’ai également créé une nouvelle formule letsencrypt-sh pour la gestion des certificats TLS avec le client letsencrypt.sh ACME.

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in June 2016 contribuée par Weierstrass01.

Mes activités libres en mai 2016

Mon rapport mensuel couvre une grande partie de mes contributions au logiciel libre. Je l’écris pour mes donateurs (merci à eux !) mais aussi pour la communauté Debian au sens large parce que cela peut donner des idées aux nouveaux venus et que c’est également un des moyens les plus effectifs de trouver des volontaires pour travailler sur les projets qui me tiennent à cœur.

Debian LTS

Du fait de départs dans l’équipe et de l’augmentation de la charge de travail, j’ai souhaité trouver quelques nouveaux contributeurs rémunérés pour Debian LTS. Pour se faire, j’ai envoyé un email à la liste debian-jobs@lists.debian.org et, a contrario de la fois dernière (où je n’avais posté l’annonce que sur mon blog), j’ai reçu beaucoup de réponses en retour… Ce qui m’a permis de recruter six nouveaux contributeurs. J’ai du refuser trois candidatures, dont le profil ne correspondait pas.

Chaque nouveau contributeur devait gérer sur son temps libre au moins une mise à jour LTS, afin de s’approprier le processus. Mais des six nouveaux, seuls trois contributeurs ont effectué leur « mise à jour d’entraînement » en mai. 🙁

J’ai consacré beaucoup de temps ce mois-ci à guider les premiers pas des nouveaux contributeurs, tant sur la liste debian-lts que via emails.

J’ai également passé en revue une mise à jour xen, pour laquelle j’avais (à raison) quelques doutes sur la qualité du travail réalisé.

Travaux d’empaquetage

fonts-cantarell Après avoir diagnostiqué le problème le mois dernier, l’absence d’un paquet corrigé m’a suffisamment ennuyé pour que je réussisse à empaqueter une nouvelle version amont de fonts-cantarell qui ne requiert aucune mise à jour de fontforge… mise à jour qui va très vraisemblablement prendre du temps. J’ai donc préparé et envoyé la version 0.0.24-1.

cpputest Le bogue n°823711 faisait état de soucis de licence avec quelques fichiers. J’ai immédiatement remonté cela à l’amont (ticket 961) et corrigé le problème dans Debian, en ré-empaquetant l’archive d’origine. Heureusement, l’amont a rapidement traité le souci, et une nouvelle version (3.8) démunie des fichiers problématiques est disponible.

live-boot Les images live de Kali ne bootaient plus (bloquées dans l’initrd) et, avec l’aide de Ben Hutchings, nous avons remonté les causes du problème jusqu’au ticket n°823069, que j’ai corrigé dans live-boot 20160511.

udev J’ai créé le rapport de bogue n°824025 demandant l’isolation dans son propre fichier de la règle de gestion pilotant le nom (basé sur l’adresse MAC) des interfaces réseau USB, de sorte à ce qu’elle puisse facilement être désactivée (nous procédons de la sorte dans Kali).

Travaux divers J’ai empaqueté Django 1.8.13 dans jessie-backports, corrigé le n°824165 concernant l’échec de sbuild avec “$apt_allow_unauthenticated = 1;” dans .sbuildrc, créé la demande d’amélioration n°824168 suggérant qu’apt-listchanges ignore les news des paquets installés automatiquement, et créé le rapport n°825923 pour rapporter une régression dans python-nltk (découverte dans Kali en premier lieu).

Travaux d’infrastructure

packages.debian.org J’ai écrit, il y a de cela quelques mois, un patch pour packages.debian.org, afin que ce dernier transmette les emails vers tracker.debian.org, en lieu et place de packages.qa.debian.org. A cette époque, j’étais en contact avec Rhonda, et j’espérais qu’elle l’applique assez rapidement (le patch n’est pas très long). Après quelques relances, elle m’a fait remarqué qu’elle n’était pas seule et que je ferais mieux de soumettre la demande en bonne et due forme, de sorte à ce que quelqu’un d’autre s’en charge. Ce qui fut fait : ticket n°824085. J’ai essayé de trouver « quelqu’un d’autre » pour traiter ma demande, mais la plupart des membres de pkg_maint m’ont répondu qu’ils n’appartenaient à ce groupe que par implication générique des webmasters. Aussi ils ne souhaitaient pas toucher à cette partie. Martin Zobel, heureusement, fut plus réceptif à ma demande et m’a aidé à déployer les modifications. J’ai poussé ma modification et Martin l’a intégré dans le checkout live de picconi.debian.org.

Cette mise à jour constitue également le premier pas vers une possible utilisation de foo@packages.debian.org et/ou teams+foo@tracker.debian.org dans le champ « Mainteneur » du paquet. Nous pourrions nous débarrasser, avec cela, des listes de diffusion dédiées, qui ne font que dupliquer le travail du suiveur de paquets. Et nous n’aurions plus besoin de nous soucier du fait que le champ « Mainteneur » est géré différemment du champ « Uploader », dans la mesure où tous les co-mainteneurs (humains) seraient listés dans le champ « Uploader » uniquement (et le suiveur de paquets gèrerait correctement les emails envoyés au mainteneur).

Distro Tracker J’ai amélioré le processus d’import afin d’être en mesure de relancer le traitement de paquets source ayant déjà été importés. C’est en particulier utile pour prendre en compte les architectures récemment ajoutées dans la base de données (et qui étaient du coup ignorées et donc non affichées jusqu’à maintenant).

J’ai également revu une première fois le patch AppStream soumis par Matthias Klump dans le ticket n°806740.

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in May 2016 contribuée par Weierstrass01.

Mes activités libres en avril 2016

Mon rapport mensuel couvre une grande partie de mes contributions au logiciel libre. Je l’écris pour mes donateurs (merci à eux !) mais aussi pour la communauté Debian au sens large parce que cela peut donner des idées aux nouveaux venus et que c’est également un des moyens les plus effectifs de trouver des volontaires pour travailler sur les projets qui me tiennent à cœur.

Debian LTS

J’ai pris en charge une nouvelle proposition de sponsoring, de la part d’une société souhaitant voir Wheezy continuer à supporter les architectures armel et armhf. Cela ne faisait pas partie de nos plans initiaux (arrêtés lors de la dernière DebConf) et, en conséquence, j’ai envoyé un message à toutes les équipes impactées de sorte à ce que ce changement, s’il devait survenir, soit approuvé collectivement. Alors que je m’attendais à recevoir une réponse claire assez rapidement, il s’est avéré que nous ne sommes jamais parvenus à obtenir un retour de la part de toutes les parties impliquées. La discussion a dérivé, à la place, sur la question plus générale de savoir comment nous devions traiter le sponsoring/donation au sein du projet LTS.

Fort heureusement, les mainteneurs de buildd ont confirmé être d’accord avec ce changemement, tandis que les ftpmasters n’y voyaient pas d’objections, ce qui a implicitement acté cette décision. Ansgar Burchardt a conservé les architectures armel/armhf dans le dépôt wheezy/updates lorsque le support a basculé du côté de l’équipe LTS, et Aurélien Jarno a configuré wanna-build de sorte à ce qu’il continue de compiler armel/armhf pour la suite. L’équipe DSA n’a pas confirmé que ce changement n’entrait pas en conflit avec l’un de leurs projets de mise hors service de matériels. Quoi qu’il en soit, les démons de compilation constituent des ressources partagées, et un seul serveur gère généralement la compilation des paquets pour plusieurs versions de Debian.

DebConf 16

Je me suis inscrit ce mois-ci pour la DebConf 16, et soumis plusieurs propositions de sujets pour des présentations/tables rondes :

  • Retour d’expérience de Kali Linux en tant que distribution dérivée de Debian, basée sur Testing (présentation);
  • Deux années de travail, réalisées par des contributeurs rémunérés, au sein du projet Debian LTS (présentation);
  • Utiliser l’argent de Debian pour financer les projets Debian (table ronde).

Je souhaite partager la configuration que nous utilisons dans Kali, dans la mesure où elle pourrait être utile à d’autres distributions dérivées, mais aussi à Debian elle-même, afin de faciliter les échanges avec les distributions dérivées.

Je souhaite également rouvrir le débat concernant l’utilisation de l’argent au sein de Debian. C’est un sujet difficile que nous devrions vraiment aborder, afin d’arrêter officiellement une position sur ce qu’il est possible de faire, ou de ne pas faire, avec cet argent. Debian LTS a permis de démontrer que l’argent pouvait être utilisé dans une certaine mesure, sans que cela n’affecte le projet Debian en tant que tel. Est-ce que cela peut être transposé à d’autres équipes ou projets ? Quelles sont les limites ? Pouvons-nous définir un cadre d’utilisation et clarifier les règles ? je m’attends à une table ronde très intéressante. Mehdi Dogguy a accepté d’animer cette table ronde avec moi.

Empaquetage

Django J’ai poussé la version 1.8.12 vers jessie-backports, ainsi que la version 1.9.5 vers unstable. J’ai créé deux rapports de bogue auprès de l’amont (n°26473 et n°26474) pour des problèmes repérés grâce à lintian.

Malheureusement, lorsque j’ai voulu faire de même vers unstable, la suite de tests n’a pas fonctionné. Après analyse, j’ai attribué cela à une régression dans SQLite. Chris Lamb a créé le rapport de bogue n°820225, et j’ai contacté les développeurs amont Django et SQLite par email, pour leur indiquer le souci. J’ai aidé l’auteur amont SQLite (Richard Hipp) à reproduire le problème, après quoi il a soumis très rapidement un patch, qui a atterri dans la version 3.12.1.

J’ai réalisé plus tard dans le mois un autre envoi, pour corriger un bogue de mise à jour (cf. le n°821789).

GNOME 3.20 Comme pour chaque nouvelle version, j’ai mis à jour gnome-shell-timer, de sorte à ce qu’il fonctionne avec le nouveau GNOME. J’y ai passé cette fois-ci un peu plus de temps qu’à l’habitude, afin de corriger une régression (cf. le n°805347) datant d’il y a bien longtemps déjà, et qui n’aurait jamais été corrigée autrement, l’auteur amont ayant déclaré orpheline cette extension (n’utilisant lui-même plus GNOME).

J’ai également rencontré des problèmes d’affichage, à savoir que les caractères accentués étaient affichés sous les caractères suivants. Avec l’aide de membres de l’équipe GNOME, nous avons découvert qu’il s’agissait d’un problème spécifique à la police cantarell, et n’était déclenché qu’avec Harfbuzz 1.2. C’est consigné dans Debian via le bogue n°822682 en ce qui concerne harfbuzz, et n°822762 pour ce qui est de fonts-cantarell. Une nouvelle version amont (incluant le correctif) est prête à être empaquetée, mais reste malheureusement bloquée par l’absence d’une version récente de fontforge dans Debian. J’ai donc contacté debian-mentors dans l’espoir de trouver des volontaires qui pourraient aider l’équipe pkg-fonts à en empaqueter une version plus récente…

Travaux divers Debian/Kali

Distro Tracker J’ai commencé à parrainer Vladimir Likic, qui m’a contacté dans le but de contribuer au Distro Tracker. Je l’ai aidé à mettre en place son environnement de développement, et nous avons corrigé quelques problèmes ce faisant.

Rapports de bogues J’ai créé de nombreux rapports de bogue, la plupart du fait de mon travail pour Kali :

  • n°820288: requête demandant le maintien d’un paquet WordPress installable sur les versions anciennes (du fait du renommage de nombreux paquets php);
  • n°820660: requête demandant le support des index by-hash dans reprepro;
  • n°820867: possibilité de surcharger la priorité de paquets déjà installés dans reprepro;
  • n°821070: problème de samba-vfs-modules lors de la mise à jour de jessie vers stretch;
  • n°822157: python-future masque et casse python-configparser;
  • n°822669: dh_installinit ajoute des autoscript inutiles pour les scripts System V, lorsque le paquet n’en contient aucun;
  • n°822670: dh-systemd devrait être fusionné avec debhelper, car nous disposons de systemd par défaut, et debhelper devrait le supporter correctement par défaut.

J’ai également étudié le n°819958 qui affecte testing, dans la mesure où il a été remonté dans Kali également. J’ai réalisé un envoi de dh-make-golang en tant que non-mainteneur, afin de corriger le problème du n°819472, que j’avais rapporté auparavant.

Merci

Rendez-vous au mois prochain pour un nouveau résumé de mes activités !

Ceci est une traduction de mon article My Free Software Activities in April 2016 contribuée par Weierstrass01.

Debian 8 Jessie publié chez Eyrolles

Ca y est, une nouvelle édition de mon Cahier de l’Admin Debian vient de paraître aux éditions Eyrolles… couvrant cette fois-ci Debian 8 Jessie et quittant la collection « Cahier de l’Admin » pour intégrer la « Collection Blanche » des livres de référence.

Couverture Debian 8 Jessie

Le livre est disponible chez tous les bons libraires et sa version électronique est toujours disponible gratuitement sur le site officiel du livre. Rappelons que le livre est publié sous licence libre (au choix CC-BY-SA 3.0 ou GPL 2+) et qu’il est co-écrit par deux développeurs Debian (moi même et Roland Mas).