You are here -> Home Logram et son site » Testez Logram, en vrai !

Testez Logram, en vrai !

Le 7/03/2010 à 14h56 by steckdenis, in Logram et son site, 7 commentaries

Bonjour :) ,

Aujourd'hui est un autre de ces grands jours, sauf qu'aujourd'hui, il est encore plus grand.

En effet, à partir de maintenant, on pourra dire aux gens «Je connais le projet Logram. Tu veux tester ? B-) ». Oui, Logram est maintenant installable, et cet événement mérite une news digne de ce nom, avec rappels, faits historiques, jeux de mots, etc.

Les débuts de la distribution

En octobre 2008, il y a donc assez bien longtemps, la fameuse news «Logram : OS, Distro ou Environnement de bureau», ayant amené plus de 150 commentaires, a été publiée. C'était en effet la fin de Logram OS, et le début d'une toute autre histoire.

Nous nous étions d'abord mis d'accord pour utiliser uniquement le noyau Linux, puis on s'est rendu compte qu'il n'y avait que du contre (incompatible avec tout, truc difficile à gérer). Nous nous sommes alors dirigé vers un environnement de bureau, et nous avons rassemblé des idées (languettes, menu rond, etc). Cet environnement de bureau est encore toujours en développement.

L'idée était d'accompagner l'environnement de bureau d'une distribution, permettant de le faire connaître, et de correctement l'intégrer.

Vers février 2009, j'ai (steckdenis) commencé à coder un tout petit gestionnaire de paquets Setup. Linkdd pourra s'en rappeler, je l'ai codé à la Rache en un week-end (on avait parié dessus, j'ai gagné :D ). Il savait installer des paquets, en supprimer, et peut-être même les mettre à jour.

J'ai donc créé les premiers paquets, de très basse qualité. Mais j'étais arrivé jusqu'à Qt, Xorg, Logram DE et Setup, donc c'était très bien. Malheureusement, quand je dis mauvaise qualité, c'est vraiment mauvais. Pas de symboles de débogage, la moitié des applications qui ne se lancent pas, etc.

Finalement, j'abandonne et reviens du côté de Logram DE. Je me rend compte qu'il y a des problèmes, et décide de le refondre. Quelques semaines plus tard, un nouveau Logram DE fait surface, plus joli, plus respectueux des standards, plus souple.

Cet environnement est développé pendant quelques mois, et présenté sur Linuxfr le jour de la première année de Logram, le 4 avril 2009. L'opération est couronnée de succès, 70 000 personnes visitent le site !

J'en arrive alors à trouver Logram DE un peu ... spécial, et me dis qu'il faudrait en refaire une partie. Pas tout ! Seulement une partie, la bibliothèque de base. Je recrée des machins intéressants (gestion des icônes, abstraction du chemin d'accès des fichiers, etc), mais décide finalement que KDE 4.2 (à cette époque) est suffisamment bon pour être notre environnement de bureau. J'ai également eu peur que Qt passe en version 5, détruisant notre travail.

Quoiqu'il en soit, je me reconcentre sur la distribution. Après quelques semaines d'utilisation de Gentoo, je trouve vraiment très bien le fonctionnement de son gestionnaire de paquets. Je crée donc Setup 2, un bousin énorme gérant des caches en XML, des paquets sources ou binaires, la compilation automatique (avec informations sur l'avancement), solveur de dépendances SAT, etc.

Mais finalement, il y a un problème bloquant. En effet, pour compiler des paquets, les dépendances doivent être installées dans le bon ordre. Le solveur SAT ne le permet pas. Setup s'effondre à nouveau, et je décide de baser Logram sur Debian.

(Pendant ce temps, Logram DE se développe doucement). C'est la période de juillet-août, les vacances. J'ai plein de temps, et me lance dans le codage de ce site web, la 4ème version, tant attendue. Je profite également de ce temps pour penser à un nouveau gestionnaire de paquets, Debian étant un peu difficile à gérer, et surtout, je n'ai pas envie de faire un Ubuntu-like (fork de Debian avec des artworks et du marketing derrière).

Vers septembre, je me lance dans la construction de Setup, l'actuel. Cette fois-ci, tout est parfaitement pensé. Je repose sur un format de base de donnée extrêmement performant et sur un solveur maison, complet, par branches, et ordonné :) . Bref, le caviar des solveurs, et extrêmement rapide. Il est décrit ici.

Le développement avance petit à petit, je poste des news, on me donne des idées. Setup installe bientôt son premier paquets, puis je rajoute un système de communications, de dépôts, puis je fignole tout. Sort alors Setup 0.1-alpha0, première version «testable». Vient ensuite la suppression des paquets, leur mise à jour, et un gros nettoyage du code, ainsi qu'un changement du format des paquets. Sort alors Setup 0.1-alpha1, qui ne doit pas avoir 50% de son code commun à l'alpha0.

Puis, j'essaie de trouver un algorithme de différences binaires parfait. J'utilise tout un tas de technique, mais ne trouve rien de rapide. Je passe tout janvier à ça, en ajoutant quelques fonctionnalités à Setup (paquets orphelins, paquets source, triggers). Finalement, en février, je décide de mettre ça de côté.

Construction de la distribution

Je poste alors une news, il n'y en avait plus eu beaucoup, expliquant ce qu'il s'est passé en janvier 2010. J'annonce également le début de la construction des paquets, Setup étant relativement avancé, et moi incapable de voir ce qui lui manque sans l'utiliser pour du vrai.

Globalement, j'ai été très agréablement surpris. Pendant le mois de construction, je n'ai du rencontrer que 2 ou 3 bugs, et 1 seule fonctionnalité m'a manquée (les triggers, rajoutés en 30 minutes). Bref, Setup était déjà très bon. Depuis, j'ai ajouté deux-trois bricoles, comme des scripts d'aide, de petits fonctionnalités, de petits changements.

Le début de la construction était chouette et super rapide. En deux jours, j'ai une LFS avec Xorg, Qt et Setup dessus. Super simple, il suffit de copier/coller les instructions.

Malheureusement, ça se gâte ensuite. Il faut en effet créer les paquets, c'est à dire créer un script pour les télécharger, patcher et compiler. Il faut ensuite les découper en petits paquets source, pour bien séparer les différents éléments. C'est une horreur, avec ces empaqueteurs qui mettent dans un paquet source des dizaines de choses (e2fsprogs qui vient avec libuuid, libblkid, etc). Il faut ensuite documenter le tout, rédiger les descriptions, etc.

En moyenne, un paquet source fait 3 paquets binaires : le programme, la documentation et les fichiers de débogage. Le dépôt contient 63 paquets sources, et 215 paquets binaires, c'est dire.

Une fois les paquets créés, il faut ensuite s'arranger pour que tout démarre. Erreurs dans Init-ng, fichiers manquant, scripts pas lancés, incompatibilités avec l'initrd d'ArchLinux utilisé par Logram, tout y est passé. Deux semaines, je crois, sont passées là-dedans.

Le résultat

Heureusement, tout ça est passé maintenant. Je vous propose d'installer Logram, en utilisant les paquets créés.

Certes, il n'y a pas encore grand-chose, mais tout de même. Logram est déjà quasiment utilisable, il fournit en effet Vim, Curl, GCC et des outils pour gérer une connexion Internet. Vous pouvez donc télécharger les programmes qui manquent et les compiler.

Setup n'est pas encore empaqueté, donc il est encore impossible de créer des paquets depuis Logram, mais c'est une histoire de jours. En effet, il faut «juste» empaqueter Xorg ainsi que Qt, mais c'est un beau morceau tout de même (Xorg a plein de dépendances, Qt aussi). Viendra ensuite l'empaquetage de Logram DE et d'un petit gestionnaire de connexion (SLiM), pour permettre d'utiliser Logram graphiquement.

Viendra alors l'énorme KDE et ses moultes dépendances, pour avoir un environnement complet et utilisable.

Mais il faut d'abord consolider Setup et son installation, car il est encore facile de casser son système. La moindre erreur dans un script d'installation bloque celle-ci, et peut rendre Setup inutilisable. Il faut donc supprimer /var/cache/lgrpkg/db/installed_packages.list, "setup update", et réinstaller ses paquets (pour qu'ils soient à nouveau dans la base de donnée).

Mais en attendant, testez Logram. Il se peut qu'il y ait plein de problèmes, postez-les dans les commentaires de cette news (pas les demandes pour le moment, je ne recois pas de mails quand il y a un message), et je verrai si on sait les résoudre facilement :) . Ce sera une bonne occasion pour tester la mise à jour dans Setup.

Ah oui, partout où vous lancez Setup, utilisez GDB. Le moindre plantage doit être récupéré :) . «setup -R /truc add machin» devient «gdb --args setup -R /truc add machin» ;) .

Bons tests.

Commentaries

Author Message
code lyoko fan
# le 7/03/2010 à 20h50
Dev de Logram DE, quand il peut...
Website
Group : Codeur

Super tout ça, seul petit problème, Logram DE est en pleine refonte (Je cite Léo : "le DE 1 est dans un état épouvantable !"). On n'as pas trop envie de fournir une version pleine de bugs...

Continue comme ça (surtout si Logram DE devient le future DE principal :-° )

steckdenis
# le 7/03/2010 à 20h55
Ça marche !
Avatar
Group : Administrateur

Ce sera le Logram DE d'il y a un an qui sera repris, celui de la news sur Linuxfr. Je l'avais déjà dit :) .

KDE le fait depuis 10 ans.

jokester
# le 8/03/2010 à 22h55

Avatar
Group : Member

Je testerai ça à l'occasion, jeudi sans doute, rapport de bug à l'appui. Bon courage pour la suite !

danman
# le 11/03/2010 à 18h19
Heureux d'être là
Group : Member

j'attend de voir le résultat final pour me prononcer :) (manque de temps)

Lyaskator
# le 12/03/2010 à 21h41
Heureux d'être là
Group : Member

Moi je dis : bravo. Je testerai bientôt.

steckdenis
# le 12/03/2010 à 22h28
Ça marche !
Avatar
Group : Administrateur

J'en profite pour dire que l'empaquetage de Xorg avance, mais qu'il a plein de dépendances (libxml2, Python, libpng, freetype, ed (éditeur), et encore quelques autres.

Et puis, il y aura Qt :-/ . Surtout que pour que KDE marche, il faut son module SQL MySQL, donc je vais devoir empaqueter MySQL.

On aura normalement un Logram DE empaqueté pour le 4 avril, date des deux ans de Logram. Il faudrait vraiment beaucoup de chance pour avoir KDE à cette date, mais je préfère prendre mon temps pour faire de beaux paquets :) (je ne suis pour le moment pas satisfait de GCC, de e2fsprogs et de Python, les autres vont plus ou moins).

KDE le fait depuis 10 ans.

Hadware
# le 14/03/2010 à 11h24
Mort aux cons!
Avatar
Group : Member

ROuaaah! Enfin! T'as vu un peu aussi la description qu'ils mettent "unique", et tout et tout! Nan vraiment nos idées pour Logram DE ont plus, et faut que ca continue... Bon après je dois avouer que c'est contre-esprit du libre, mais quand même ca serait dommage que KDE nous pompe ca, après Logram n'aura plus d'avantage très concret aux yeux de tous (même si je ne doute point de l'efficacité de Setup :P) (et d'ailleurs, j'viens d'avoir une idée pour le renommer de façon plus... unique : pourquoi pas "Steup"? C'est marrant et ca se base sur une erreur de frappe... bien g33k ca nan?)

The site de Logram is maintenant in English!