Journal Debian et le multi-arch

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
72
6
fév.
2012

Depuis que je suis passé sous Debian, j'ai pris l'habitude de suivre un peu l'actualité de la distribution. Je lis des blogs, je rôde un peu sur les archives de mailing-list, je suis abonné aux annonces, etc.
C'est pour ça que, quand j'ai vu le dernier post de Raphaël Hertzog sur son blog, je me suis dit que le sujet du multi-arch dans Debian pourrait facilement faire l'objet d'un petit journal polémique du vendredi sur LinuxFr. Après tout, on ne parle jamais des trains qui arrivent à l'heure et c'est bien plus rigolo de se jeter sur toutes les occasions de critiquer ;-)

J'avais donc rédigé quelques lignes évoquant le contexte de cette affaire :

Le multi-arch, c'est tout simplement la possibilité d'installer facilement et proprement sur sa machine des paquets compilés pour d'autres architectures. L'exemple canonique, qui est cité partout, concerne une machine x86-64 qui peut supporter des paquets x86.
Ce support multi-arch fait partie des buts officiels de la prochaine version de la distribution (Wheezy goals) et il est considéré comme un sujet important et emblématique des progrès de la nouvelle Debian.
L'ennui c'est que Gillem Jover, le mainteneur de l'outil de gestion des paquets dpkg, se montre peu disposé à laisser les autres développeurs empiéter sur ses plate-bandes. Il veut garder un contrôle absolu sur dpkg et refuse les propositions d'aide des autres développeurs. La version multi-arch a été écrite en grande partie par le co-mainteneur de dpkg, Raphaël Hertzog, mais Gillem refuse de l'intégrer dans la branche expérimentale. Il veut faire une revue complète du code (ce qui est louable), mais il n'a visiblement pas de temps à consacrer à cette revue et il bloque tout le processus depuis des mois.
Bien entendu, les développeurs Debian sont des bénévoles et ne sont pas tenus de travailler sur un sujet spécifique ou même de respecter des délais. Dans le même temps, il ne devraient pas bloquer le travail de leurs collègues développeurs et se comporter comme les propriétaires jaloux de leur paquet, surtout quand c'est quelque chose d'aussi important que dpkg.
Les responsables de la planification des nouvelles versions (release team) ont déjà fait savoir que dpkg était en retard et que sans une publication très rapide dans experimental il faudrait abandonner la branche multi-arch pour Wheezy.

Raphaël a résumé (fort diplomatiquement) la situation sur son blog:

Malheureusement, et même si le code fonctionne plutôt bien, Guillem ne veut rien pousser dans Debian tant qu’il n’a pas fini de tout passer en revue… et le délai que cela entraîne affecte un certain nombre de personnes. Cyril Brulebois a essayé de publier un instantané de l’état actuel de la branche multiarch dans experimental, mais Guillem est revenu rapidement sur cet upload.
Je suis quelque peu perdu face à cette situation. Il continue de travailler dans son coin malgré mes offres répétées de l’aider, il ne partage pas beaucoup de détails, excepté certains commentaires dans les logs d’envoi ou lorsque cela touche l’interface publique. Je me suis une nouvelle fois plaint de cette triste situation.

Après ce rappel du contexte qui constituait le début du journal, j'avais également ajouté quelques remarques navrées (et un peu fielleuses) sur le caractère sans doute trop démocratique de Debian, l'absence de leadership et l'incapacité de prendre des décisions. J'avais remis en cause l'efficacité d'une distribution purement communautaire qui ne peut pas vraiment imposer des choix comme le peuvent les donneurs d'ordres des distributions commerciales. J'avais inséré des liens vers l'entretien LinuxFr de Stephano Zacchiroli puisque les dernières questions portaient justement sur les développeurs non coopératifs. Le leader Debian écrivait dans cet entretien qu'il n'avait aucun pouvoir spécifique en la matière et cet aveu me servait dans la conclusion de mon texte polémique. J'avais même trouvé une formule en forme de paradoxe qui aurait sans doute servi de titre à ce journal du vendredi : « Debian est-elle engluée dans la liberté et l'absence de contrainte ? »

Et tout d'un coup, la catastrophe ! La méga tuile !
Le 2 février, Stéphano Zacchiroli ouvre un bug auprès du comité technique de Debian pour leur faire part de son inquiétude au sujet de la branche multi-arch et pour demander qu'on passe outre aux objections de Gillem Jover. Il propose un vote sur ce sujet.
À ce stade mon journal n'est pas encore rendu obsolète par la proposition de Zack. Après tout, les appels au comité technique ne débouchent jamais sur des décisions rapides. Habituellement le sujet continue de stagner dans les limbes du projet, sans que personne ne prenne de décision.
Mais là encore, l'incroyable survient. Bdale Garbee, membre du comité technique, réagit immédiatement au mail de Zack et il met au vote les propositions suivantes (j'ai raccourci le texte):

A) The Technical Committee overrides the decision of the dpkg maintainer to require complete code review before upload of the multiarch implementation in dpkg to the Debian archive.
B) The Technical Committee declines to override the decision of the dpkg maintainer to hold the dpkg multiarch implementation until he can finish code review.
C) Further discussion.

Les autres membres du comité enchaînent les votes à la vitesse de l'éclair et les A-C-B s'accumulent. Dès le 5 février, Bdale Garbee peut annoncer la victoire de la proposition A.

With votes from 7 of 8 committee members, all ranking A as their first preference, the outcome of this ballot is no longer in doubt, and we have met the required > 3:1 majority.

Le lendemain, 6 février, le patch multi-arch était accepté dans experimental et Cyril Brulebois mettait à jour sa page explicative pour essayer et tester cette nouvelle fonction.
En seulement quatre jours, une situation qui semblait inextricable a été débloquée et le patch multi-arch est entré dans Debian !

Alors, que penser à l'issue de cette saga ? Certes, on peut y voir des aspects positifs. Il est probable que Wheezy sera disponible avec le multi-arch et que ses utilisateurs pourront mixer facilement des paquets compilés pour diverses architectures.
Mais n'oublions pas le coût effrayant engendré par ce triste épisode. Un journal polémique du vendredi a été proprement anéanti, sans aucune pitié ni respect pour les saintes traditions. Toutes les remarques trollifères, rédigées avec un soin maniaque et un vrai amour du travail bien fait, ont du être éradiquées.
En outre, la réputation de lenteur et même d'immobilisme de Debian va en prendre un coup. Alors qu'avant il suffisait d'un seul développeur faisant sa tête de cochon pour bloquer pendant des mois tout progrès, il suffit maintenant d'un mail au comité technique pour que les gens réagissent et fassent avancer à nouveau le projet.

C'est avec des tremblements dans la voix que je vous le dis. Les temps sont déjà durs pour les trolleurs... mais si même Debian peut débloquer aussi facilement une telle impasse alors c'est le début de la fin !

  • # libc ?

    Posté par  (site web personnel) . Évalué à 10.

    Il te reste toujours la gnu libc, pour écrire ce genre de poste.

    "La première sécurité est la liberté"

    • [^] # Re: libc ?

      Posté par  . Évalué à 5.

      Il te reste toujours la gnu libc

      Et reiserfs aussi...

      OK, poussez pas, je --> []...

      Hop par la porte,
      Moi.

    • [^] # Re: libc ?

      Posté par  . Évalué à 10.

      Pas pour Debian, puisqu'ils sont passés à l'eglibc.
      Mais le projet glibc effectivement ça restera probablement un sujet à troll pendant longtemps..

  • # dommage en effet

    Posté par  . Évalué à 10.

    Le passage sur l'efficacité « désastreuse » d'une gestion communautaire, que sans chef pas de salut, aurait pu être du meilleur effet pour un vendredi.

    C'est un vrai troll raté tout ça :-)

  • # Lien avec le FOSDEM?

    Posté par  . Évalué à 5.

    Je me demande si le fait que plusieurs membres de Debian étaient présent au FOSDEM (dont Bdale Garbee) a facilité/accéléré le vote de le proposition en permettant une discussion directe.

    Dans tous les cas c'est une bonne nouvelle pour Debian.

    • [^] # Re: Lien avec le FOSDEM?

      Posté par  (site web personnel) . Évalué à 1.

      Il faut toujours un "chef" pour trancher. Il faut bien avancé.

      C'est sûr que c'est mieux qu'il soit élus.

      Imaginez un monde où les supérieurs hiérarchique sont élus par l’échelon inférieur :)

      "La première sécurité est la liberté"

      • [^] # Re: Lien avec le FOSDEM?

        Posté par  . Évalué à 7.

        Imaginez un monde où les supérieurs hiérarchique sont élus par l’échelon inférieur :)

        Ça existe dans notre monde actuel: les coopératives, les associations loi 1901 (même si elles sont à but non lucratifs, elles peuvent avoir des budgets et un personnel conséquent a gérer).
        Mais oui, c'est assez exceptionnel.

        • [^] # Re: Lien avec le FOSDEM?

          Posté par  (site web personnel) . Évalué à 1.

          Imaginez un monde où les supérieurs hiérarchique sont élus par l’échelon inférieur :)

          Ça existe dans notre monde actuel: les coopératives, les associations loi 1901

          Les maires, les conseillers généraux, les députés, le président de la république.

          Voila, hop, comment on peut arriver à mettre un bon troll politique au bout de quelques commentaires (il n'y a pas l'équivalent de Goldwin pour ça?)

          --> []

          • [^] # Re: Lien avec le FOSDEM?

            Posté par  . Évalué à 9.

            Les maires, les présidents, les députés et tout ces gens là ne sont pas nos supérieurs hiérarchiques !

          • [^] # Re: Lien avec le FOSDEM?

            Posté par  (site web personnel) . Évalué à 10.

            (il n'y a pas l'équivalent de Goldwin pour ça?)

            ça c'est pour les trolls sur les motos ;-)

            • [^] # Re: Lien avec le FOSDEM?

              Posté par  (site web personnel) . Évalué à 4.

              Un deux roues avec une marche arrière n'est pas une moto.

              Enfin c'est mon point de vue... et je le partage

              http://gregr.fr

              • [^] # Re: Lien avec le FOSDEM?

                Posté par  . Évalué à 4.

                Je pisse sur les twins poussifs et les cylindres à trous.

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

        • [^] # Re: Lien avec le FOSDEM?

          Posté par  (site web personnel) . Évalué à 3.

          Ça existe dans notre monde actuel: les coopératives, les associations loi 1901

          Puisqu'on parle souvent de l'Allemagne dans les journaux télévisés en France, c'est aussi le cas pour l'enseigne de (grande) distribution DM en Allemagne, où les employés peuvent choisir le/la chef du magasin:

          (en allemand)
          http://www.welt.de/dieweltbewegen/article13672072/Der-Discounter-den-die-Gewerkschaft-lobt.html

  • # tu peus te rattraper

    Posté par  . Évalué à 3.

    avec un truc sur dpkg et les changements "delta" comme rpm et pisi (au minimum) le supporte deja depuis longtemps...

    (et pourtant je prefere de tres loin deb/apt a rpm/ce que vous voulez)

    • [^] # Re: tu peus te rattraper

      Posté par  (site web personnel) . Évalué à 4.

      • [^] # Re: tu peus te rattraper

        Posté par  . Évalué à 5.

        Entre un truc dans un coin et une intégration par défaut dans la distribution et dans tous les repos officiels depuis 3 ans, il y a un monde.

        • [^] # Re: tu peus te rattraper

          Posté par  . Évalué à 1.

          $ apt-cache policy debdelta
          debdelta:
            Installé : (aucun)
            Candidat : 0.45
           Table de version :
               0.45 0
                  900 http://ftp.fr.debian.org/debian/ wheezy/main amd64 Packages
                  500 http://ftp.fr.debian.org/debian/ sid/main amd64 Packages
               0.39trl 0
                  800 http://ftp.fr.debian.org/debian/ squeeze/main amd64 Packages
          
          

          Ça te suffit ?

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

      • [^] # Re: tu peus te rattraper

        Posté par  . Évalué à 2.

        Vu que le probleme cite dans le journal venait du seul mainteneur de dpkg je pense que avant de voir les deltas arrive dedans ca va etre coton...

    • [^] # Re: tu peus te rattraper

      Posté par  . Évalué à 8.

      Je contre avec un autoremove qu'on attend toujours sur yum et tout ce qui se base sur RPM !

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

  • # C'est Ian qui va être content.

    Posté par  (site web personnel) . Évalué à 3.

    Si ça continue Deby pourra sortir avant d'être prête...

  • # Tout fout l'camp ma p'tite dame!

    Posté par  . Évalué à 8.

    En outre, la réputation de lenteur et même d'immobilisme de Debian va en prendre un coup. Alors qu'avant il suffisait d'un seul développeur faisant sa tête de cochon pour bloquer pendant des mois tout progrès, il suffit maintenant d'un mail au comité technique pour que les gens réagissent et fassent avancer à nouveau le projet.

    Et oui, maintenant Debian va se faire une réputation de prendre des décisions majeures de façon précipitée!

    De toute façon, quand on veut critiquer, on trouve toujours...

    Je me contenterai donc d'utiliser ;)

  • # La vrai question

    Posté par  . Évalué à 5.

    À quoi sert le multi-arch x86 - x86_64 pour un libriste ?

    • [^] # Re: La vrai question

      Posté par  (site web personnel) . Évalué à 10.

      On peut être libriste non sectaire, c'est à dire préférer le libre quand c'est possible mais ne pas s'interdire des binaires parce que ça pue c'est pas libre (genre des jeux pas dispos en x86_64).

      • [^] # Re: La vrai question

        Posté par  (site web personnel) . Évalué à 10.

        Et puis c'est aussi pratique pour la cross-compilation le multi-arch.

      • [^] # Re: La vrai question

        Posté par  . Évalué à 8.

        On peut être libriste non sectaire

        Tu es nouveau ici ?

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

        • [^] # Re: La vrai question

          Posté par  . Évalué à 4.

          Ben un libriste non sectaire, ça existe pas. C’est juste un opportuniste. Pourquoi pas les islamistes laïques, les écologistes pro-nucléaires et les automobilistes à vélo ? Tant qu’on y est !

          Quoi ? On n’est pas vendredi ?

    • [^] # Re: La vrai question

      Posté par  . Évalué à 5.

      Éviter de se taper la compilation (pas toujours évidente) quand le binaire n'est disponible qu'en x86 et pas packagé.

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: La vrai question

      Posté par  . Évalué à 2.

      À économiser de la bande passante, quand t'en a pas.

      C'était la raison n°1 qui m'a fait installer une Debian x86 sur un PC qui supportait le 64bit : je voulais réutiliser les 20Go de paquets x86 du cache d'apt-proxy/cacher-ng, parce que 1Go à 60 ko/s, c'est lent.

    • [^] # Re: La vrai question

      Posté par  (site web personnel) . Évalué à 7.

      Le multiarch x86/x86_64 ne sert effectivement plus à grand chose, à la limite pour wine mais le ia32-libs suffisait largement, sur ce terrain Debian arrive bien après la bataille, toutes les distribs rpms (et autre ?) gèrent le multiarch depuis "la nuit des temps", et à l'époque ça servait pas mal (coucou openoffice.org qui voulait pas compiler en 64bits ...)

      Mais le multiarch ce n'est pas que x86/x86_64, c'est aussi permettre de faire une migration armel => armhf en douceur.
      Sur ARM, les registres flottants et les registres entiers sont différents (bon rien de bien choquant ici), et l'ABI historique pour gérer les nombres flottants était de passer les paramètres flottants d'une fonction par les registres entiers, il fallait donc faire très souvent des transferts entre registres, au prix d'une perte de performance. La nouvelle ABI armhf utilise maintenant les registres flottants, pour éviter de perdre du temps pour rien

      Il ne s'agit pas d'un changement d'archicture stricto-sensu, mais le multi-arch se prêtre très bien à cette migration, sachant que certains logiciels posent encore problèmes en armhf, sans parler des logiciels propriétaires comme d'habitude.

      • [^] # Re: La vrai question

        Posté par  (site web personnel) . Évalué à 8.

        En fait le multiarch de Debian n'est pas le même que celui qui était en place dans les distributions RPM et partiellement dans Debian avec ia32-libs : celui-là était un cas particulier restreint de multiarch limité à x86 sur adm64. Là, on a un multiarch généralisé, permettant par exemple d'avoir des bibliothèques pour ARM EABI sur x86.

        • [^] # Re: La vrai question

          Posté par  (site web personnel) . Évalué à 3.

          Ça pourrait permettre à terme d'avoir des machines hybrides (à condition que le noyau puisse gérer plusieurs archi processeurs en même temps) ?
          Un peu comme Optimus mais avec des procos, ou bien un peu comme le Cell avec son PPC et ses SPE mais au lieu d'être vu comme un seul proco, on pourrait activer des procos supplémentaires qui seraient dispo, mais pas forcément de la même archi...

          ce commentaire est sous licence cc by 4 et précédentes

  • # réaction

    Posté par  . Évalué à 1.

    Guillem a pas trop mal pris la décision du comité technique ?

  • # on ne parle jamais des trains qui arrivent à l'heure

    Posté par  (site web personnel) . Évalué à 1.

    "on ne parle jamais des trains qui arrivent à l'heure"
    Je croyais que la vraie expression était "on ne parle jamais des nains qui arrivent à l'heure" ?

Suivre le flux des commentaires

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