# Gentoo plus aussi "à jours"

## Jean-Francois

C'est une idée où plus ça va est plus les suivis au niveau applicatifs trainent ?

J'ai vu des applications plus récentes en rpm que dans portage. Par exemple la version gtk2 de bluefish vient seulement d'arriver il y a quelques jours, au niveau de gnumeric c'est pareil j'avais pendant plusieurs semaines une version plus récente en ayant installé une Red Hat.

Je suppose qu'il y a plein d'autres exemples. 

J'imagine qu'il y a plus de monde a bosser chez RH mais c'était l'un des arguments fort de Gentoo sa réactivité.

----------

## Mat_le_ouf

On n'est jamais mieux servi que par soi même  :Smile: 

Si tu as le temps je pense qu'ils ne seraient pas contre avoir une personne en plus pour mettre à jour les portages, je ne pense pas que ce soit extrèmement compliqué, il faut juste avoir des connaissances correctes en Bash à mon avis.

----------

## ganjo

en effet il est possible de faire des ebuild en prenant simplement les sources d'un logiciel et en retouchant a peine le .ebuild fournit par gentoo

----------

## DuF

Je dis peut-être/sans doute/certainement (rayer les mentions inutiles) une connerie, mais il me semble que portage pour la version stable ne sera plus mis à jour jusqu'a la sortie de la 1.4, ou alors je confonds avec l'ajout d'ebuilds de programmes nouveaux dans portage, mais il y a un truc dans le genre, à vérifier donc.

----------

## tecknojunky

 *Mat_le_ouf wrote:*   

> On n'est jamais mieux servi que par soi même 
> 
> Si tu as le temps je pense qu'ils ne seraient pas contre avoir une personne en plus pour mettre à jour les portages, je ne pense pas que ce soit extrèmement compliqué, il faut juste avoir des connaissances correctes en Bash à mon avis.

 

Je ne crois pas que ce soit aussi simple.  Les ebuilds font appels à des fonctions faits en python et à regarder comment certains sont fait, c'est du  charabia et je trouve cela parfois plus simple de télécharger les sources et les compiler moi-même.

Aussi, certain ebuild ne fonctionne tout simplement pas et je me demande quels sont les critères pour déterminer qu'un ebuild est sans bogues.  Le "~i386", c'est pour le logiciel en tant que tel ou pour le ebuild?

Le concept de Gentoo est génial.  La preuve, d'autres distributions (tel Sorcerer) font de même.  Mais après 3 mois d'utilisation de Gentoo, j'ai des doutes sur l'implantation actuel du concept.

D'abord, je suis vraiment pas en amour avec les interpréteurs (tant Java, Perl et... python).  Ils sont lents et cela créer une dépendance pour les ebuild, c'est à dire que si python brise, on est dedans.

Secondo, Gentoo est complèxe à maîtriser et je trouve que la documentation est maigres.  D'autant plus que je déteste au plus haut point une documentation qui vous suggère de vous référer aux sources.  C'est une autre façon de dire "Merde avec la doc, je la ferais plus tard... peut-être".  Pourtant, ça fais près de 3 ans que j'utilise Linux.  Mon Slackware est très peu intégrer mais les scripts sont plutôt simple et "straight-forward" sans trop de fichier de configurations superflus et/ou concentré.  Red-Hat est le contraire, très intégré avec des fichiers de configuration centralisé et la configuration des scripts fragilise le système mais RH est facilement configurable par interfaces.  Et bien pour moi configurer gentoo c'est comme une RH mais sans les interfaces de configurations.  Pour le moment, j'ai passé le plus claire de mon temps à configurer (réparer, déboguer, ...) Gentoo qu'à l'utiliser.

Finalement, on vante la flexibilité de Gentoo et je ne suis pas d'accord.  Gentoo n'est pas assez flexible à mon goût.  J'ai découvert que faire un "emerge -u world" est la pire chose à faire.  En fait, fait pas prendre pour du cash ce que portage va faire.  Les dépendance (le truc du USE) c'est à chier.   Depuis 3 mois, j'ai plusieurs composante dans mon système dont je n'ai pas besoin mais ils ont été emergé parce que le USE était mal définie.  Pas bloatware Gentoo?  Dit ça à quelqu'un d'autre.  emerge est trop linéaire, construit tout selon le même moule générale, pas assez granulé pour contrôler chaque compilations individuellement (oui on peu, mais les dépendances "direct et rétro" complique les choses).

Bon, ok, je vous vois venir.  Sachez que j'ai concience que Gentoo est récent et que rien ne se bâtit en claquant des doigts.  Qu'on on contruit quelque chose, on identifie des lacunes en cour de route et il importe d'en prendre compte et d'apporter des correctifs en temps et lieu.  Red-Hat, Mandrake, Suse, Debian on plusieurs années de développement sous la cravate et je me rappel bien que RH5 n'est qu'une pâle relique de ce qu'est RH8.x aujourd'hui.  Faut laisser la chance au coureur, mais fut pas être autruche non plus.  Le nombre de logiciels est appelé à aller en augmentant et avec l'implantation actuel de Portage, ça risque de devenir bordelique plus le temps avance.

Tout ça pour dire que faire un ebuild ne réquiert qu'une connaissance de base de Bash, c'est un peu simpliste (aucun manque de respect n'est voulu ici).

----------

## sergio

Je suis pas entièrement d'accord avec cette argumentation :

 - Le fait que l'on ait pas tout de suite les dernières version n'est pas toujours un mal : une version tout juste sortie du four n'est pas toujours stable à 100% (dans correctifs apparaissent souvent dans les jours qui suivent) et si chez moi j'aime bien "'essuyer les platres" de temps en temps je ne peut pas me le permettre dans mon travail et j'ai tendance à attendre plusieurs semaines après la sortie d'un soft pour remettre mon système à jour.

 - Concernant les langages interprétés il sont nécessaires pour s'affranchir des plateformes : python tourne aussi bien sur un x86 que sur un powerPC ou autre chose. D'autre part python est langage stable reconnu depuis de nombreuses annnée et je n'ai aucune crainte qu'il "casse".

 - Quant à la doc : elle est peut être plus riche sous Mandrake ou RH mais reste obscure sur bien des points et il faut souvent aller à la pêche aux infos pour se dépattoullier... D'autre part les forums de gentoo sont parmis les meilleurs qui soient et c'est la meilleurs source d'aide...

----------

## tecknojunky

 *sergio wrote:*   

>  - Concernant les langages interprétés il sont nécessaires pour s'affranchir des plateformes : python tourne aussi bien sur un x86 que sur un powerPC ou autre chose. D'autre part python est langage stable reconnu depuis de nombreuses annnée et je n'ai aucune crainte qu'il "casse".

 

Pourtant, récement, un petit problème de librarie (d'un emerge qui a, semble-t'il, mal tourné) empêchait l'interprèteur python de fonctionner.  De ce fait, plus de emerge, plus de env-update plus rien.  Dedans je dis  :Wink: .  Les interpréteurs, c'est bon pour les pages web.

Du code en C++ peut aussi être compilé et fonctionner sur différentes plateforme.  Je crois que les composantes de portage devrais être autonome et ne dépendre de rien qui soit partagés avec d'autres applications (oui, oui, même les librairies devraient être statiquement liées dans le fichier binaire), comme ça, pas de danger qu'un autre emerde corrompt Portage (et je n'ai pas fait de lapsuse).

 *sergio wrote:*   

>  - Quant à la doc : elle est peut être plus riche sous Mandrake ou RH mais reste obscure sur bien des points et il faut souvent aller à la pêche aux infos pour se dépattoullier... D'autre part les forums de gentoo sont parmis les meilleurs qui soient et c'est la meilleurs source d'aide...

 

J'acquiesces pour le forum.

----------

## sergio

 *tecknojunky wrote:*   

> Pourtant, récement, un petit problème de librarie (d'un emerge qui a, semble-t'il, mal tourné) empêchait l'interprèteur python de fonctionner.  De ce fait, plus de emerge, plus de env-update plus rien.  Dedans je dis .  Les interpréteurs, c'est bon pour les pages web.
> 
> 

 

Désolé mais je n'ai pas été concerné par ce problème. Il est évident que sous Gentoo il ne faut pas faire des "emerge -u world" à tout bout de champs... Mais seulement lorsque l'on en a vraiment besoin (GLSA dans un des soft que l'on utilise, etc...) encore que je préfere les "emerge" ciblés. D'autre part j'utilise une plateforme de test avant d'appliquer systématiquement les "emerge" sur mes serveurs, ce qui évite beaucoup de problèmes... 

Portage est un très bon système mais comme toute les bonnes choses l'abus peut nuire à la santé...

D'autre part tu serais sans doute surpris de voir tout ce qui peut tourner avec des interpréteurs... On a des applis (au bureau) qui tournent depuis des années avec des parties interprétées sans que l'on en entende parler... (je sais même plus ou est la doc... t'a qu'a voir !!!)

----------

## Mat_le_ouf

 *tecknojunky wrote:*   

> Tout ça pour dire que faire un ebuild ne réquiert qu'une connaissance de base de Bash, c'est un peu simpliste (aucun manque de respect n'est voulu ici).

 Sur le reste je ne suis pas vraiment d'accord, mais je n'ai pas trop le temps de développer tout de suite.

Concernant les connaissances requises en Bash, je ne pense pas qu'elles soient faramineuses, mais de toute façon on n'a rien sans rien.

Je dis peut être une grosse connerie, mais est ce qu'il est plus simple de créer un rpm? Et je ne trouve pas que les dépendances des RPM soient mieux gérées que celles du portage. Au moins avec une connexion internet correcte et Gentoo on a vite un programme fonctionnel sans courir à droite à gauche pour trouver la libriairie xxx.1-4.25.8-r2.rpm qu'il faut pour installer le prog...

Et j'imagine qu'il ne doit pas être si difficile que ça de modifier un ebuild, le créer c'est différent...

----------

## Koala[3K]

 *tecknojunky wrote:*   

> 
> 
> Je ne crois pas que ce soit aussi simple.  Les ebuilds font appels à des fonctions faits en python et à regarder comment certains sont fait, c'est du  charabia et je trouve cela parfois plus simple de télécharger les sources et les compiler moi-même.
> 
> 

 

Je ne trouve pas les ebuild si compliqué que cela. Le fichier est découpé en plusieurs fonctions qui décrivent une action spécifique (download, compilation, installation, configuration, etc..).

- download : URL de l'archive à downloader

- compilation : paramétrage avec les variables USE du ./configure. Installation des dépendances associées au package et a la variable USE.

- installation : utilisation des fonctions mise à disposition pour copier les binaires et installer la doc

- post installation / configuration : configuration du package (ce sont juste en général les commandes que l'utilisateur devrait tapper lui même pour configurer son logiciel)

En gros, c'est pas bien sorcier je trouve, tu prends un ebuild existant, et tu étudie comment il fonctionne... Et oublie pas que tu as une documentation très bien faite à ce sujet.

 *tecknojunky wrote:*   

> 
> 
> Le concept de Gentoo est génial.  La preuve, d'autres distributions (tel Sorcerer) font de même.  Mais après 3 mois d'utilisation de Gentoo, j'ai des doutes sur l'implantation actuel du concept.
> 
> D'abord, je suis vraiment pas en amour avec les interpréteurs (tant Java, Perl et... python).  Ils sont lents et cela créer une dépendance pour les ebuild, c'est à dire que si python brise, on est dedans.
> ...

 

Juste pour savoir, Sorcerer elle était pas avant la Gentoo ?

Sinon c'est vrai que le langage Python est pas le plus léger. Mais l'intéret d'utiliser un language interprété, c'est la portabilité et c'est tout l'intéret comparé aux langages compilés (C++ est "portable" mais qu'à un certain point).

 *tecknojunky wrote:*   

> 
> 
> Secondo, Gentoo est complexe à maîtriser et je trouve que la documentation est maigres.  D'autant plus que je déteste au plus haut point une documentation qui vous suggère de vous référer aux sources.  C'est une autre façon de dire "Merde avec la doc, je la ferais plus tard... peut-être".  Pourtant, ça fais près de 3 ans que j'utilise Linux.  Mon Slackware est très peu intégrer mais les scripts sont plutôt simple et "straight-forward" sans trop de fichier de configurations superflus et/ou concentré.  Red-Hat est le contraire, très intégré avec des fichiers de configuration centralisé et la configuration des scripts fragilise le système mais RH est facilement configurable par interfaces.  Et bien pour moi configurer gentoo c'est comme une RH mais sans les interfaces de configurations.  Pour le moment, j'ai passé le plus claire de mon temps à configurer (réparer, déboguer, ...) Gentoo qu'à l'utiliser.
> 
> 

 

Je croit qu'à la base, si tu as choisi Gentoo, c'est pas pour pouvoir mettre les mains dans le "camboui" non ?  :Wink: 

Sinon personellement, j'utilise Linux depuis près de 6 ans et j'ai essayé beaucoup de distributions. Pour tout ce qui est Red Hat, Mandrake et compagnie, en gros à chaque nouvelle version je devait réinstaller tout depuis 0 (on se croirait sous win  :Wink: ). Après un certain temps d'utilisation / installation / etc.. j'obtenais un système assez instable. Il y a 3-4 mois, j'ai pris connaissance de la Gentoo par pur hasard et je l'ai installé. J'ai eu des problèmes comme beaucoup de monde au début, mais par après, ca été vraiment un délice à utiliser (cf le nombre de mes posts ces derniers temps  :Wink: ). Et contrairement à toi, je passe beaucoup moins de temps à administrer ma machine qu'à l'utiliser.

 *tecknojunky wrote:*   

> 
> 
> Finalement, on vante la flexibilité de Gentoo et je ne suis pas d'accord.  Gentoo n'est pas assez flexible à mon goût.  J'ai découvert que faire un "emerge -u world" est la pire chose à faire.  En fait, fait pas prendre pour du cash ce que portage va faire.  Les dépendance (le truc du USE) c'est à chier.   Depuis 3 mois, j'ai plusieurs composante dans mon système dont je n'ai pas besoin mais ils ont été emergé parce que le USE était mal définie.  Pas bloatware Gentoo?  Dit ça à quelqu'un d'autre.  emerge est trop linéaire, construit tout selon le même moule générale, pas assez granulé pour contrôler chaque compilations individuellement (oui on peu, mais les dépendances "direct et rétro" complique les choses).
> 
> 

 

Juste pour dire, je fait un emerge -u world toute les semaines (voir plus), je n'ai jamais rencontré le moindre problème. Le système des variables USE, c'est vraiment génial je trouve (amuse toi à regarder pour chaque package les paramètres que tu peux passer à ./configure avant de compiler, c'est pas vraiment marrant). C'est un des seuls systèmes à ma connaissance qui permette de centraliser, paramétrer, automatiser le processus de compilation et en même temps de gérer les dépendances. (Si tu veux plus de paramétrage pour tes compiles tu peux toujours utiliser LFS ;p)

Pour les softs qui sont installé en plus, si tu définit mal ta variable USE il ne faut que s'en prendre à toi même, le système va quand même pas lire dans tes pensées... Je te conseille configurer une par une chaque options de USE une fois pour toute.

Une astuce pour ceux qui veulent configurer plus facilement leur système : Il y a le package KPortage qui est vraiment bien fait concernant le paramétrage du fameux make.conf (paramétrage de la variable USE de facon graphique avec toutes les options, configuration des flags d'optimisation, paramétrage du proxy, etc..). Sinon c'est vrai que pour l'installation des packages, la ligne de commande est quand même mille fois plus pratique à mon goût (et surtout pour mon pov celeron 400  :Wink: )

Longue vie à Gentoo  :Smile: 

----------

## DuF

Koala[3K] tu as eu le courage de répondre, moi j'ai fait le fainéant  :Smile: 

Juste pour dire que je suis assez d'accord avec toi sur ce que tu as répondu, mais bon gentoo est une distrib jeune, faut lui laisser le temps de murir. J'estime qu'il existe suffisamment de distribs linux pour pouvoir choisir celle qui répond à notre besoin...

----------

## xr31Daisy

un peu OT, vu sur gentoofr :

les amateurs de gnome seront ravis d'apprendre que spider maintient des ebuilds de gnome2.2 rc1. Ils ne sont pas sous portage, mais sur sa page perso http://cvs.gentoo.org/~spider/.

Edit : j'ai essayé, ça marche pas !  :Sad: 

Pour abiword, il y a un thread dans les forums avec des ebuilds pour la version 1.1.x ... (visiblement, les ebuilds ne sont pas si durs que ça à faire ? )

Donc côté mise à jour de Gentoo, on a pour l'instant 3 niveaux :portage stable

portage instable ( ~arch )

les ebuilds persos d'un certain nombre de contributeurs( je vous laisse en tirer les conclusions que vous voulez ).[/b]

----------

## Nectroom

 *xr31Daisy wrote:*   

> ( je vous laisse en tirer les conclusions que vous voulez ).

 

Exellent  :Smile: 

moi voila 7 mois que je suis sous gentoo ( 1 serveur + 1 station de travail ) et je n'ai jamais autant aimé faire une installation d'OS  :Smile: 

car à chaque fois on apprend des nouvelles choses et maintenant depuis la séparation stable/instable on peu vraimant profiter de la puissance de portage bref pour moi c'est du pure bonheur.

chacun choisis la distribution qui lui convient et moi je pense l'avoir trouvée !!

----------

## Mat_le_ouf

Pareil pour moi, gentoo m'a vraiment appris plein de choses dans l'installation d'un serveur fonctionnel. Je n'aurais jamais pensé pouvoir faire autant de choses (bon j'ai du lire pas mal de docs quand même  :Wink: ).

----------

## tecknojunky

J'avoues être critiqueux mais j'essais d'être objectif.

C'est bien de lire l'opinion des autres sur le sujet.  J'aime bien Gentoo, juste que peut-être que je ferais certaines choses autrement.  Peut-être que ça viendra.  Rome ne s'est pas bâtit en un jour.

Kportage est bien.  Il permet de voir a peu prêt tout ce qui concerne Portage en une seule interface.  Néanmoins, cette granulité me manque, c'est à dire, que les options soient plus proche des ebuilds individuels que sur le sysème globale.  C'est possible, je le sais, juste que l'info est un peu éparpillé et faut fouiller.  Gentoo c'est pas pour les noobs.

J'ai malheureusement pas le luxe d'avoir une machine de test.  Bientôt sûrement.  J'ai bien 5 PC chez moi (si on peu appeler un 386sx16 et un 486dx2/66 des PC) mais les 2 qui sont dignes de ce nom, un est dédié à Windows 2k et l'autre Gentoo.

Ce qui risque d'arriver c'est qu'une fois que jMaurais identifié toute les embuches, je vais réinstaller à partir de 0.  Probablement quand 1.4 sera officialisé.

J'ai installé Gentoo sur le 486 mais pour compiler la dessus, oubliez-ça (par exemple, samba + cups + libs png gifs... = 28 heures.  Ouf!).  Du 486 Gentoo fonctionnel, je me suis amusé à créer une disquette d'amorce et une disquette racine pour démarrer le 386sx16 (8mo ram) et ça marche!  Marrant de voir le 386 rouler un noyau 2.4.20.  Ne reste plus qu'à y importer X + kde (je blague  :Wink:  ).  Mon point est que Gentoo sur le 486 (plus récent) est déjà différent de mon installation sur le Céléron 600 (par exemple, glibc-3.2.1 + gcc-3.2.1 par oposition à glibc-2.2.5 + gcc 2.95) et les 2 sont à jour (selon emerge -u).  Alors, une fois Gentoo officiel, on refait tout... come il faut.

Dernier mot sur les interprèteurs.  Je les aimerai jamais, mais mon opinion est peut-être trop orienté sur une plateforme unique (x386).  Sans-doute que si j'aurais à relever le défi de créer une application portable, je les considèrerais.

Il est fort possible que j'essais d'autres distributions.  Debian est une autre qui me tente.  Reste que, à date, Gentoo est ma préféré de toute celles que j'ai essayés.  Je compte encore sur Windows comme machine de travail, mais je souhaite hardement passer à Linux.  Pour cette raison, faut que ça marche.  D'où le souhait d'utiliser et non de contament configurer, tweaker, ...

----------

## Koala[3K]

 *tecknojunky wrote:*   

> J'ai installé Gentoo sur le 486 mais pour compiler la dessus, oubliez-ça (par exemple, samba + cups + libs png gifs... = 28 heures.  Ouf!). 

 

Une astuce, pour installer Gentoo sur de vieux clous (genre 486) et si tu as un ordi plus puissant à disposition, il y a 2 solutions :

- Soit l'architecture est pas trop vieille comparé a ton autre ordi et tu pourra utiliser distcc : c'est un deamon qui te permet de faire de la compilation distribuée et c'est très simple à utiliser (cf forums pour plus d'explications)

- Soit tu fait du cross-compiling a partir deta machine plus performante et tu cré des packages binaires (option --buildpackage je crois) pour ton autre ordi.

----------

## ganjo

pour precision, a ma connaissance la sorcerer avant la gentoo (en tout cas jla connaissais bien avant).

Par contre je suis assez daccord que le sys des use est un peu sale... on est souvent obligé de faire un use precis pour certains packages...

Pour les ebuilds de truc particulier, gentoo offre quelques packages en version cvs, et de mon experience lors de l'instalation d'un package non inclu dans portage, je prend un autre ebuild que je modifie que legerement et ca passe sans prob avec mon nouveau package... mais en realité cest pas super utile, ca il peut arrivé que le package arrive dans portage avec une orthographe legerement differente, et du coup ne sera jamais mis a jour, mais bon ca simplifie lunmerge.

Et pour finir moi non plus jaime pas le emerge -u world pour la simple raison que jai souvent des USE particulier pour certains packages.

Mais bon la distrib est encore jeune, et perso elle reste ma favorite avec la debian. Perso jaimerai bien un menu interactif a linstal dun package ou je pourrai specifier se que je veux balancer au configure

----------

## px

 *Quote:*   

> Perso jaimerai bien un menu interactif a linstal dun package ou je pourrai specifier se que je veux balancer au configure

 

C'est clair qu'un systeme qui permet de selectionner les options pour chaques packages de facon clair et simple serait vraiment le bienvenu. Moi non plus j'aime pas le système du USE.

----------

## tecknojunky

 *ganjo wrote:*   

> Perso jaimerai bien un menu interactif a linstal dun package ou je pourrai specifier se que je veux balancer au configure

 

C'est exactement de ça quand je parle de granulité.  Pouvoir aisément définir les paramètres pour chaque ebuild individuellement (les USE, CFLAGS, HOST, quelles fonctionnalitées activer comme compiler samba sans cups ni pams mais avoir cups et pams pour le système générale, ...).  Possible mais faut patauger dedans.

 *ganjo wrote:*   

> Une astuce, pour installer Gentoo sur de vieux clous (genre 486) et si tu as un ordi plus puissant à disposition, il y a 2 solutions :
> 
> - Soit l'architecture est pas trop vieille comparé a ton autre ordi et tu pourra utiliser distcc : c'est un deamon qui te permet de faire de la compilation distribuée et c'est très simple à utiliser (cf forums pour plus d'explications)
> 
> - Soit tu fait du cross-compiling a partir deta machine plus performante et tu cré des packages binaires (option --buildpackage je crois) pour ton autre ordi.

 

distcc hein?  Merci, je vais faire une recherche la dessus.

L'installation initiale, je l'ai fais en slottant le disque rigide dans mon Céléron parce que 20MO de ram n'est même pas suffisant pour charger le disque virtuelle (ramdisk) du stage1.

J'ai installé le serveur nfs sur le 486 et le client nfs sur le Céléron, j'ai monté la racine du 486 sur un point de montage du Céléron et fais un chroot dessus, puis env-update et source /etc/profile.  De cette façon, on a l'apparance que le système de fichier du 486 est exploité par la ram (128MO) et le cpu du Céléron.  Ainsi (crus-je), je pourrais faire les emerges ainsi.  Mal m'en pris.  Mon 1er essais fut d'emerger le kit ppp.  Oups!  J'ai oublié le répertoire /dev qui n'était pas monté.  De plus, le répertoire /proc  est aussi non-représentatif mais moins critique, celui-là.  En bout de ligne, j'imagine que ça fontionnerait pour les logiciels qui n'ont rien à voir avec les périphériques et/ou les composantes de la boite.

Merci pour le tuyau  :Wink: 

MAJ: Semble que pour utiliser distcc il est préférable d'avoir le même compilateur et les mêmes librairies.  Le 486 a gcc-3.2.1 + glibc-2.3 et mon Céléron a gcc-2.2.95 + glibc-2.2.5.  Va faloir que je synchronise ça, mais je pense que ça vaut le coup.

----------

