Le revers de la diversité

Posté par  (site web personnel) . Modéré par Fabien Penso.
Étiquettes : aucune
0
27
mar.
2001
Communauté
ZDNet propose un article sur le revers de la diversité dans le monde Linux, à savoir les incompatibilités entre les distributions. Elles seraient une cause du peu de logiciels commerciaux portés sous Linux. Les solutions (une version par distrib, une seule distrib supportée, fournir son propre système d'installation) ne sont pas très satisfaisantes. Autrement dit, du temps est perdu sur la forme plutôt que sur le fond, à savoir produire un logiciel meilleur.

Les différences peuvent se regrouper en quatre catégories : l'emplacement des fichiers, les divers systèmes de paquetages, les versions de logiciels, l'intégration dans les menus.

Une solution partielle que l'on attend toujours (en pratique) : le Linux Standard Base.

Un avis perso : il serait intéressant d'annoncer pour chaque nouvelle distrib sa compatibilité avec le LSB/FSH, et de promouvoir les plus respecteuses.

Aller plus loin

  • # Bah oui mais...

    Posté par  . Évalué à 1.

    Je reste persuadé que cette diversité est une bonne chose. Elle est le propre du logiciel libre.

    Ce ne sont pas les logiciels commerciaux qui sont génés par cette diversité, ce sont les logiciels non-libres.

    En effet coté logiciel libre il n'y a pas de problème : Les auteurs fournissent la plupart de temps un mécanisme basé sur autoconf qui marche du premier coup ou indique clairement ce qui manque.

    Les binaires sont souvent spécifiques à une distrib, mais ils sont fait par le groupe qui édite cette distrib ou par des gens qui la connaissent très bien.

    Je pense que cette séparation entre les gens qui écrivent les softs et ceux qui les packagent est la clé d'un système aisement administrable.
    • [^] # Re: Bah oui mais...

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

      Exactement!
      Autoconf roulaize, voilà tout.
      Si Oracle et cie veulent que leur softs s'installent comme il faut, z'ont qu'à changer de license et les éditeurs de distrib se feront un plaisir de faire eux-même le build des binaires.
      Si les éditeurs de logiciels propriétaires ont du mal à maitriser la compatibilité entre les distribs, c'est leur faute à eux, pas celle des distribs.
      En plus, les problèmes de compatibilité binaire ne sont pas le propre de Linux, les UNIX propriétaires qui l'ont précédé ne valaient pas beaucoup mieux. Genre n'importe quel soft devait exister en 50 versions pour pouvoir tourner sur Solaris, HP-UX etc... Evidemment je suis de mauvaise foi car les processeurs n'étaient pas les mêmes, mais bon, UNIX n'a jamais été champion dans le domaine de la compatibilité binaire.
      "ouais mais les binaires ELF tralala compatible Solaris..."
      Euh, lancer Solaris sur un i386, c'est vraiment une bonne idée? Hein? Laissez moi rire...
    • [^] # Re: Bah oui mais...

      Posté par  . Évalué à 0.

      et puis comme ça les virus (à venir) se propageront moins facilement.
  • # Toujours pareil

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

    On en revient toujours au même point : la diversité !
    Si c'est effectivement la diversité des développeurs qui a fait évolué Linux de façon très rapide, ce sera peut-être la diversité des distributions qui le conduira à sa perte. Mon avis à moi que j'ai, c'est qu'il est temps que le LSB sorte. Même si je ne suis pas contre les distribs, il faudrait que leurs concepteurs arrêtent un peu d'essayer d'être Bill à la place de Bill (Un seul, ça suffit amplement). Ainsi les très Windowsiens de Red Hat (Make money, make money) devrait trouver une hiérarchie de fichiers qui respecte quand même quelques conventions du monde Unix, ne serait-ce que ça. En effet, le système de paquetages peut rester propriétaires car il n'est pas nécessaire de le connaître pour faire de l'administration pure et dure (gestion des utilisateurs ...), je ne parle pas des versions de logiciels ni de l'intégration dans les menus car pour le premier point, si le logiciel est bien codé, il y a compatibilité ascendante entre les anciennes versions et les nouvelles. Pour ce qui est du second point, je trouve ça purement secondaire et que c'est une préoccupation de Window$ user. N'oublions quand même pas que Linux est avant tout un Unix-like et que même sur des Unix propriétaires vieux de trente ans mais possèdant depuis les années 80 des window managers, les incompatibilités entre window manager sont légion. Vouloir uniformiser l'intégration des menus, c'est vouloir faire coopérer les équipes de Gnome, KDE etc...

    Un avis perso : j'utilise FreeBSD et même si les détracteurs diront qu'il n'y a qu'une version et pas plusieurs distribs, je répondrai qu'entre les *BSD et pour ce qui est du système pur, il n'y a pas de différence notable (gènante comme les fichiers de conf entre Slackware et Mandrake)
    • [^] # Re: Toujours pareil

      Posté par  . Évalué à 1.

      Vouloir uniformiser l'intégration des menus, c'est vouloir faire coopérer les équipes de Gnome, KDE etc...

      Voila un bel exemple de mon propos d'un peu au dessus.

      Sur la Debian (je ne sais pas pour les autres, mais ca doit etre pareil), les menus sont uniformisés entre tous les WM. Et ce ne sont ni les developpeurs de Gnome ni ceux de KDE qui s'occupent de ca.
      • [^] # Re: Toujours pareil

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

        Ok, mais que penses-tu du fait que si tu as l'habitude d'un Unix Sys V et que t'as une merde dans la conf d'une mandrake, tu vas passer une demi-journée à essayer de retrouver où Mandrake surdéfinit les fichiers de conf pour utiliser les siens (et donc sortir du cadre habituel du /etc) (Expérience vécue !!! ;-))?
        Personnellement, j'ai pas franchement envie de me colletiner toutes les distribs afin d'être capable de faire de l'admin partout sous prétexte que chaque distrib est devenue un os à part entière avec seulement le système de fichiers et le noyau comme point commun.
        • [^] # SysV/Mandrake

          Posté par  . Évalué à 1.

          Rechercher par locate un fichier de config surédité par l'arborescence de la Mandrake, ou bien celle d'e-smith server (bien pire encore), c'est la raison qui m'a poussé à passer à la Debian.
          Debian, c'est une seule distrib. Je ne crois pas que je vais tenter progeny car lors d'une dist-upgrade, un paquet unstable a écrasé le hostname de mon portable en progeny$ (avec les corrolaires, httpd qui tombe, etc). J'ai eu du mal à l'avoir, (c'était pas que /ets/hosts mais j'étais prévenu avec les paquets unstable)

          Debian est il compliant LSB ?
          • [^] # Re: SysV/Mandrake

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

            Je te conseille de lire une vieille news qui cause de la Debian comme standard de base (et où j'avais déjà sévi) à l'adresse suivante http://linuxfr.org/2001/02/27/2499,1,1,0.php3(...) .
            • [^] # Re: SysV/Mandrake

              Posté par  . Évalué à 1.

              La standardisation EST un reel problème, pour tout utilisateur digne de ce nom...

              Ayant été moi aussi victime des éxactions de Mandrake (ne serai-ce que pour choisir les services au démarrage: drakexservices vs. ntsysv), et de la hyerarchie non-standard de la Suze, je suis pour une standardisation poussée...

              Vu le lien, ca sent la Debian... De toutes facons, qu'est-ce qui empèche d'installer rpm sur debian et de régler les pb de libs dynamiques par quelqes liens?
              • [^] # Re: SysV/Mandrake

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

                J'en profite et je réponds aussi au post suivant. La standardisation est le problème de Linux en ce moment et non pas est-ce que si je patch mon noyau 2.2.16 en 2.4.2, j'aurais le droit au support de la carte NVidia GeForce 12 ? Je trouve que seul le noyau tient la route, les distribs font ce que l'on déteste d'un OS devenir propriétaire. Devenir propriétaire, ce n'est pas seulement fermer son code, ça peut aussi être modifier totalement son OS de façon à le rendre inutilisable par des non-initiés. Et pourtant, je ne me onsidère pas comme un non-initié à Unix. Je dirais pour conclure que ceux qui militent (en étant parfois de mauvaise foi) pour leur distrib ne valent pas mieux que ceux qui habitent Redmond, chaque distrib à sa place et chaque place pour une distrib. Si l'on veut de la standardisation, il faut que les concepteurs de distrib arrêtent de faire des trucs dans leur coin en disant "celui qui veut l'utiliser, il peut c'est GPL" mais qu'ils disent plutôt : "On va faire tel truc, est-ce que ça reste du Linux ou bien est-ce que ça devient une marque spécifique de notre distribution".
                Je me rappelle l'époque où les seuls choses qui différenciaient les distribs, c'étaient les softs fournis avec mais que tout le monde utilisait encore un outil unique : le tarball (tar.gz ou tgz pour les incultes).

                PS: J'arrête le pinard le midi parce qu'à chaque fois, je pars dans des élans lyriques.
            • [^] # Sujet polémique ? petit rappel, long.

              Posté par  . Évalué à -1.

              Ta news a suscité 127 commentaires !!!

              On peut en conclure que le sujet est d'actualité, polémique et important.

              Sans vouloir provoquer des flame-wars, je considère que la conception générale de la Debian est une évolution d'un stade supérieur à celle des autres distributions (les commerciales).

              Au début étaient les distributions TarGéZaides à la SLS, Yggdrasil, Slackware. On controle tout, on édite ses fichiers de config à la main, avec un bon vieux éditeur de texte. On est obligé de connaitre les syntaxes des fichiers en question. On se forme+++. Après celles-ci, on sait compiler même un package rare.

              Désormais, les compilations sont simples (merçi autoconf). Le nombre des packages logiciels a subi une croissance exponentielle (à vue de nez, mais personne je crois ne me démentira, sourceforge, freshmeat et la démocratisation des CVS est passée par là, le bazaar s'agrandit). Les petits jeunes font du C à l'école, installent Linux sur leur vieux pentiums, quand ils ne se voient pas proposer des cours sur le développement de device drivers sous Linux (Paris 13, PUB).

              Ensuite viennent Les Red Hat Packages. Ouais, c'est trop fort, ton pompes ton package, tu installes par un rpm -Uvh toto.rpm et puis c'est tout.
              Erreur (que tout le monde à commis, enfin moi si, j'avoue), comme le système de dépendance rale dès que manque un package de librairie (cas le plus courant), à l'installation suivante d'une RedHat like, on installe tout, on a des Gigas partout, alors pourquoi pas. Problème: au bout de quelques mois, on se retouve avec les 72 versions de la libZorglub-2.Y.Z.T, qu'on a dû installer à chaque fois que l'appli Zorglub (qu'on aime bien, on ne se refait pas) est upgradée. Jamais on a effacé la LibZorglub-0.0.1 et les 70 suivantes, toujours inutilisées...

              Et puis un jour, on découvre le système Debian, né dans l'esprit de réveurs, pour qui rien n'est trop dur. Debian, c'est un système de banque de package centralisé, mais poly-miroité-distribué-dans-ton-quartier, c'est 2 familles de packages (en gros), les stables pour les ceusses qui bossent en production, et les unstable pour les ceusses qui surfent on the top of the weave du dernier bidule qui tue. C'est l'installation automatique des dépendances, avec effacemement des vielles lib désuettes (si elles ne sont plus utilisées).

              Debian, est objectivement à un stade d'évolution conceptuelle plus avancée que les autres distributions, parce que son système de package avec la Banque de paquet centraliséé, mais poly-miroitée-distribuée-dans-ton-quartier (indissociable) permet une évolution du système inventée par des ceusses qui en rêvaient.

              Voilà. Je suis personnellement passé par les 3 étapes. Vous devinerez que j'ai rêvé de la troisième étape logntemps avant de me rendre compte qu'elle existait déjà. Debian, j'ai longtemps crû que c'était une distrib comme les autres, en fait non, elle est libre, communautaire, démocratique, à ta vitesse. Tu en fais ce que tu veux, comme tu veux.

              Debian?, j'en suis heureux.
      • [^] # bug

        Posté par  . Évalué à 1.

        Bheu... J'avais mis "Vouloir uniformiser l'intégration des menus, c'est vouloir faire coopérer les équipes de Gnome, KDE etc..." entre i et /i, et ca a disparu...

        (D'ailleurs c'est bien apparu sur linuxfr.linuxfr-news)
  • # diversité

    Posté par  . Évalué à 0.

    Bof bof.

    La diversité n'est pas nouvelle, c'est pas le "phénomène Linux" qui l'a crée. Regardez il y a 10 ans, il y avait déjà pas mal d'Unix. Allez, donnez un chiffre, 20 - 30 en circulation ?

    Ça voulait dire quoi ? Ça voulait dire que les développeur devait faire leur boulot proprement, il fallait ensuite consacrer un moindre effort au packaging qui lui était propre à un système donné (encore que ...).

    Alors ce soit-disant problème de diversité n'existe pas, c'est un mythe.

    Dans un script shell, `cat' c'est `cat', `sed' c'est `sed' ... En C read() et write() font ce à quoi tu t'attends. Est-ce vraiment nécessaire de développer ?

    Oh, un exemple de boite produisant du logiciel de qualité sous Un*x (pas seulement GNU/Linux) : TrollTech avec Qt. Non, franchement j'ai bien d'autre exemples, mais ça devient ridicule : arretez de vous laisser ramolir le cerveau par des journalistes !

    Bon, il me semble tout de même que certains essaient de montrer les bénéfices de la diversité ... mais tout de même.
    • [^] # Re: diversité

      Posté par  . Évalué à 1.

      Dans un script shell, `cat' c'est `cat', `sed' c'est `sed' ... En C read() et write() font ce à quoi tu t'attends. Est-ce vraiment nécessaire de développer ?

      Ohh le rêveur, il croit que le C est portable ! Write once run everywhere !

      Oui oui bien sur 90 % d'un prog en C est souvent portable... mais cela ne suffit pas pour que ça marche partout. Regarde la complexité d'un makefile, penche toi aussi sur des outils comme imake, et tu verras que la portabilité est un pb complexe.
  • # diversité win32.

    Posté par  . Évalué à 1.

    Implicitement, l'auteur de l'article compare la facilité d'installation d'un prg win à celui d'un prog Linux.

    Sans vouloir entrer dans le trol Win/Linux, je tiens à préciser que faire un programme d'installation sous win est loin d'être évident. Il existe une quantité de plateformes différentes. WinNT, 2000 95 98, Me XP, En plus les répertoires d'installations sont différent suivant la localisation de l'OS (common files/ fichiers partagés).
    Viennent ensuite les dépendances de DLL et leur versions.(mfc42 pour ne citer que celle là)
    Puis les enregistrements d'OCX. Que faire lorsqu'il y en a un qui ne veux pas s'enregistrer?

    Ce n'est donc pas plus facile sous win* que sous les différentes distribs. Si l'on veut un prog d'install qui s'adapte sur toutes les plates formes, il faut une réel volonté et c'est une démarche fastidieuse.

    Cependant,je suis d'accord que l'emplacement des fichiers, et l'intégration dans les menus sous Linux doivent être améliorer.
    • [^] # Re: diversité win32.

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

      Je suis tout à fait d'accord avec toi. L'installation de programmes en général et quelle que soit la plateforme est quasiment un boulot à part entière. Le seul cas où ça fonctionne à tous les coups, c'est le bon vieux link statique mais vu les fonctionnalités des programmes aujourd'hui, ça correspond à produire des executables de facilement 15Mo.
      • [^] # Re: diversité win32.

        Posté par  . Évalué à 1.

        C'est un boulot à part entière; ça porte un nom : "l'integration". Prendre en compte les diff plates formes, packager le soft, verifier qu'il ne va pas foutre le bordel avec d'autres etc.....
        C'est un boulot malheureusement pour l'utilisateur, heureusement pour les sociétés de services, qui est souvent negligé....
  • # Diversité

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

    La diversité est un trés bon moteur pour l'innovation. Mais du coté de l'utilisation, les normes sont necessaires. Vous êtes tous contents de pouvoirs codé en C une appli qui sera supportée par toutes les distrib. Imaginer une libc différentes et plus ou moins incompatible par distrib. Les normes C/AINSI et POSIX permettent de développer des logiciels portables. Il reste a permettre une installation portable, autoconf le permet lors de la compilation, mais pour les binaires ? Alien ...
    Pour les administrateurs une base commune, un ensemble de régles d'organisation des distribs est a mon avis le minimum necéssaires. (C'est vrai que si vous n'utiliser qu'une seule distrib ...).
    • [^] # De toute façon diversité il y aura.

      Posté par  . Évalué à 1.

      "pour les binaires ? Alien ... "

      Mais Alien n'a jamais convertit un package i386 en package PPC.
      On touche là à un autre aspect de la diversité qu'offre les logiciels libres. (et où une uniformisation serait vraiment une grosse perte)

      "(C'est vrai que si vous n'utiliser qu'une seule distrib ...)"

      Ah ? Il en existe d'autre ?
      ;)
    • [^] # Re: Diversité

      Posté par  . Évalué à 0.

      c'est important de "pouvoirs codé" des trucs malgré "une libc différentes".

      Une langue commune à tous les Français est à mon avis "le minimum necéssaires". ("C'est vrai que si vous n'utiliser" pas les règles de grammaire/conjugaison/orthographe, on n'est pas sortis de l'auberge...)
      • [^] # Re: Diversité

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

        Si tu n'as pas compris ce qu'il voulait dire, le minimum requis ici, c'est l'intelligence et l'ouverture d'esprit. Alors balances-nous un très, très long post et on corrigera s'il y a besoin. C'est peut-être toi qui m'as déjà allumé l'autre jour sur une faute d'orthographe qui n'en était pas une. Alors, môssieu, ici, on cause, on ne fait pas d'essai littéraire.
        Merci d'avance de poster des choses intelligentes et nécessaires à la communauté.
  • # Banir ceux qui ne respecte pas la LSB

    Posté par  . Évalué à 0.

    Je pense qu'il faudrait de la part des user boycotter (du moins les version commerciale) les distribs qui crachent sur la LSB.

    Pour l'instant, seul SuSE (surtout), Caldera et Turbo sont fervent defendeurs de la LSB.

    Mandrake et Redhat crachent dessus, a vous de decider ...
    • [^] # Re: Banir ceux qui ne respecte pas la LSB

      Posté par  . Évalué à 1.

      >Mandrake et Redhat crachent dessus, a vous de decider ...

      Mandrake a dit dans son interview dans linuxfr qu'il serait conforme au LSB.
    • [^] # Re: Banir ceux qui ne respecte pas la LSB

      Posté par  . Évalué à 1.

      Au lieu de faire de la desinformation consulte un peu :

      http://www.linuxbase.org/(...)

      tu verras que RH et MDK font partie des groupes de reflexion de la LSB.

      Si tu n'es pas convaincu regarde les mails-archives....
      • [^] # Re: Banir ceux qui ne respecte pas la LSB

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

        On peut faire partie d'un groupe de réflexion et faire tourner les choses à son avantage. Par exemple, pour les développeurs qui sauront de quoi je parle, Micro$oft fait partie de l'OMG (Object Managment Group) qui a pour but de promouvoir les méthodes objet standardisées comme CORBA. On voit ce que ça donne, Cro$soft a créé DCOM sur la base de COM (Common Object Model et D pour distributed) qui est incapable de communiquer avec CORBA. Comme quoi, on peut faire partie d'un groupe de réflexion et faire à côté quelque chose de propriétaire, fermé et qui ne respecte pas ce que l'on dit dans le groupe, voire même dire dans le groupe : "nous, on a fait ça et ça marche !!! Essayez-le, c'est cool !!"
    • [^] # Re: Banir ceux qui ne respecte pas la LSB

      Posté par  . Évalué à 0.

      Pourquoi uniquement les versions commerciales?

      Imagine un newbie, qui charge une distib libre et qui est incapable d'installer son soft préferré.
      => effet garanti : Linux c'est de la merde.

      Voila pourquoi il faut un minimum de standardisation (style LSB) pour toutes les distribs. Ca mange pas de pain et ca n'interdit en rien l'évolution des softs et du noyau. (Fixer des règles de grammaire n'a jamais empéché quiconque de créer un nouveau mot :-)

Suivre le flux des commentaires

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