Ce que Debian doit apprendre d’Arch Linux

Il est une choses assez connue qu’en sciences, les grandes découvertes sont « dans l’air du temps », qu’elles ont souvent lieu simultanément dans plusieurs endroits à la fois, et que si ce n’était pas l’Un qui avait fait telle découverte, c’est probablement l’Autre qui l’aurait faite.

Il me semble que nous sommes aujourd’hui sur le point d’arriver à ce stade de conscience collective sur un sujet majeur de l’ingénierie logicielles qui est la manière de releaser correctement une distribution GNU/Linux. C’est pour moi la décision la plus importante à prendre pour toute distribution GNU/Linux qui vise l’utilisateur final, un virage technologique fondamental pour la réussite des logiciels libres.

Je me dois donc d’enfoncer le clou après l’article de Carl, et donc d’exhumer l’un des miens qui attend depuis quatre mois d’être publié. La forme est un peu bizarre, je m’étais un peu laissé aller un soir très tard, mais bon, un peu de littérature ne fera pas de mal, pour ceux qui ne connaitraient pas l‘Enfer de Dante.

Posons d’abord les bases : oui je pense que Debian est LE système GNU/Linux universel et donc LE système d’exploitation universel. Si ce n’est pas forcément la distribution que l’on utilise, c’est au moins la distribution qui est la base des différentes distributions que l’on peut utiliser selon ses besoins.

C’est notamment une distribution qui :

  • supporte 12 architectures matérielles (soit presque toutes celles existantes)
  • fournit plus de 30 CD de packages binaires (25 000 paquets, soit presque la totalité des logiciels libres disponibles)
  • est basée sur une communauté de plus de 1000 développeurs, organisée autour d’un contrat social (et non l’oeuvre une entreprise commerciale dont l’appât du gain est la seule motivation)

Mais Debian a des défauts, et ma curiosité m’a toujours poussé à tester d’autres distributions Linux. Après la bêtise du siècle de Kurt j’ai même considéré comme vital de trouver une alternative.

Je me suis intéressé à Arch Linux à la suite de diverse tribulations m’ayant amené à tester longuement la Slackware qui m’avait plu en particulier pour son système d’init « à la BSD ». Mais aux packages déjà pas à jour et sans gestion des dépendances, est venue s’ajouter la maladie de Patrick Volkerding prouvant qu’une communauté est plus puissante qu’un seul homme quel que soit son génie…

J’étais donc passé à la Minislack, une Slackware minimaliste avec des paquets à jour. Mais, renommée Zenwalk, elle s’est centrée sur Xfce alors que je veux une distribution qui me laisse choisir mon environnement de bureau à ma guise.

Et je suis donc enfin arrivé à Arch Linux ! Là j’ai trouvé une distribution organisée autour du principe KISS :

  • système d’init « à la BSD » (et oui c’est vraiment plus simple, l’init System V style c’est juste HORRIBLE)
  • fichiers de configurations remplis de commentaires permettant de tout configurer très simplement
  • gestion des dépendances des paquets
  • paquets à jour
  • ROLLING RELEASE !!!

Je continuais à descendre lentement avec Dante, au fin fond du 9ème et dernier cercle de l’Enfer Informatique. Il faisait maintenant très froid, nous étions tout au bord du Cocyte. Au loin je voyais l’ignoble Bill Gates, traître à l’ensemble des utilisateurs de ses logiciels ; d’une taille imposante, il était bloqué dans les glaces et subissait les assauts de milliers de développeurs libres. On pouvait facilement les différentier grâce à leur T-shirts, marqués au logo de leur distribution respective. Ils étaient présents là eux aussi pour traîtrise envers leurs utilisateurs, pour avoir à maintes et maintes reprises explosé les installations de ces pauvres hères lors d’upgrades de leur distribution.

Moi : Maître, je vous ai suivi jusqu’au bout du chemin, au plus profond des Enfers, vous aviez promis que si nous y arrivions, vous répondriez à ma question : mais qu’est-ce que l’OS universel pourrait-il donc bien apprendre d’Arch Linux ?

Dante : La Rolling Release.

On peut dire qu’aujourd’hui Arch Linux est la plus populaire, la plus utilisée et la plus fonctionnelle des distributions GNU/Linux en rolling release. Si Debian doit aller vers la Rolling Release (et elle le doit !), alors c’est probablement du côté d’Arch Linux qu’il faudra regarder, pour s’inspirer des process qui font qu’une distribution fonctionne si bien sur ce modèle.

Quand je pense que lors d’une de nos discussions, il y a seulement quelques mois, Carl, qui est un très gros mainteneur de paquets Debian, semblait ne pas comprendre le concept même de Rolling Release, et qu’aujourd’hui il me double pour écrire un article sur le sujet, alors oui je me dis que le temps est bien venu !

Tags: , , , ,

16 Responses to “Ce que Debian doit apprendre d’Arch Linux”

  1. […] This post was mentioned on Twitter by Denis Fruneau, Debian. Debian said: Florent Gallaire: Ce que Debian doit apprendre d’Arch Linux: Il est une choses assez connue qu’en sciences, les gr… http://bit.ly/bJlXdL […]

  2. than dit :

    Debian a déjà une version « rolling release » que j’utilise exclusivement et quotidiennement : testing/sid.

    • fgallaire dit :

      Tu utilises testing ou unstable/sid ??

      La sid N’est PAS une rolling release, puisque ce N’est PAS une release. Il n’y a aucune garantie que les paquets soient compatibles entre eux et que la distribution fonctionne, d’où son nom : unstable.
      Le but de la rolling release c’est d’avoir une ditribution stable, mais qui se mette à jour en continu.

      • djib dit :

        C’est une question de vocabulaire, mais effectivement on ne peut peut-être pas parler de rolling release dans la mesure où unstable n’est simplement pas gérée par l’équipe de sécurité Debian. Reste que unstable n’est pas la branche experimental, elle reste très stable.

      • Koin dit :

        Ou la mauvaise foi poussée à son paroxysme.
        Sid est aussi stable que peut l’être ton Archlinux, tout en proposant une large gamme de paquets.
        Entendre un archer se plaindre de la stabilité de sid ça m’amuse énormément, bref, tu n’a jamais dû l’essayer pour en arriver à dire ça. 😉 (et, pire encore, outre Sid j’ai deux ou trois paquet en experimental aussi… comme quoi.)
        Ne parlons pas de la sid 64bits qui écrase très largement en terme de choix de paquets l’archlinux 64bits, ça m’a assez choqué à l’époque, enfin bon, le 64bit c’est pas comme si c’était l’avenir. 😉
        Bref, Sid et Testing sont des rolling release, elles sont stables, autant que ta distribution préférée, et le projet CUT n’est que le gage d’une stabilité encore améliorée, ton troll tombe à plat…. enfin repasse plus tard et essaye encore.

        • fgallaire dit :

          Ton agressvité est représentative de TA mauvaise foi, pas de la mienne. Testing est tellement une rolling release qu’en ce moment elle est freezée !
          Et je ne fais pas de concours de qui à la plus grosse entre Debian et Arch 64 bits, J’utilise heureusement pour moi des distributions GNU/Linux différentes, c’est la richesse du logiciel libre, et je n’ai jamais aimé les chapelles.
          Par contre oui j’ose une réflexion sur une quelque chose de fondamental à ta distribe, et je comprend que ça puisse faire peur : l’homme est réactionnaire de nature, il n’aime pas être dérangé dans ses petites certitudes.

          • Koin dit :

            Ce qui me dérange c’est le ton que tu emplois.
            Archlinux n’est pas la reine du concept de rolling release, je ne vois pas ce que Debian irait copier (« apprendre » tu disais) de cette distribution, vu que sid en est une elle même. (testing c’est différent, elle a ses périodes de freeze, mais elle reprendre la vie normalement après.)
            Bref, dire que Sid c’est pas du rolling release car ce n’est pas une release, c’est stupide, Sid reste une distribution, une distribution de développement plus exactement… mais elle est fondamentalement identique à une archlinux, CUT apportant juste plus d’attention à la stabilité de l’ensemble par la suite.
            Bref, Sid ça existe, y’a des gens qui l’utilisent en permanence, de même pour testing avant même le projet CUT (et heureusement d’ailleurs, qui ferait les bugs reports sinon ?)

            Debian en plus, de par sa philosophie est à l’opposé d’archlinux: Archlinux cherche à proposer du pur upstream, sans retouche… on te donne les logiciels packagés tels quels, personne n’y apporte de modification, ce qui rend l’inclusion de logiciels dans son ensemble plus rapide que sous une sid par exemple, tandis que sous debian, ça patch ici ou là, certains logiciels subissent des modifications pour pouvoir être ajoutés… bref, deux philosophies différentes qui ne sont pas compatibles, ton propos tombe à l’eau encore une fois.

  3. than dit :

    j’utilise testing et si besoin quelques paquets de sid (qui se font rattraper par leur version testing relativement rapidement).
    Pour moi, on ne devrait pas enlever à Debian le fait de vouloir sortir une release « ultra stable » une fois tous les beaucoup de temps. La seule différence que je fais entre une distribution dite « rolling release » et la testing que j’utilise c’est juste le nom. Pour moi, la notion de stabilité chez debian n’est pas la même qu’ailleurs, et même que chez moi. Pour moi, testing est stable. Pour debian, testing a besoin d’être testée. De plus si une version d’un logiciel est buggée en amont, que ce soit chez debian testing ou chez arch, le résultat sera le même. L’intégration du logiciel au système est ce qui pourrait faire la différence mais pour avoir utilisé arch pendant quelques semaines, je trouve que au niveau de l’utilisation et de la « stabilité », je ne ressens pas de différence par rapport à debian testing. Après, je ne nie pas que la communauté arch est très sympathique et ça pour le coup, ça peut faire une différence dans le choix d’un os !

  4. lawl dit :

    Pareil moi j’ai tjs utiliser Debian testing (attention très important il faut mettre testing et non pas le nom de la testing en court dans le source.list) comme une rolling release et je l’ai tjs considérée comme tel.

  5. SomeOne dit :

    Bonjour fgallaire,

    J’ai bien aimé ton article pour info voici mon historique linux.
    Ubuntu -> Debian -> Fedora -> Arch

    Et depuis 2 ans maintenant je reste sous Arch, notamment pour le coté rolling release que tu soulignes dans ton article, mais aussi pour la communauté et la stabilité de cette distribution.

    Après lecture, j’aimerais te poser une question : pourquoi regarder ce que debian peut copier sur Arch, et ne pas passer directement sous Arch? Ou dis différemment si Arch peut apporter le Rolling Release à Debian, que pourrais selon toi apporter Debian à Arhc?

    Belle journée

    • fgallaire dit :

      Je pense qu’Arch Linux est une excellente distribution, qui me semble tout à fait rationnelle avec son propre concept. Il ne me semble pas qu’elle ait vocation à être l’OS universel. Le nombre de paquets reste relativement faible, bien que totalement adéquat vu la technicité de l’utilisateur moyen d’arch qui peut très bien compiler ce qui lui manque avec AUR ou tout seul. Le nombre d’architectures officielles (i686 et x86-64) n’est absolument pas comparable avec les 12 architectures supportées par Debian, même si cela recouvre probablement 99% des utilisateurs. Enfin le nombre de développeurs Arch est très inférieur au nombre de développeurs Debian, ce qui ne donne pas le même effet de levier pour faire évoluer la distribe.

  6. Oni dit :

    Tiens ça me rappelle une news récente apparue sur Linuxfr cette histoire : http://linuxfr.org/2010/09/12/27377.html

  7. ced dit :

    une distrib communautaire,
    14 000 paquets,
    10 architectures,
    rolling release,
    une pointe de BSD
    ==> gentoo

    dsl pour la pub, les chapelle tous ça… 🙂
    Mais je suis d’accord, les distrib portables ça se perd.

  8. […] Ce que Debian doit apprendre d'Arch Linux « Florent Gallaire's Blog […]

  9. […] This post was Twitted by jlaunay […]

Leave a Reply