• [^] # Re: Void Linux

    Posté par . En réponse au journal Gestion des services avec runit. Évalué à 2.

    Sur quelle distribution utilises-tu runit ?

    Debian (avec le paquet runit-sysv, du coup je n'utilise pas vraiment le système d'init, et pour l'anecdote, il existe un paquet runit-systemd, pour utiliser la gestion des daemons de runit au-dessus de systemd, comme quoi systemd n'est pas si monolithique que ça. On est vendredi, c'est permis :D), mais je l'utilise aussi sur Devuan et Void.
    Enfin, j'utilise runsvdir, parce qu'en vrai, à part sur void, je n'utilise pas l'init réellement, bien que je me souvienne avoir tenté de porter une de mes Debian perso sur runit.
    J'avais réussi, mais il restait pas mal de trucs sur lesquels je me basais sur les usines à gaz de scripts init.d de Debian et leurs dépendances spaghetti, vu que je n'avais pas (et n'ai toujours pas, en fait) assez de connaissances sur udev, principalement.

    Il me semble que Void Linux utilise runit nativement.

    Void utilise runit comme système d'initialisation et de gestion des daemons par défaut, oui.

    (Tout ça, à moins que tu n’utilises déjà Void Linux et ne parles là que de ce qu’il reste à configurer ; dans ce cas Void Linux serait moins fini que ce que j’aurais pensé.)

    J'aime beaucoup Void pour plusieurs raisons (déjà, elle implémente runit de base, et de manière minimale ce qui est excellent pour comprendre comment marche le système, contrairement au foutoir debianesque auquel je suis «habitué»... mais en plus, il est possible d'utiliser une variante musl, ce qui séduit vachement mon côté qui veut tout faire différemment des autres), mais elle à plusieurs défauts à mon goût:

    • je n'aime pas son système de paquets. Ou, pour être plus précis, je n'apprécie pas l'absence d'outils digne de ce nom pour se balader dans les paquets... Bien sûr, on peut toujours piper dans less et autres, mais je trouve personnellement qu'aptitude est un argument de poids pour utiliser Debian ou une de ses filles;
    • c'est une rolling release, et même si je n'ai jamais eu de problèmes avec void, je ne suis pas super fan de ce modèle, et je ne baserais jamais des systèmes embarqués sur du Void pour cette raison (Debian ne me dérange pas trop malgré quelques points, mais surtout parce que je la connaît plutôt bien et que je suis confiant en mes capacités de réparer la plupart des problèmes);
    • je m'inspire des scripts de void, mais il sont limités. Le seul exemple de logiciel libre qui me vienne à l'esprit et qui ait un vrai besoin de dépendances, c'est un serveur NFS. Si on prend le paquet nfs-utils de void, on constate que nfs-server dépend de statd qui dépend de rpcbind (via un grep -r "sv check "). Il est probable qu'un système qui démarre un serveur NFS se retrouve donc avec une courte phase de "yoyo" pendant laquelle plusieurs des services vont se lancer pour rien. Et NFS, c'est un schéma de dépendances simple, qui n'implique absolument pas que la machine soit capable d'en contacter une autre... auquel cas les choses pourraient être autrement plus chaotique.

    Tout ceci étant dit, je ne connaît pas tant que ça d'applications qui ont vraiment une forte liste de dépendances. En libre, je ne vois que NFS, et c'est parce que je me suis creusé la tête pour te donner un exemple pas trop mauvais...

    Si je parviens à mettre en place un système assez simple et efficace, il n'est pas dit que je ne le partagerai pas avec les gens de Void, bien au contraire.

    Il faut garder à l'esprit que c'est une petite distro relativement jeune (11 ans...) et peu connue, peut-être que personne n'a eu le temps, la motivation ou l'idée de proposer un tel mécanisme: après tout, une des idées les plus intéressantes de systemd est justement d'avoir une configuration déclarative, c'est à ma connaissance le 1er à le faire sous linux.