Plus sur CTKArch
Le projet a débuté en juin 2009, où, par curiosité, j'ai voulu essayer de faire un LiveCD.
Il faut dire que j'en rêvais depuis 2003, où j'avais découvert GNU/Linux avec Knoppix dans Linux Pratique 16.
J'ai commencé le projet dès que le problème de la configuration de X a disparu : Xorg s'était mis à utiliser HAL pour la détection du clavier et de la souris ! Plus besoin de configuration statique !
L'usage au début était surtout de tester rapidement Arch avec Xorg sur un PC, avant de se lancer dans l'installation : ç'aurait été du temps perdu d'installer, pour s'apercevoir ensuite que certaines choses ne fonctionnaient pas bien…
Le résultat au départ n'était pas très probant, mais le CD bootait sur Xorg, ce qui était le but recherché.
Tant qu'à faire, j'avais également inclus un petit environnement graphique, et quelques applications au cas où — je
venais d'abandonner KDE3.5, n'ayant pas voulu passer à KDE4, et j'étais assez content de
ma petite config Openbox + panel.
C'est là que tout a commencé. J'ai mis l'ISO 0.1 en ligne, et elle a intéressé quelques personnes sur le canal
#archlinux-fr de Freenode. L'environnement était un peu moche, donc la 0.2 a suivi, avec un thème plus joli —
et pas mal d'applications en plus.
J'ai posté un message sur le forum archlinux.fr.
Et puis, on a commencé à me demander comment l'installer sur le disque dur : il n'y avait pas d'installeur.
C'est vrai que quand je faisais des installations d'Arch Linux pour des amis, je faisais à chaque fois la même chose !
Alors, après tout, pourquoi ne pas automatiser l'installation d'un système de base avec X (avec quelques applis),
pour gagner du temps ?
La 0.3 est donc sortie, avec un installeur.
À ce moment, le KMS (mode vidéo appliqué par le noyau) faisait son apparition. Il fallait absolument en faire quelque
chose ! La 0.4 fut donc un essai (raté) de supporter le KMS des cartes vidéo Intel/ATI/nVidia.
Il y avait cependant des nouveautés intéressantes : l'iso hybride, pouvant aller sur un CD ou un médium de stockage (USB p. ex) ;
la possibilité d'avoir une partition de documents persistants, par exemple dans l'espace restant sur le médium de stockage
où on a « dd » l'iso, et la copie en RAM de la live à chaud. Sans oublier un chargeur de boot plus joli.
Enfin, j'ai sorti une version i586, en compilant une partie des dépôts Arch Linux pour cette architecture.
Pour la 0.5, j'ai décidé de faire les choses bien : j'ai inclus la version git du DRI Nouveau — qui supporte
l'accélération 3D des cartes nVidia.
Un autre problème était apparu : de plus en plus de gens me demandaient des changements incompatibles, et d'inclure des paquets
que je n'aimais pas (propriétaires, …).
J'ai donc eu une idée toute simple : pourquoi ne pas permettre de mettre ces ajouts dans la partition de documents ?
Les add-ons étaient nés. De cette façon, le live de base pouvait rester minimal ; et tout le monde pouvait être satisfait, puisqu'il était devenu très facile d'ajouter ce qu'on voulait.
Neuf mois ont passé, la période d'une gestation comme
l'a dit Gyo. Même si la cinquième mouture se faisait vieille, j'attendais pour sortir la suivante que HAL ne soit
plus requis du tout.
Je l'avais promis : à chaque version, plus léger ! (et plus propre, mais ce genre de chose se voit moins)
J'ai enfin pris deux semaines pour finir la 0.6. Face aux e-mails que je recevais en anglais, je m'étais dit
qu'il fallait faire quelque chose : je l'ai donc traduite en anglais !
Certains voulaient modifier la live ; c'est maintenant très facile avec le support des addons sur le CD.
Pour pousser l'idée jusqu'au bout, je pensais faire un assembleur d'iso en ligne, mais il est reporté pour la prochaine. L'idée de faire des iso « de base », pour les personnaliser avec des addons, est également séduisante.
Plein d'idées à exploiter ! À suivre…
Philosophie
Les idées qui ont mené à CTKArch sont directes et un peu extrêmes.
La base
La première idée est : tout le monde est d'accord — pas sur tout, mais sur un nombre de points surprenant.
Pour être plus précis, sur une installation de bureau, il nous faut un noyau, un userland, et un serveur X window.
Et bien sûr il nous faut un environnement de bureau, fournissant les fonctions élémentaires suivantes :
Une fois qu'on a ceci (et un menu de configuration pour l'environnement), on remarque qu'un visualisateur d'image, de PDF, etc…
pour les types de documents les plus courants, ce serait pratique.
Pouvoir les éditer serait bien aussi. C'est l'objectif de toutes les applications incluses.
Nous y sommes : c'est CTKArch.
Le choix des applications
Maintenant, vous savez qu'il y a beaucoup d'applications pouvant fournir chacune de ces fonctions.
Nous ne voulons pas de logiciels lourds. Nous ne voulons pas de logiciels propriétaires.
Nous voulons des logiciels simples, légers et efficaces, qui font une chose, et la font bien.
J'ajouterai que nous voulons que le système et les applications se lancent le plus vite possible.
Idéalement, on appuie sur le bouton power, et deux secondes plus tard, on utilise l'application qu'on voulait.
Comment atteindre la légèreté
Pour lancer le système rapidement, il faut se débarrasser du superflu.
Pour cela, je suis ce principe : il est plus rapide de lancer rapidement un environnement vide, que de le remplir avec des
services lancés automatiquement, qui *pourraient* être utiles, mais qui généralement nous font juste perdre du temps.
Je n'aime pas les services de notification lancés en tâche de fond.
Personne n'a besoin qu'une pop-up vole le focus de la fenêtre où on était en train de taper, par exemple en branchant
un médium de stockage externe. C'est beaucoup plus rapide de lancer l'explorateur soi-même, *si c'était ce qu'on
voulait* : on pouvait parfaitement vouloir fsck ou partitionner ce médium. Dans ce cas, le monter automatiquement aurait été stupide !
Les comportements automatiques sont toujours embêtants, lourds et imprévisibles !
Un OS devrait fournir à l'utilisateur une interface qui permette d'utiliser instantanément la fonction qu'il désire.
Et rien d'autre.
Si tout cela vous semble aussi juste qu'évident… Rejoignez le projet !