• # Gestionnaire de paquets de Chakra

    Posté par . En réponse au journal Chakra se sépare d'Arch. Évalué à 7.

    Il y a quelques temps, alors que je me baladais sur le site, je suis tombé sur http://git.chakra-project.org , une installation de Gitorious sur leurs serveurs.

    Le projet akabei ( http://git.chakra-project.org/akabei ) contient leur gestionnaire de paquets.

    J'ai parcouru ses sources il y a quelques temps, et c'est un gestionnaire de paquets intéressant. J'ai toutefois relevé quelques problèmes (sachant que je développe aussi un gestionnaire de paquets) :

    * Ils utilisent une base de donnée SQLite, qu'ils interrogent en SQL. Ça va les tuer du côté des performances, car le moindre accès à la BDD passe par la création d'une requête SQL, puis son parsing. Ils seront obligés de faire de grosses requêtes (mais pas souvent), puis du traitement du côté C++ pour rattraper le coup.
    * Leur solveur de dépendance est un peu trop proche de celui de pacman, c'est à dire «quick and dirty» : on trouve les dépendances, on retire les conflits, et si ça marche pas, on geule. Ça marche bien dans 99% des cas, mais si on a un truc complexe, ça ne va plus.

    Par contre, ils ont une belle implémentation des delta-packages, en utilisant XDelta (rapide et efficace, même si moins efficace que bsdiff).

    Le code est propre et agréable à lire. Il ne me semble pas qu'il manque trop de fonctionnalités, j'ai lu sur le site qu'ils l'ont testé et que ça marche.

    Wait & see donc, mais ça pourrait être intéressant.