Quelque chose comme YaST pour les dissortingbutions non SUSE

J'utilise actuellement openSUSE 13.1 KDE. La grande raison pour laquelle j'aime openSUSE est YaST.

YaST fait beaucoup et facilite de nombreuses parties de la vie. YaST ne me permet pas seulement graphiquement d'append / supprimer / gérer des référentiels et des packages. Il me permet de gérer mon pare-feu, mon kernel, mes services, mes groupes, sudo et bien plus encore à partir d'une interface graphique. Mon préféré est que YaST me permet de configurer Apache Virtual Hosts en quelques clics de souris sur mon bureau local (je suis un développeur web).

Maintenant, je peux et je sais comment gérer la plupart de ces choses dans le terminal, mais parfois j'aime l'interface graphique.

Y a-t-il des alternatives à YaST là-bas? Soit disto agnostique ou spécifique à une distro (n'importe quelle distro linux). Je veux juste voir ce qu'il y a d'autre là-bas.

Pourquoi ne pas dépendre de YaST

Il n'y a rien qui fait ce que YaST fait pour les dissortingbutions non-SUSE. Il y a peu d'outils ici et là mais rien de plus complet. C'est une bénédiction et une malédiction. Les gens qui dépendent de YaST ne savent pas comment fonctionnent les choses sous le capot.

Je prendrais le time de "apprendre" comment les choses fonctionnent plutôt que de chercher une autre béquille. Je ne dis pas cela pour être méchant, j'avais l'habitude d'utiliser YaST dans mon travail de jour et j'apprécie ce qu'il fournit mais c'est une béquille.

Alternatives

1. Yast4Debian

Si vous êtes vraiment motivé, je suis tombé sur ce projet qui semble être en attente, mais pourrait être une bonne base de code pour vous de revenir si vous cherchez vraiment à développer quelque chose comme YaST pour d'autres dissortingbutions.

  • YaST4Debian

2. YaST dans Ruby

Il semble également que la prochaine version de YaST pour SuSE 13.1 ait été scope sur une implémentation Ruby, ce qui pourrait faciliter le portage grâce à cet effort.

  • Prochainement: openSUSE 13.1 avec YaST dans Ruby
  • openSUSE: Portage de YaST vers Ruby

extrait

Pourquoi vouliez-vous porter YaST à Ruby?

YaST a été développé dans YCP – un langage personnalisé, simple et inflexible. Pendant longtime, de nombreux développeurs de YaST ont estimé que cela les ralentissait. Il ne supportait pas beaucoup de concepts utiles comme la POO ou la gestion des exceptions, le code écrit était difficile à tester, il y avait des fonctionnalités ennuyeuses (comme une tendance à être «robuste», ce qui signifie vraiment cacher des erreurs). Cependant, les développeurs originaux de YCP sont passés à d'autres projets et personne n'était prêt à intervenir et à améliorer la langue.

Il était évident que le seul moyen de sortir de cette situation était de changer l'implémentation en une autre langue largement utilisée (la plupart des gens pensaient aux langages de script, comme Ruby ou Python, qui offrent une grande flexibilité et un code plus court que C ++ ou Java, par exemple) . Un tel changement signifierait que nous n'aurions pas besoin de maintenir notre propre langage personnalisé. Cela nous permettrait également d'utiliser de nombreuses bibliothèques tierces et de consortingbuer beaucoup plus facilement au projet pour les étrangers. Les gens n'auraient pas à apprendre une toute nouvelle langue à cause de YaST.

Changer le langage de mise en œuvre d'une base de code aussi volumineuse que YaST représente un énorme effort. Il n'est donc pas étonnant que les développeurs n'en aient parlé que pendant des années. Il fallait quelqu'un de l'extérieur de l'équipe (David) pour décider que parler ne suffisait pas et nous devrions le faire 🙂

Comment étaient les résultats?

Bon 🙂 Nous avons traduit 96 modules YaST au total et actuellement il n'y a pas de code YCP utilisé dans YaST sauf quelques endroits obscurs comme des exemples dans la documentation (qui doivent être réécrits manuellement pour refléter les meilleures pratiques). YCP est également utilisé comme format de serialization pour certains files de données et pour la communication entre les composants YaST, mais cela n'affecte pas le développement et nous nous en débarrasserons probablement avec le time.

  • le portail YaST sur le wiki openSUSE
  • infos développeur ici

3. Yast pour Enterprise Linux (RHEL + Incassable)

Oracle a ce projet hébergé qui semble être une version modifiée de YaST spécifiquement destinée à RHEL + Unbreakable Linux. Je suppose que vous pouvez ensuite l'utiliser pour CentOS et éventuellement Fedora aussi.

  • Projet: Yast

Je ne suis pas sûr de son statut, mais cela pourrait valoir le détour. Bien qu'il soit probablement développé dans la base de code YaST d'origine, vous devriez peut-être jeter un oeil à l'implémentation de Ruby en premier.

Il n'y a rien qui se compare vraiment à YaST pour CentOS ou Debian. Les applications les plus proches pourraient être celles-ci:

  • YUMEX : Un gui pour YUM

  • Webmin

Webmin est assez puissant et devrait faire beaucoup de ce que YaST peut faire (v hosts, firewall, assemblys réseau).

Il existe plusieurs autres options , comparables à Webmin.