@celmir : et a quitté M$ quelques mois après et est revenu chez Gentoo, et est plus ou moins à l'origine de la crise actuelle de chez Gentoo car c'est, parait il, un excellent informaticien mais un connard de première. Si mes souvenirs sont bons, il s'est fait virer de chez Gentoo pour connerie excessive, à vérifier.
Bon, je balance mon pavé!!!
-------------------------------------------------------------------------
Bon déjà, je suis super méga creuvé et bien qu'il ne soit que 22h, j'ai une énorme envie de me mettre dans mon plumard (sport + douche ^^).
Alors, tout d'abord, j'avais testé Gentoo sur une partition... de tests. Oui parce que vu que tout le monde dit que c'est truc super hard de la mort à installer, bah je me disais que j'y arriverais pas.
Je précise que j'avais déjà compilé du noyau sous Fedora et Debian (on est curieux ou on ne l'est pas).
1/ L'installation
Contrairement à la plupart des distros, je suis totalement incapable d'installer une Gentoo sans la doc et je doute que plus de 10% des Gentooistes le soient.
Bah c'est pas dur, on suit la doc : cf
là et
surtout là.
A ma première installation, on avait la doc pour installation à partir d'un stage 1, 2 ou 3. J'avais fait 2.
En gros, j'explique en super rapide que même E=m6 c'est pas autant vulgarisé! Gentoo s'installe à partir d'un liveCD (celui de Gentoo, Knoppix, Fedora, ce que vous voulez) ou à partir d'une autre distro.
Au début, on télécharge un stage qu'on décompresse. Un stage, c'est un bête tar du système de base précompilé. Un stage 3 contient déjà un OS minimal, faut juste installer le noyau et Grub et c'est un peu tout (en théorie... en pratique, il vous faudra bien (plus d') une heure). Les stages 2 et 1 ne sont plus officiellement supportés. En gros, le stage 2 on avait un compilateur et un couteau suisse et le stage 1, juste un trombone.
Il faut donc décompresser un stage, on chroot, on va choper un instantané de portage. Késaco? C'est juste le snapshot de jour du portage, donc encore un putain de tar qui contient tous les ebuilds (le truc pour installer les softs).
Bref, j'en ai déjà marre de taper. Après, si vous lisez la doc, faut configurer un peu tout avec nano (le premier truc que je fais, c'est installer vim). Bref, c'est long et chiant MAIS pas compliqué, suffit de faire ce qu'on dit! Si on ne comprend pas, bah on comprendra plus tard. Dans tous les cas, c'est instructif. Enfin, des mecs comment Anvil ou Herrib, 200 000 fois plus calés que moi, n'apprendraient rien, mais pour le Fedoreux moyen curieux, c'est instructif.
Le plus dur pour le bêta qui ne connait pas son matos et qui n'est pas foutu de trouver la commande "lspci" car il n'a toujours pas compris qu'il faut mettre un putain de tiret à su, c'est de compiler le noyau. Y a Genkernel qui le fait tout seul... mais alors là, attention... c'est pas 5 à 10 minutes de compilation pour un noyau configuré, mais 1 heure (au pif), youpi tralala.
Une fois que c'est fait, installez Grub ou claquez une entrée dans celui de Fedora par exemple.
Note : l'installeur graphique est à proscrire absolument! Déjà, il merde terriblement et si par miracle vous avez installé Gentoo... félicitation, vous n'avez aucune idée comment ça marche et êtes dans une merde noire.
2/ Configuration
Bon, tout ce qui concerne la compilation, ça se configure dans le /etc/make.conf.
Le mien:
CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
PORTAGE_NICENESS="19"
GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://mir.zyrianes.net/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow aac acpi alsa apache2 arts avi bash-completion berkdb bitmap-fonts browserplugin bzip2 cdparanoia cdr cups dbus divx4linux dvd dvdr dvdread encode ethereal foomaticdb ffmpeg gd gif gtk gtk2 hal imagemagick javascript jpeg joystick kde kdexdeltas lm_sensors logitech-mouse mad matroska md5sum mime mikmod mmx mng mozilla mp3 motif mpeg msn musicbrainz mysql ncurses net nfs nptl nptlonly nsplugin nvidia ogg oggvorbis opengl perl pdf pdflib php png ppds print posix python real qt3 qt4 quicktime ruby sdl spell sqlite sqlite3 sse svg tetex theora threads truetype truetype-fonts type1-fonts unicode usb userlocales v4l vorbis win32codecs X xcomposite xine xml xosd xv xvid -acl -gnome -gstreamer -ipv6"
LINGUAS="fr"
VIDEO_CARDS="nvidia v4l"
ALSA_CARDS="via82xx"
INPUT_DEVICES="evdev joystick keyboard mouse"
PORTDIR_OVERLAY="/usr/local/portage"
FEATURES="ccache parallel-fetch"
CCACHE_DIR="/var/tmp/ccache/"
CCACHE_SIZE="2G"
De ce que j'en sais :
> CFLAGS="-O2 -march=athlon-xp -pipe -fomit-frame-pointer" << donné par la doc, ce sont les paramètres passés à GCC. Ceux là sont les safe cflags. Il suffit de regarder pour un athlon xp quoi mettre. C'est là que j'écrase le passage de chépluki (je tape dans kwrite là) qui dit qu'il faut connaitre la compilation super bien ... j'y connais que dalle. Y en a qui rajoutent pléthore de flags, moi je suis pas joueur.
> CHOST="i686-pc-linux-gnu" << architecture i686 ... qui n'avait pas compris?
> MAKEOPTS="-j2" << nombre de processus pour la compilation. Sur mon Athlon XP, 2. Sur le Core Duo, 3.
> PORTAGE_NICENESS="19" << priorité de portage super basse, comme ça je peux matter de la vidéo ou autre pendant que ça compile sans que mon PC ressemble à un 486 avec 4 Mo de RAM
> GENTOO_MIRRORS << bah les mirroirs de téléchargement des sources
> SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" << ou synchroniser Portage. Oui car Portage se synchronise manuellement (ou par Cron) et ne doit pas être fait plus d'une fois par jour pour les Gentlemen, car c'est pas sympa pour la bande passante des serveurs. A savoir que ceux qui abusent on le droit à un ban temporaire.
> USE << le truc SUPER important que Mr Anderson plante inéluctablement à la première installation. Ce sont VOS flags par défaut. Genre on voit que j'utilise KDE et pas Gnome... mais comme je ne suis pas super raciste, j'ai mis le flag GTK. Ca sert à quoi? Bah par exemple, je vais vous prendre un truc bien gore : mplayer. Voilà ses flags chez moi:
USE="3dnow X aac alsa arts cdparanoia dvd dvdread encode gif gtk iconv joystick jpeg mad md5sum mmx mp3 opengl png quicktime real sdl sse theora truetype unicode v4l vorbis win32codecs xv xvid -3dnowext -a52 -aalib (-altivec) -amr -bidi -bindist -bl -cddb -cpudetection -custom-cflags -debug -dga -directfb -doc -dts -dv -dvb -dvdnav -enca -esd -fbcon -ftp -ggi -ipv6 -ivtv -jack -libcaca -lirc -live -livecd -lzo -mmxext -mp2 -musepack -nas -openal -oss -pnm -radio -rar -rtc -samba -speex -srt -sse2 -svga -tga -tivo -v4l2 -vidix -x264 -xanim -xinerama -xvmc -zoran" VIDEO_CARDS="-mga -s3virge -tdfx -vesa" 0 kB
Vous voyez qu'il y a par exemple un flag "mp3" ... activé. Si bien que ça évite des trucs du style : "Euh bjr, j'vien d'installé Fédora mè mon lekteur ili pa les empé3, jfé koi?". > bah installe le paquet truc-non-free-bad-RMS-is-going-to-kill-you.rpm.
Un exemple concret? Je suis un nouveau Freenaute, youpi tralala. L'autre jour, je tente le multiposte, ça veut pas... le flux c'est du rtsp. Je regarde les flags bien violents de VLC (les lecteurs multimédia et php, c'est vraiment des flags de bourrin) et y a un flag rtsp qui n'était pas activé. Je l'ai activé et youpi ça marche. Bref, ça sert à quoi? Bah à gérer les dépendances. Genre ceux qui installent WPA_SUPPLICANT. Celui-ci à une interface Qt. Admettons que le packageur active l'interface sur Fedora... bah vous ralez comme des chiens parce que, OH MY GOD, vous avez Qt en dépendance!!! S'il ne l'active pas, y en a qui vont raler parce que la console, çaypasbien (C). Ou alors il va être moins flemmard que les packageurs de KDE et avec un seul tar.gz, faire deux RPM, un pour wpa_supplicant "qu'on peut faire sans interface" et un avec l'interface-toute-seule. Quel bordel!! Sous Gentoo, je mets le flag Qt il et construit l'interface. Je ne le mets pas et il ne la constuit plus ET DONC,
Wpa_supplicant ne dépend plus de Qt!! L'intégriste anti Trolltech que vous êtes est donc super content.
Voilà, en super gros parce que ça commence à faire long et rien que relire pour corriger mes fautes, ça me fout la trouille.
> le reste, pas compliqué (la flemme se fait sentir)
Je précise que vous verrez ensuite (pour ceux qui veulent) qu'il est possible de faire une sélection de flags par paquets.
Perso, j'ai mis le max dans le make.conf et je dois avoir à tout péter une quinzaine de paquets aux flags personnalisés et j'y touche pas tous les jours.
Pour savoir à quoi servent les flags d'un paquet : "equery u paquet (-a)" (le -a étant donc une option que man vous dira).
3/ Portage
Vous cherchez un truc?
gentoo ~ # eix tooth
* net-misc/asterisk-chan_bluetooth
Available versions: ~0.0.1_pre20050212
Homepage: http://www.crazygreek.co.uk/content/chan_bluetooth
Description: Asterisk channel plugin for bluetooth HandsFree Profile
* net-wireless/gnome-bluetooth
Available versions: 0.7.0-r1 ~0.8.0
Homepage: http://live.gnome.org/GnomeBluetooth
Description: Gnome2 Bluetooth integration suite
* net-wireless/kdebluetooth
Available versions: 1.0_beta1-r2 ~1.0_beta2 ~1.0_beta2-r1 ~1.0_beta2-r2
Homepage: http://bluetooth.kmobiletools.org/
Description: KDE Bluetooth Framework
Found 3 matches.
La réponse est instantanée (pour ça qu'il faut installer eix bordel).
Bon, normalement y a des couleurs... c'est moins pire.
Prenons kdebluetooth, la première version est la stable (ici il n'y a qu'une stable). Les 3 autres, avec un ~, sont masquées (plus récentes). Ca se démasque. A savoir que beaucoup de gentooistes on un système full démasqué (un paramètre dans le make.conf). Il y a aussi (mais pas dans ce cas), des versions hardmaskées qui sont en principe déconseillées, voir pas installables... j'ai du le faire une fois ptet, m'en rappelle pas.
Si je veux l'installer:
gentoo ~ # emerge -av kdebluetooth
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild N ] net-wireless/bluez-libs-2.25 285 kB
[ebuild N ] dev-libs/openobex-1.3 USE="usb -bluetooth -debug -irda -syslog" 330 kB
[ebuild N ] net-wireless/bluez-utils-2.25-r1 USE="alsa cups dbus gtk -pcmcia" 579 kB
[ebuild N ] net-wireless/kdebluetooth-1.0_beta1-r2 USE="arts -debug -irmc -xinerama" 801 kB
Total: 4 packages (4 new), Size of downloads: 1,993 kB
Would you like to merge these packages? [Yes/No]
Ce coup ci, c'est pas instantané du tout!
On remarque que openobex a un flag bluetooth. On peut donc l'installer sans installer les dépendances bluetooth, mais vu que j'ai demandé à installer kdebluetooth, forcément elles seront installées... m'enfin si on utilise le bluetooth, vaut mieux mettre le flag quand même.
Question? Qui a sauté au plafond en voyant qu'on peut compiler KDE sans arts? Sur mon laptop il est compilé sans.
Attention, si vous virez un paquet, portage ne gueulera pas même si d'autres softs en dépendent. Y a "revdep-rebuild" qui est là pour corriger vos conneries dans ce cas.
Quand on installe un paquet, il est mis dans le World, mais pas ses dépendances. C'est un détail dont vous connaîtrez les subtilités si vous utilisez Gentoo.
Pour mettre à jour, faites un "eix-sync" pour synchroniser Portage (comme apt quand on lui fait scanner les dépots), c'est long. Genre entre 3 et 5 minutes. Partez faire des séries de pompes (Gentoo c'est bon pour la forme). Ensuite, y a la commande magique "emerge -NDuav world".
- N > va recompiler les paquets donc vous avez changé le USE (ou si sa valeur par défaut à changé quelque part dans les obscures confs de Gentoo), même si c'est la même version
- D > va mettre à jour aussi les dépendances, même si pas requis.
- u > "update" ...
- a > pour qu'il demande une si je veux vraiment mettre à jour une fois qu'il m'a montré tout ce qu'il y a à mettre à jour. Principalement pratique pour matter les flags et ajuster si besoin est.
- v > verbose ... ne sert à rien en fait o_O'
Comme vous avez le choix des versions, vous pouvez downgrader ou empêcher des updates, comme je l'ai fait pour le acpi4asus qui marche très bien avec sa vieille version et que j'y comprends rien dans les nouvelles.
Voilà, portage, c'est lent mais c'est bien!
Bon, j'ai décrêté que j'étais naze, si vous avez des questions, j'y répondrai avec plaisir.
Ah oui, conclusion partielle...
Avantages de Gentoo sur Fedora? < aucun
Avantages de Fedora sur Gentoo? < soutenue par Red Hat.
Oui, c'est tout, car pour moi ce sont tout simplement deux cibles différentes! Ceux qui n'en ont rien à battre de configurer leur système comme un malade bah vaut mieux qu'ils évitent Gentoo car ils vont détester. Ceux qui, en revanche, adorent se faire un système au petits oignons (encore que chez moi, ils sont coupés assez gros) bah ils vont adorer.
Inconvénient > Gentoo traverse une crise depuis plusieurs mois (devs qui se tapent dessus, du coup gros ralentissement dans le maintient du bouzin)... en gros, Gentoo bah est super à la bourre, contrairement à y a un an et demi.
PS: un truc important quand même, ptet notre seul avantage flagrant. Un changement de version de Gentoo n'est en gros qu'une mise à jour du CD d'installation. A savoir que la mise à jour de ma 2006.1 à la 2007.0 m'a pris environ ... 30 secondes (changer un lien symbolique).
Attention, entre la 2006.0 et 2006.1, les devs en ont profité pour passer à GCC 4 ... et là, c'est plus 30 secondes... mais des heures et des heures (sur mon athlon xp 2600+, ça me prendrait certainement plus d'un jour) de compilation avec le proco à 100% (ouais, les fiotes qui ont peur pour leur proco, évitez Gentoo).
PS2: un mec sur le forum avait dit que Gentoo avait relancé sa vie sexuelle avec sa femme... il devait sans doute compiler OOo. Ah oui, y a des binaires pour les trucs craignos, bah genre OOo, Firefox ou les trucs proprios. Et perso, c'est bien d'avoir le proprio sous la main plutot que de dire que c'est super mal mais se dépêcher d'installer le dépôt Livna (c'est pas une attaque contre Livna, heureusement qu'ils sont là ... surtout que je respecte énormément Anvil).
PS3: j'espère avoir distillé assez savamment l'humour pour rendre la lecture moins chiante. 😉