Comme le titre de ce billet le sous-entend, mon choix[1] est déjà arrêté : il s'agit d'Arch Linux.

J'utilise Linux au quotidien depuis environ sept ans, après avoir débuté sous Slackware, utilisé Debian (stable/testing/unstable), Gentoo, Ubuntu puis de nouveau Gentoo je commence à pouvoir identifier ce que j'aime et n'aime pas dans une distribution Linux.
Pour faire simple et court, j'attends d'une distribution qu'elle propose des paquets récents si ce n'est à jour et que ces paquets ne me forcent pas à installer une shitload de dépendances dispensables (support LDAP, Ruby, GTK etc.). J'aime que les fichiers de configuration et les utilitaires propres à la distribution (gestion des scripts d'init, de la configuration réseau et du noyau etc.) soient simples et clairs.

Plutôt que de me lancer dans une rétrospective laborieuse de ce qui m'a plu dans les distributions que j'ai utilisées jusqu'à ce jour, je vais vous dire pourquoi je me dirige vers Arch. Tout a commencé lorsque j'ai entendu des collègues de taff en parler, les entendre dire à quel point ils étaient comblés par cette distribution. Jusqu'ici rien d'exceptionnel — on a tous nos distributions favorites — sauf que les gars en questions sont d'anciens utilisateurs de Gentoo... Ça aurait dû me mettre sur la voie immédiatement : on ne lâche pas Gentoo sans raison, si on passe à une autre distrib' c'est forcément parce qu'il y a mieux. Au risque de paraître élitiste, Gentoo est un cas à part dans l'univers des distributions Linux : il faut avoir essayée et appréciée pour comprendre ce que j'essaye de dire.

Étrangement lorsque je repense à ce que mes collègues me disaient sur Arch, ils ne me vantaient pas de killer features techniques... juste que c'était simple, que ça fonctionnait bien et que ça leur allait parfaitement. Voyons ce que dit le Beginner's guide officiel de cette distribution

Arch Linux distribution highlights: * Simple design and philosophy

Ouais, ils disent tous ça...

* Independently Developed Community distro built from scratch and targeted at competent GNU/Linux users

Ça me plait : pas une distrib' d'attardés, maintenue par une communauté.

* All packages compiled for i686/x86-64 * Highly customizable system assembled by the user from the ground up

Ah, possibilité de customiser ses paquets. Reste à voir de quelle façon, mais c'est deja un bon point.

* BSD-style init scripts, featuring one centralized configuration file

Tiens, ça va me rappeler de bons souvenirs de Slackware et FreeBSD :)

* mkinitcpio: a simple and dynamic initramfs creator

Pourquoi pas, on jugera de son utilité en temps voulu...

* Rolling Release model

Très bon point : je préfère mettre à jour mon système quotidiennement et ainsi suivre en douceur les versions upstream des logiciels plutôt que d'upgrader une grosse fois par an (au mieux) au risque de péter des trucs au passage.

* Pacman package manager is fast, written in C, lightweight and agile, with a very modest memory footprint

Bon le gestionnaire de paquets a un nom pourri mais si il est plus rapide que Portage de Gentoo, je prends...

* ABS: The Arch Build System, a ports-like package building system makes it simple to create your own easily installable Arch packages from source, to use and/or share with the community on the AUR

Hmmhmm, on en jugera en temps voulu aussi.

* AUR: The Arch User Repository, offering many thousands of build scripts for Arch user-provided software packages

Idem.

Sur le papier, Arch Linux a l'air d'un bon compromis entre Slackware (pour l'aspect minimaliste et la simplicité de l'administration) et Gentoo (pour la faculté de customisation du système). Puisque j'en suis aux comparaisons, on trouve sur le décidément très bien fourni wiki officiel d'Arch une page[2] qui compare la distribution aux autres. Puisque ma dernière distribution en date est Gentoo, voyons voir ce qui m'attend :

Arch vs Gentoo

Because the Arch installation is binary, it is much less time-consuming than the source-based Gentoo installation. Both Gentoo and Arch allow binary and source-based packaging as well as makeworld functions; however, the Gentoo base system is source-based while Arch's is binary. Both are rolling-release systems. Arch PKGBUILDs are widely perceived as simpler and more expedient to create than Gentoo ebuilds. Gentoo offers support for x86, ppc, sparc, alpha, amd64, mips, hppa, and itanium, whereas Arch offers i686 and x86-64 only. The Arch design approach is more focused on simplicity and minimalism, whereas Gentoo focuses more on the ability to globally control each aspect of source compilation. Both distros allow for a very high level of customization, therefore, Gentoo users will generally feel quite comfortable with most aspects of Arch.

Alors là j'ai envie d'dire, \o/ quoi ! C'est en partie les "défauts" que je trouvais à Gentoo : j'ai déjà créé un ebuild "pour voir", et même si on est loin du délire délirant de complexité d'un paquet Debian c'est quand même pas simple, surtout pour les gros applicatifs (Apache, MySQL...) et tous ceux qui, de manière générale, proposent plein de dépendances facultatives qu'il faut transcrire en USE flags pour l'utilisateur. Quant aux possibilités d'optimisation des binaires sous Gentoo, passés les premières optimisations de base je suis vite largué (optimisation GCC, CPU & co).

Voilà pour le prologue de cette série de billets. Bientôt le premier billet avec l'installation d'Arch Linux sur chorizo, mon fidèle Thinkpad X61s.

Notes

[1] Tous les arguments qui vont suivre sont strictement subjectifs car fondés sur mon expérience, merci de ne pas venir me chier dans les bottes parce que vous ne jurez que par Debian. Surtout pas Debian.

[2] Arch Compared To Other Distros