Pkgin

pkgin 0.5, faster pussycat kill kill

Avant de partir me dorer la pilule à la maison, je vous jette en pâture une toute nouvelle pre-release de pkgin, j’ai nommé 0.5.0.

Fruit des conseils avisés du sieur Bapt, fort de son experience avec son fâmeux pkgng, ainsi que des multiples feedbacks d’horizons très differents, le code de pkgin 0.5.0 est plus rapide, plus simple et embarque un certain nombre de features requests.

Dans l’ordre d’implémentation:

  • Migration silencieuse d’une base 0.4 vers 0.5
  • Fonction check_yesno() plus souple
  • “Yes” par defaut pour pkgin install / remove / upgrade
  • Une unique structure pour toutes les formes de listes de packages
  • Nettoyage de dizaines de calculs de listes inutiles (perfs x10)
  • Introduction du champs FULLPKGNAME, accélération des recherches
  • unique_pkg(): plus de “many versions of foo available”, le plus récent est toujours choisi
  • Import du progressmeter d’OpenSSH Cette version restera en gestation dans wip le temps qu’elle soit correctement testée, les changements sont nombreux et profonds, je dois m’assurer que tout fonctionne comme il se doit. Vous l’aurez compris, il faut tester, TESTER, TESTER ! Je vous invite à rapporter les problèmes potentiels sur la liste de developpement de pkgin, à pkgin-devel-at-lists-point-sourceforge-point-net.

pkgin upgrade

Leeeeeeeet the sun shiiiiiiiiiine

En fevrier dernier, je vous parlais d’Illumos, incubateur libre permettant à OpenIndiana de garder l’haleine fraiche et le teint pétillant.

Les choses ont pas mal évolué depuis, en particulier, je me suis un chouillat impliqué dans le projet visant à intégrer parfaitement pkgsrc à Illumos.

De discussions en reflexions, j’en suis venu à me demander s’il ne serait pas judicieux de monter un repository de binaires pkgsrc pour OpenIndiana/Illumos/Solaris puisque cette plateforme est finalement parfaitement supportée depuis des lustres mais qu’aucun repo digne de ce nom n’a été maintenu plus de 2 mois. (et puis evidemment, il faut bien un package manager pour gêrer tous ces binaires hin hin hin…) Ainsi, Mads Worsøe Duun, l’initiateur du projet pkgsrc pour Illumos, a demandé aux gentils administrateurs du projet OpenIndiana (ouais, faut suivre) de nous mettre à disposition une buildbox afin de proposer des packages à jour, et bien plus de logiciels que n’en proposent Blastwave ou les repos IPS/pkg d’OpenSolaris (ricane ricane).

Less politics, more fun

On peut lire ici : As of release 3.1.8, pkgin is the binary package manager for MINIX 3. This page describes how to use pkgin.

Comme MINIX 3 fait partie des cibles de pkgin 0.4.0, je me suis fendu d’une install fraîche. Et au premier boot, j’ai pu contempler ceci :

mmmmmm :)

Armaged^WAmalgamation

Depuis la semaine dernière, j’ai corrigé plusieurs bugs dans pkgin, comme vous l’avez peut-être lu ici ou . Ces fixes devraient marquer la fin de la branche 0.3, actuellement disponible dans pkgsrc, et je me permets de rappeler que si vous ne l’avez pas déjà fait, je ne saurais trop vous conseiller que de mettre à jour vos pkgin 0.3.3.1 en 0.3.3.4 dès que possible, les correctifs étant assez violents.

Je démarre donc aujourd’hui la branche 0.4, et comme je l’ai annoncé à droite et à gauche, cette branche a 3 objectifs majeurs :

Un parc à jour

Sur le “SuperPlan Mini” qui héberge désormais iMil.net, les services sont portés par des DomUs paravirtualisés Xen. Ces machines virtuelles fonctionnent avec les mêmes versions de noyau, d’espace utilisateur et surtout, de packages. Je ne partage pas via NFS l’espace utilisateur car je ne garantis pas la sécurité des applications hébergées sur l’une et l’autre des VMs (du php, beaucoup trop de php…).

Afin de simplifier la mise à jour des packages, j’utilise, devinez quoi: pkgin. Seulement voila, comme je l’expliquais quelques posts plus bas, j’ai besoin de spécifier certaines options à quelques packages, et de fait, je ne peux pas uniquement fonder mes mises à jour sur les paquets binaires fournis par le Projet NetBSD. Dans l’exemple qui suit, on considèrera une machine “maître”, à qui revient la bonne gestion des packages et qui exporte son repertoire /usr/pkgsrc en NFS :

Maintenant, toi aussi tu peux zuipzuip !

Et oui, ami des bureaux qui tournicottent, car on peut lire dans l’annonce officielle de pkgsrc-2009Q4 la phrase suivante : _ the “Package of the Quarter” award is hereby awarded jointly to clang, the compiler and lowlevel virtual machine infrastructure nominated by Matthias Drochner, and to compiz, the compositing window manager, nominated by iMil. _ Parce que pour ne rien gâcher, c’est un package of the quarter :)

Ajoutons à cela le dernier post d’Hubert qui annonce : _ Staying with driver games, iMil writes me that there’s documentation on getting DRI, AIGLX, Composite and Compiz going with NetBSD 5.0 available in the O(ther)NetBSD Wiki now.

Et maintenant, en vrai

“T’es mignon iMil avec tes machins développés à 3 grammes, mais en vrai, c’est utilisable ?”

Mais si, je vous ai entendu penser ça tout fort.

Et en réponse à cet affront manifeste, voici une mise en place d’apache chrooté prêt à recevoir un Wordpress utilisant la machinerie présentée dans le post précédent :

J’ai préparé les fichiers suivants, prêts à être copiés dans le chroot :

Petits portages entre amis

Comme le diraient aussi bien Jean-Pierre Pernaut que Jean-Louis du bistrot-d’en-bas: “Et pour bien commencer l’année !”

Suivi de près d’un

Ou encore: pkgin compile et fonctionne désormais OOtB sous Solaris 10 et Mac OS X.

Alors ouais j’vous vois v’nir “oooh l’auuut’, y’nous r’fait l’coup du SunOS, l’arnaque”. Oui sauf que non. Il s’agit ici de Solaris 10, non d’OpenSolaris, et la nuance est de taille. En l’occurrence, en plus de quelques petits ajustements de code, vous noterez que le ld(1) fourni avec Solaris 10 ne supporte pas l’option -rpath, mais utilise plutot -R, les deux ayant la même finalité, ajouter des chemins de recherche de linkage.

t'as fait de l'autoQUOI ??

Ceux qui me connaissent et qui ont lu le post précédent ont peut-être cru à l’imposture: ". Basculement vers autoconf pour la génération du Makefile"

iMil ? c’est bien toi ?

Oui alors attention hein, pas d’affolement. Il s’agit réellement d’une utilisation très très light de ces outils que j’évite habituellement comme la peste. Tellement light que seul autoconf m’a été utile.

Mais reprenons. Ceux qui ont eu le courage de se plonger dans le code de pkgin se rappellent peut-être de ce genre de choses :

pkgin 0.3.0 dans ton wip

Pkgin 0.3.0 voit -enfin- le jour. Pas de changements fondamentaux dans le code de gestion d’install/upgrade mais plutot une tripotée de petits fixes issus d’utilisateurs-hackers autour du globe. Dans le désordre :

. Basculement vers autoconf pour la génération du Makefile . Correction du bug d’affichage en console . Pas mal de fixes autour de la standardisation des variables . Le lookup du pkg_summary en bz2 ou gz est désormais automatique . Gros ménage des conditions pour opensolaris . substitution de variables dans repositories.conf ($arch et $osrelease) . De traditionnels bugfixes . Portage -encore un peu hors des clous- pour SunOS 5.8