riri: Je retransfère et commente :-) ---------- Forwarded message ---------- From: Julien L. <[EMAIL PROTECTED]> Date: 30 déc. 2007 23:17 Subject: FW: [Nasgaia-dev] Ndkm, Ncooker et glibc To: [EMAIL PROTECTED]
Richard, Je te transfères une de mes réponses sur la LD car j'ai bien peur que Hotmail a bloqué mon message... @+ -- JulienL ________________________________ From: [EMAIL PROTECTED] To: [email protected] Subject: RE: [Nasgaia-dev] Ndkm, Ncooker et glibc Date: Sun, 30 Dec 2007 23:05:26 +0100 > Salut Salut Riri, Salut tout le monde, > encore moi avec ma sacré libc :-) > > J'ai modifié le nbuild de glibc dans Ndkm afin d'utiliser le script > d'installation et la surcharge de création de fulldeps. Voilà le > résultat et mes profondes pensées quant à ce qui ne va pas :-) Merci pour ce retour. C'est toujours intéressant. > Le paquet de la glibc, en dehors du fait qu'il soit essentiel à > pratiquement tous les autres paquets d'un système, est un paquet > normal, mais qui a besoin de quelques artifices habituellement > disponibles dans un gestionnaire de paquets. > > En effet, il faut bien sûr installer les fichiers livrés par la > commande 'make install' du build, mais également fare attention à > d'autres fichiers de config plus sensibles. J'avais d'abord pensé > utiliser la surcharge du script d'installation pour gérer ces fichiers > (ce qui ne fonctionne d'ailleurs pas, j'en parle un peu plus loin), > puis je me suis rendu compte que ce n'était pas la bonne méthode car : > 1) ces fichiers ne sont plus listés dans le fichier 'files', puisque > générés à la volée pendant l'installation > 2) on est plus dans le cadre d'une gestion de sauvegarde des fichiers > de config lors d'une mise à jour, chose qui n'est pas gérée à ce jour. > > J'ai vu qu'il y avait un travail de réflexion déjà entamé concernant > les fichiers de config, mais je n'arrive pas à remettre la main > dessus. Il faudrait qu'on en parle (il s'agit je pense de la prochaine > étape essentielle du développement de Ncooker) : comment gérer les > fichiers de config (ou plutôt à sauvegarder/ne pas écraser) et les > mises à jour de paquets. J'ai retrouvé le fil de discussion sur le sujet (grâce au compte-rendu que j'avais fait à l'époque ;) ) : https://mail.gna.org/public/nasgaia-dev/2005-06/msg00041.html Pour ma part, je pense que cette fonctionnalité n'est pas indispensable dans l'immédiat mais peut-être que je n'évalue pas bien la criticité de la chose. riri: En fait, c'est important dans la mesure où on s'attaque aux mises à jour. Ce n'est bien-sûr pas le cas de manière générale, mais il se peut que j'en ai besoin dans la construction du devkit : comme on est toujours dans un processus de 'dernière version des paquets', j'essaye de garder le devkit à jour au fur et à mesure qu'il avance. Les paquets déjà installés peuvent évoluer pendant ce temps, et si je n'ai pas de système de mise à jour, je peux avoir des problèmes de fichiers écrasés, c'est tout. Donc non pas critique, mais souhaitable. Par ailleurs, il faut bien penser que la mise à jour est quelquechose d'aussi important (voire plus) que l'installation. Les développeurs de pacman s'en sont rendu compte, à tel point que la commande d'installation 'pure' est obsolète, et est replacée de manière globale par la commande de mise à jour. L'expérience de pacman n'est pas isolée à mon avis, et je comprends tout à fait les raisons de cette décision. Jepense qu'on pourrait tirer partie de cette expérience. > La première chose qu'on peut noter, c'est qu'il y a des caractères à > la con (désolé :-)) dans le log. J'imagine qu'il s'agit de séquences > pour se balader dans le terminal (faire un backspace par exemple). Le > problème, c'est que ce n'est vraiment pas génial. Julien, je crois que > tu as commencé à bosser sur une refonte du système de messages ? > est-ce que tu as pensé à ce genre de choses ? Si on veut voir plus > loin, je dirais qu'il faudrait deux 'modes' de messages : normal et > 'orienté batch' avec quelques chose de plus utile à un script qui > traiterait la sortie de Ncooker, mais ce n'est qu'une idée. Je suppose que les "caractères à la con" que tu vois correspondent à la séquence de caractères permettant de remonter d'une ligne. J'aurais tendance à dire que le problème vient de ton terminal, ou d'une variable d'environnement de ton terminal. Qu'est-ce que tu en penses ? riri: Je pense qu'il ne s'agit pas d'un problème de terminal. Ces infos s'affichent très bien en sortie, mais sont affreuses en log. Le même problème existe pour les couleurs, mais pour cela, Ncooker dispose d'un inhibiteur. > Deuxième problème à mon avis. On voit qu'il y a deux emplacements pour > les ressources, et Ncooker les vérifie toutes. La gestion des mirroirs > devrait régler cela en s'arrêtant au première mirroir valide. Le fait que Ncooker vérifie toutes les URLs sur la commande pack est voulu. A cette étape, il me paraît essentiel d'indiquer au développeur de nbuild si toutes les URLs qu'il a saisies sont correctes. Je n'ai pas encore réfléchi sur le comportement à adopter pour les miroirs mais je pense que je tendrai vers ton idée. Juste une question : pourquoi tu crées les nbuilds pendant l'exécution de Ndkm et non à part ? riri: Parce que créer ou modifier un Nbuild est un processus très long comparé à mon système de patron de nbuild, pour plusieurs raisons : 1) je n'ai qu'un fichier à créer/modifier 2) un bon nombre d'informations utiles à Ncooker pour empaqueter sont déjà utilisées ailleurs dans Ndkm (les ressources par exemple), elle sont donc réutilisées Je peux te conseiller de regarder le code de la gestion de Ncooker dans Ndkm : http://svn.gna.org/viewcvs/nasgaia/trunk/ndkm/src/ncooker.sh?rev=768&view=markup ainsi que le contenu d'un patron classique, disons gawk : http://svn.gna.org/viewcvs/nasgaia/trunk/ndkm/work/archives/nbuilds-templates/gawk?rev=771&view=auto Ndkm utilise en même temps son fichier de ressources qui contient les archives et patchs à utiliser : http://svn.gna.org/viewcvs/nasgaia/trunk/ndkm/stages/resources.conf?rev=769&view=auto Un truc intéressant est l'utilisation de pseudo variables qui simplifie les modifications (par exemple pour la version). Le fichier changelog est aussi alimenté par substitution : # changelog changelog = {{{ % @[EMAIL PROTECTED]@PROVIDER@@FIX@ Richard Gill <[EMAIL PROTECTED]> @DATE@ - first release of the package }}} > Ensuite, rien de spécial à dire sur le build. Oufff. ;) > Pour l'installation, je pense savoir d'où vient le problème du script > install non lancé, t je prévois un commit qui devrait régler ce > problème. Sinon, je résume : > Il manque encore la gestion des mises à jour (et donc autoriser > l'écrasement de fichiers dans ce cas), et particulièrement celles des > fichiers de configuration. La solution classique (qui me plaît bien) > est de 'marquer' certains fichiers: > * 'new': si le fichier existe déjà sur le système, celui du paquet est > enregistré avec l'extension .new > * 'save': si le fichier existe déjà sur le système, il est renommé > avec l'extension .save, et le fichier du paquet est installé. > > Pourquoi deux méthodes ? Et bien selon le fichier, on peut préférer > conserver l'original et avoir à côté le nouveau (.new), ou écraser le > fichier existant tout en gardant une copie de l'original (.save). Pour > bien identifier ces fichiers dans la base de données Npkg, il faudrait > que cette notion soit présente dans le fichier 'files', en ajoutant > par exemple en fin de ligne (new) ou (save) selon la méthode > d'écrasement. Je te renvoie vers le fil de discussion. Il y a des idées intéressantes. Sinon, le fichier "files" me semble aussi le fichier approprié pour marquer le fichier. riri: Je parlais du fichier "files" pour indiquer ça dans la base de données, il est bien entendu que cette info doit d'abord se trouver dans le fichier info pour dire à Ncooker de faire le marquage sur ces fichiers. > Bon c'est un peu fouilli comme message, mais j'espère avoir pu > exprimer mes idées :-) > > > @+ > > -- > Richard 'riri' GILL > jabber: [EMAIL PROTECTED] > http://riri.houbathecat.info > http://nasgaia.org > « Frimousse en excessivité émousse son expressivité » Merci. Bonne fin d'année. @+ -- JulienL ________________________________ Windows Live Messenger 2008 vient de sortir, encore plus de fun ! Téléchargez gratuitement Messenger 2008 ________________________________ Windows Live Messenger 2008 vient de sortir, entièrement personnalisable ! Téléchargez gratuitement Messenger 2008 -- Richard 'riri' GILL jabber: [EMAIL PROTECTED] http://riri.houbathecat.info http://nasgaia.org « Frimousse en excessivité émousse son expressivité » _______________________________________________ Nasgaia-dev mailing list [email protected] https://mail.gna.org/listinfo/nasgaia-dev
