1 points par GN⁺ 2023-12-18 | 1 commentaires | Partager sur WhatsApp
  • Chimera est un OS polyvalent basé sur Linux né d’une insatisfaction vis-à-vis de l’écosystème Linux existant, avec l’ambition d’offrir des fonctionnalités pratiques tout en conservant simplicité et transparence
  • Il s’agit d’une distribution construite entièrement depuis zéro, qui cherche à concilier simplicité conceptuelle et facilité d’usage grâce à de nouveaux outils et outils d’espace utilisateur (userland)
  • Ses composants clés combinent les outils de base de FreeBSD, la chaîne d’outils LLVM et la bibliothèque C Musl, soit une configuration différente de celle des distributions Linux classiques
  • Bien qu’il s’agisse d’une distribution binaire, elle fournit aussi un système de construction de paquets source pour prendre en charge le packaging de nouveaux logiciels et les builds personnalisés
  • Il cible plusieurs architectures de processeurs, dont Intel/AMD, ARM AArch64, POWER et RISC-V, et cherche à élargir la disponibilité des paquets grâce à un système de build centralisé

Objectifs et orientation de conception

  • Chimera est un système d’exploitation polyvalent basé sur Linux qui vise la simplicité, la transparence et une faible barrière à l’entrée
  • Sans renoncer au pragmatisme ni à la richesse fonctionnelle, il cherche à associer simplicité conceptuelle et confort d’utilisation grâce à une conception logicielle soignée et de haute qualité
  • Plus de détails sont disponibles dans Read more

Principales caractéristiques de la distribution

  • Outils d’espace utilisateur alternatifs

    • Il combine les outils de base de FreeBSD, la chaîne d’outils LLVM et la bibliothèque C Musl
    • Cette combinaison vise à offrir une expérience utilisateur différente des distributions existantes ainsi que des avantages clés
  • Un système propre et cohérent

    • Il cherche à éliminer autant que possible les vestiges legacy
    • Son objectif est un système d’exploitation moderne, polyvalent et complet
  • Build possible depuis les sources

    • Chimera est avant tout une distribution binaire
    • Il fournit un système de construction de paquets source afin de faciliter le packaging de nouveaux logiciels et la création de paquets personnalisés
  • Prise en charge de plusieurs architectures

    • Il peut être utilisé sur divers processeurs, notamment Intel/AMD, ARM AArch64, POWER et RISC-V
    • Un système de build centralisé permet de rendre les paquets disponibles dans plusieurs environnements

1 commentaires

 
GN⁺ 2023-12-18
Avis sur Hacker News
  • Si vous utilisez depuis longtemps les outils GNU (GNU grep, sed, less, awk, find, tar, etc.), cela peut être bien plus frustrant qu’on ne l’imagine
    À l’époque d’UNIX, chaque outil en ligne de commande avait de subtiles différences, ce qui était vraiment pénible, et c’est aussi pour cela que les outils GNU sont devenus populaires avant même Linux
    En les installant sur n’importe quel UNIX — irix, hpux, sun, etc. — on pouvait éviter les différences étranges entre hpux grep et irix grep, par exemple

    • Si la principale préoccupation est la compatibilité d’API des utilitaires CLI, comme l’espace utilisateur de base de Chimera serait fourni par “FreeBSD, NetBSD, OpenBSD”, cette friction devrait, en théorie, être comparable à celle que l’on rencontre aujourd’hui avec BSD ou Mac
    • J’ai installé des ports GNU sur Solaris à plusieurs reprises
      En revanche, les serveurs Aix et HP-UX n’étaient pas sous mon contrôle ; les scripts devant fonctionner sur tous les serveurs devaient donc rester compatibles POSIX ou être écrits en Perl
    • Je trouve encore étrange et agaçant que ces commandes ne soient pas installées par défaut avec un nom préfixé
      awk est souvent installé de façon explicite sous des noms comme gawk ou mawk ; ce serait bien que tar soit couramment utilisé de la même façon, avec bsdtar ou gtar
      Dans nixpkgs, il est facile de préciser la version exacte selon le contexte, mais dans la plupart des autres environnements, cela relève surtout de la supposition
    • Parmi les différentes implémentations d’Un*x, c’est souvent tar(1) qui m’a fait trébucher, et, curieusement, les toutes petites différences d’awk(1) étaient devenues des réflexes
      Sur les machines Solaris où j’avais les droits root, j’ai pris l’habitude d’installer immédiatement gtar, notamment à cause du “/” initial dans les archives
      Le deuxième point le plus difficile était de devoir gérer SunOS et HP/UX au travail, et Ultrix en dehors ; le pire a été de tomber quelques fois sur MS-DOS et de ne pas comprendre pourquoi les frappes clavier n’étaient pas mises en tampon
    • Ces différences existent encore entre GNU Awk et le BSD awk d’OSX
  • J’aime plusieurs choix de conception de Chimera Linux, en particulier le système de packaging/build, mais comme j’utilise actuellement Alpine Linux sur mon PC principal, je trouve toujours difficile de justifier musl
    J’aime les logiciels petits, simples et corrects, mais malgré ces qualités, musl s’est révélé dans mon expérience plus lent que glibc, et parfois lent à des endroits difficiles à prévoir
    Porter des logiciels vers musl entraîne pas mal de petits problèmes, et la plupart des projets upstream sont réticents à accepter les correctifs, ce qui crée une charge de maintenance pour la distribution
    Il arrive aussi que des choses cassent subtilement à l’exécution : par exemple, les builds Firefox d’Alpine et de Chimera présentent les deux mêmes plantages que l’on ne voit pas avec les builds officiels de Mozilla ni avec ceux d’Arch Linux
    Au final, pour des tâches comme les builds de Mozilla Firefox, on finit par dépendre beaucoup trop souvent d’un chroot glibc

    • Parfois, voire souvent, la lenteur de musl peut être due uniquement à son allocateur mémoire
      De mémoire, Chimera utilise un allocateur différent de celui par défaut de musl
    • C’était similaire avec Alpine
      musl finit par causer bien plus de problèmes que ce qu’il apporte
    • musl est en pratique un choix obligatoire
      Avec la configuration de la chaîne d’outils, les autres options ne s’intègrent pas bien, et glibc ne va pas avec clang+compiler-rt
      glibc n’a commencé que récemment à se compiler avec clang, mais suppose toujours un runtime centré sur gcc ; dans les faits, glibc fait un dlopen de libgcc_s
      Les autres libc risquent d’être bien pires côté support
      La difficulté de porter des logiciels vers musl est en partie exagérée
      La plupart des logiciels n’ont pas besoin d’être portés au départ, et les upstreams ne sont pas si réticents que cela
      S’il y a des plantages spécifiques dans Firefox, je me demande aussi s’ils ont été signalés
      La lenteur vient généralement de l’allocateur par défaut, ce qui ne concerne pas Chimera, et dans certains cas cela peut même être plus rapide
    • En dehors de Chimera, Void Linux vaut aussi le coup d’être essayé
    • C’est un peu hors sujet, mais je me demande s’il existe des ressources ou conseils à recommander pour commencer à utiliser Alpine sur son PC principal
      J’ai une machine System76 et j’aimerais tenter l’expérience
  • Je ne suis pas entièrement d’accord, mais la position de ce projet sur systemd est la plus mûre, nuancée et équilibrée que j’aie vue jusqu’ici
    https://chimera-linux.org/docs/faq#what-is-the-projects-take...

    • C’est un peu un autre sujet, mais je me demande s’il existe, à l’exact opposé, une distribution qui adopte pleinement les composants de systemd
      Ayant beaucoup travaillé avec des serveurs Linux et les abordant de façon très pragmatique, je trouve que systemd a simplifié beaucoup de choses, qu’il est configurable, maintenu, souvent mis à jour et correctement standardisé
      Je comprends aussi ceux qui veulent garder un sentiment de contrôle, mais moi je veux un ordinateur fiable qui fonctionne d’une seule manière
      Après tout, les serveurs se traitent comme du bétail
      J’aimerais donc quelque chose qui ressemble à une expérience de pensée tirée du blog de Poettering : image système immuable, démarrage signé, et services systemd de haut en bas
    • Ce document est vraiment bien, mais le passage disant que « systemd est écrit pour abuser délibérément de toutes les extensions non portables du monde » mériterait d’être davantage décomposé
      Il faudrait distinguer les fonctionnalités du noyau propres à Linux des extensions en espace utilisateur, autrement dit GNU contre POSIX
      Utiliser des fonctionnalités du noyau propres à Linux comme cgroups est une bonne chose sur les systèmes Linux
      Autrefois, il était courant que sshd devienne lent sous forte charge, au point de rendre la connexion difficile ; systemd configure le système de façon à ce que cela arrive moins souvent
      Pour les extensions en espace utilisateur, j’aurais aimé que systemd voie comme un gain net le fait de s’appuyer sur des outils et ensembles de fonctionnalités plus petits, mais cette page ne semble pas aller dans ce sens
      Je me demande ce qui s’est passé de ce côté-là
    • C’est aussi la position de Void Linux
      Void ne fait pas cela simplement pour être sans systemd, mais pour préserver l’héritage Unix de petits composants faiblement couplés, rester raisonnablement fidèle à POSIX et à la portabilité (xbps), et fournir un système Linux où l’utilisateur peut choisir sa libc
    • Je suis un grand partisan de systemd, mais avant systemd il y avait aussi upstart de Canonical, utilisé dans Ubuntu
      systemd a été créé pour corriger les défauts d’upstart
      L’objectif de Chimera, qui consiste à réimplémenter indépendamment, à sa manière, les fonctionnalités réellement utiles de systemd, est excellent
      La plus grande valeur de systemd tient au grand nombre de fichiers de service déjà écrits, et j’ai moi-même une douzaine de services dans mon répertoire ~/.config/systemd
      Je pense donc qu’il y a de la valeur à être compatible avec systemd
    • Je suis un grand partisan de systemd, mais avant systemd il y avait aussi upstart de Canonical, utilisé dans Ubuntu
      systemd a été créé pour corriger les défauts d’upstart
  • Pour comprendre l’intention de Chimera Linux, il faut le voir comme Void Linux poussé un cran plus loin
    Son fondateur était auparavant mainteneur PPC de Void, et le choix des architectures prises en charge par Chimera se comprend aussi dans ce contexte
    Selon mon interprétation, Chimera est le système qu’un utilisateur de FreeBSD voudrait s’il devait utiliser Linux
    Il partage le même compilateur et le même espace utilisateur, et son système de build donne aussi une impression familière
    Au début, le choix de GNOME peut sembler étrange, mais Chimera cherche à éviter beaucoup d’héritage legacy et repose dès le départ sur PipeWire et Wayland

    • Ça a l’air plutôt bien, mais le choix de GNOME me rend un peu moins enthousiaste
      Je me demande si COSMIC de System76 finira un jour par être suffisamment établi pour être envisagé
      Ce serait bien de voir émerger un nouvel environnement de bureau stable, pratique, axé sur la productivité et centré sur l’utilisateur
      Plasma a pas mal de bugs, GNOME ne me semble ni pratique ni centré sur l’utilisateur, et les autres semblent manquer, à des degrés divers, de finition et de maintenance
      System76 a les moyens d’investir là-dedans, et semble avoir la bonne motivation pour créer quelque chose qui réponde aux besoins et au ressenti des utilisateurs plutôt qu’aux idéaux des développeurs ; avec le temps, cela pourrait donc devenir un concurrent majeur
  • C’est sympa, mais je m’inquiète chaque fois que je vois un projet qui semble vouloir devenir une distribution grand public et conviviale
    J’ai vu à quel point Manjaro s’est donné du mal avec des objectifs du genre « la simplicité pour le plus grand nombre », et combien il reste pourtant de problèmes
    Je me demande si c’est une distribution expérimentale/de loisir, ou si elle vise quelque chose que même une grand-mère pourrait utiliser
    Si je devais choisir ça plutôt qu’un BSD, j’envisagerais assez sérieusement celle-ci ou quelque chose de similaire, mais ça ne ressemble pas à un remplaçant d’Ubuntu ou de Windows
    La simplicité n’est pas un critère pris en compte par l’utilisateur final lambda
    En tant que développeur qui aime les logiciels modernes et s’intéresse peu aux environnements légers adaptés aux hackers, il est très peu probable que j’utilise quelque chose qui n’atteint même pas 1 % de part de marché sur le desktop
    Les gens qui ne sont pas des inconditionnels d’Arch/Kali/BSD/suckless ont un sens très développé du « ah, c’est la même impression que quand je pense à une voiture de projet, il faut que je m’en tienne à l’écart »
    Ça peut être un projet excellent et précieux, mais attirer l’attention au-delà des gens qui aiment bricoler sera un combat difficile, et ce genre de chose prend beaucoup de temps : si l’on ne gère pas ses attentes, l’absence de succès peut être très décevante
    J’ai moi aussi lancé plusieurs nouveaux projets, et le processus qui consiste à réaliser qu’ils n’iront probablement nulle part dans un avenir proche a été assez difficile
    Pour obtenir une adoption grand public, il faudrait à mon avis que tout l’écosystème logiciel lui-même change
    Je pense que le portage de grosses applications actuelles comme Steam ou Chrome poserait problème
    Et en plus, le linking dynamique ne me paraît pas très adapté à une distribution conviviale destinée aux utilisateurs finaux
    Sans quelque chose comme Snap ou Flatpak, il me semble difficile de fournir de gros paquets tiers modernes et complexes sans problèmes de compatibilité occasionnels
    Mon expérience des distributions fondées sur le linking dynamique n’a pas été globalement horrible, mais il y avait toujours tel ou tel souci
    Je me demande aussi s’il y a du sandboxing comme AppArmor

    • Si l’on veut quelque chose qu’une grand-mère puisse utiliser, il faut utiliser ce que tout le monde utilise
      Chimera est une distribution expérimentale de loisir, assez niche et à rebours de plusieurs standards
      On tombera toujours sur des problèmes propres à Chimera
      En échange, on dispose d’un système de build transparent sur lequel on peut mettre les mains
      Pour Manjaro, je ne pense pas qu’il soit difficile de faire une distribution basée sur Arch qui fonctionne bien
      C’est juste que les développeurs de Manjaro n’y arrivent pas
    • Si l’on s’attend à ce qu’un projet réussisse, on finit généralement déçu
      Parce que la plupart des projets ne réussissent pas
      Il faut faire ce genre de choses parce qu’elles sont utiles ou amusantes pour soi, pas parce qu’on veut les faire réussir
      Je trouve aussi très bien les projets qui ciblent un public précis, plus hobbyiste
      Tous les projets n’ont pas besoin d’être pour tout le monde
    • Le site ne donne pas l’impression de vouloir devenir un système d’exploitation grand public
      Le marketing ressemble plutôt à « une distribution légère pour hackers utilisant musl, mais plus simple que les autres de la même catégorie »
      Ce serait bien que les distributions Linux puissent se promouvoir auprès des utilisateurs Linux existants sans créer accidentellement ce genre de confusion dans les médias tech non Linux
      Beaucoup d’utilisateurs Linux ne souhaitent pas que leur système d’exploitation devienne très populaire
      Parce qu’avec plus de popularité, il deviendrait réellement pire sur plusieurs aspects
      « L’année du desktop Linux » et les discussions étroites sur les faiblesses du produit par rapport à Windows viennent généralement des nouveaux utilisateurs et des médias tech
      Fedora parvient assez bien à équilibrer ce problème d’image publique
      Sur la page d’accueil, il est mis en avant comme destiné à « toutes sortes de développeurs et de créateurs », mais Fedora Workstation est en réalité proche d’une distribution facile pour presque tout le monde, si bien que la page « Is Fedora For Me » explique qu’elle peut aussi convenir à des non-développeurs curieux ou passionnés par l’informatique en général
      La citation dit aussi que Fedora est conçu pour les utilisateurs d’ordinateurs curieux et désireux d’apprendre ; il ne conviendra peut-être pas à tout le monde, mais si l’on veut un Linux stable prenant en charge le matériel récent et que l’on souhaite contribuer à la communauté FOSS, il peut être le système idéal
    • Je ne suis pas sûr qu’il faille ranger Arch dans ce groupe
      Dans les statistiques Steam, il est plus populaire qu’Ubuntu, et SteamOS n’y est même pas inclus
  • « Un système simple n’a pas besoin d’exiger une configuration et une personnalisation sans fin pour être pratique » et un espace utilisateur alternatif ne vont pas très bien ensemble
    Parce que n’importe quel espace utilisateur alternatif cassera beaucoup de choses, et finira par nécessiter de vastes ajustements

    • Les deux sont compatibles, mais pas de la manière que tu imagines
      Chimera est conçu pour que tout ce que l’on installe depuis les dépôts fournisse une configuration qui fonctionne immédiatement
      Si l’on veut un desktop, on l’installe et il fonctionne ; il n’est pas nécessaire de mettre les mains dedans pour configurer dbus, l’audio, le Wi-Fi/Bluetooth, etc.
      Le plus important, c’est que l’installation est structurée pour être cohérente, déterministe et auditable
      Elle ne dépend pas de hooks shell complexes ni de ce genre de « correctifs » ; la plupart des paquets se configurent par simple extraction
      Bien sûr, si l’on fait entrer des scripts shell tiers ou ce genre de choses, on risque de rencontrer des problèmes de compatibilité, mais cela pourrait arriver moins souvent qu’on ne l’imagine
    • Si c’est un remplacement, mais globalement compatible, il ne semble pas y avoir grand-chose à ajuster
      S’il est vraiment différent, il y aura surtout des choses à apprendre avant même d’en arriver aux ajustements
  • Chimera est développé par la personne qui avait porté Void Linux sur PowerPC
    https://web.archive.org/web/20230811081600/https://voidlinux...
    https://voidlinux.org

  • J’aurais été beaucoup plus enthousiaste si le projet n’avait pas semblé surfer sur l’emballement autour de Wayland
    Il me semble qu’ils ont pris beaucoup de bonnes décisions : assez simple sans l’être trop, et suffisamment soucieux de la rétrocompatibilité sans traîner trop de legacy ; mais personnellement, Wayland ne me paraît pas encore correspondre à ce même équilibre

    • La bonne nouvelle, c’est que le dépôt contrib contient la distribution complète de xorg, et il n’est pas prévu qu’elle disparaisse de sitôt, peut-être même jamais
    • Les grandes entreprises semblent toutes être 100 % pour Wayland
      Indépendamment de la qualité intrinsèque de Wayland, rompre la compatibilité avec elles semble pénible
  • Le point de vue sur SystemD est intéressant
    Personnellement, je le trouve très utile, mais l’un de ses gros défauts en tant que projet est, pour reprendre l’expression de Benno Rice, qu’il est agressivement réservé à Linux
    Cela dit, les choix logiciels de Chimera semblent empêcher l’utilisation de systemd, et la phrase de la FAQ disant vouloir « implémenter de manière indépendante les fonctionnalités utiles de systemd, à sa façon » résume bien cela
    Je me demande s’il est possible de porter SystemD vers une autre pile logicielle
    Plutôt que de réécrire littéralement SystemD, tenter de le porter me semblerait suffisamment utile, et cela pourrait satisfaire à la fois ses partisans et ses opposants
    Bien sûr, l’apparition d’un produit concurrent faisant la même chose pourrait aussi mener à de futures innovations

    • SystemD évolue trop vite, est trop dogmatique et couvre un périmètre trop large
      Donc même les personnes capables de le porter auront probablement davantage envie, en pratique, d’utiliser des remplaçants partiels comme dans ce projet plutôt que de faire ce travail
    • Personne ne va utiliser SystemD sur Mac ou Windows, donc je ne vois pas pourquoi le fait qu’il soit réservé à Linux serait important
  • Je ne sais pas si le fondateur apprécierait, mais ma façon préférée d’utiliser Chimera sur le desktop actuellement consiste à y installer une distrobox Arch Linux
    Cela permet de profiter du système Chimera de base tout en ayant un accès immédiat à l’ensemble du dépôt Arch et à l’AUR
    Les applications qui posent problème avec MUSL peuvent aussi tourner simplement avec glibc dans la distrobox, et comme Distrobox transmet Wayland, les applications graphiques fonctionnent très bien
    L’objectif est d’exécuter autant de choses que possible nativement sur Chimera, mais parfois il faut juste terminer autre chose
    Le dépôt Chimera ne contient pas distrobox, mais il inclut podman, ce qui règle l’essentiel
    En tout cas, cela fonctionne bien, et j’écris d’ailleurs ceci depuis Chimera
    Certaines personnes préfèrent Flatpak, mais j’aime davantage la gestion de paquets à l’ancienne
    Flatpak me paraît trop lourd et opaque, même si je sais que les avis peuvent diverger
    Distrobox convient clairement mieux aux tâches en console
    C’est aussi un outil pratique pour lancer rapidement des sandboxes et des environnements de développement temporaires
    Arch n’est qu’un choix personnel ; j’aurais aussi bien pu choisir Void, Debian ou autre chose