Bienvenue sur le wiki de 0Linux, un système Linux original et complet destiné au public francophone et publié sous licence libre CeCILL (voir le fichier LICENCES).


Sommaire

Qu'est-ce ?

0Linux est un système GNU/Linux francophone complet pour systèmes x86, construit depuis rien, et pensé d'abord pour le poste de travail, l'internet et le multimédia. Il peut également faire office de serveur Web ou de courrier électronique.

C'est un système francisé autodidactique qui permet de favoriser l'apprentissage de l'utilisation d'un système Linux : de nombreux fichiers de configuration sont traduits en français et contiennent des commentaires sur leur utilisation ; l'installateur quant à lui demande d'utiliser la ligne de commande pour renseigner le système, mais de façon assistée.

Les environnements graphiques inclus sont Enlightenment, Fluxbox, KDE, Kodi, LXQt, MATE, Openbox et Xfce. GNOME est en cours d'intégration. Le système contient entre autres :

  • Glibc 2.x
  • Enlightenment
  • Firefox
  • GCC 4.x
  • GIMP 2.x
  • KDE 4
  • LibreOffice 4
  • Linux basse latence, compilé avec le maximum d'options et de modules
  • X.org
  • Xfce 4.x

Le système 64 bits a la particularité d'être multilib : les architectures i686 et x86_64 peuvent cohabiter au sein du même système. On peut donc compiler et exécuter des logiciels 32 bits et 64 bits, pour peu que l'on dispose des bibliothèques ad-hoc (déjà incluses dans les paquets concernés).

Les processus de compilation et d'installation des logiciels sont décrits dans des « recettes » (de simples scripts en Bash) permettant reconstruire chaque paquet facilement, simplement en exécutant la recette.

Les paquets contiennent ou tentent de contenir le maximum fourni par les développeurs d'origine (« l'upstream ») et ne sont pas séparés en sous-paquets (comme sous d'autres distributions contraintes par la gestion des dépendances inter-paquets) : par exemple, l'unique paquet libpng de 0Linux x86_64 contient les binaires, les bibliothèques, les bibliothèques supplémentaires 32 bits, les bibliothèques statiques, la documentation, les manuels, etc.

0Linux compte plus de 1800 paquets disponibles, que ce soit pour un usage de type « station de travail » ou « serveur ». L'intégralité des applications installables sont disponibles sur la page des Téléchargements ou via la commande 0g -i.

0Linux fait officiellement partie de l'Open Invention Network, merci de leur sollicitude.

:!: 0Linux ne prend pour le moment pas en charge les EFI, remplaçants des obsolètes BIOS. L'option de compatibilité des EFI nommée « BIOS Legacy » ou « Legacy Boot » doit être activée. Le « Secure boot » doit être quant à lui désactivé. Une installation de 0Linux dans les EFI est néanmoins possible manuellement.

Merci aux contributeurs et testeurs pour leurs tests et leur enthousiasme.


Pour qui ?

Le système s'adresse aux utilisateur(trices) désireux(ses) d'en apprendre un peu plus sur Linux en général, de niveau débutant (très) intéressé ou intermédiaire, pour lesquels le confort de la langue du système est important ou pour les personnes voulant utiliser un système standard sans fioritures ou outils spécifiques, optimisé pour le multimédia, poussant à mettre le nez dans les fichiers de configuration et à utiliser occasionnellement le terminal.

La distribution s'orientait à l'origine vers le traitement audio et le « home studio » ou le multimédia, ce qui explique la présence de nombreuses bibliothèques audio ainsi que le serveur audio basse latence JACK. Cet aspect n'est plus une priorité, au vu du peu d'intérêt suscité et de la difficulté d'intégration des logiciels ; néanmoins, ceux-ci demeurent intégrés au système.


Comment ?

0linux a pu naître grâce aux méthodes de Linux From Scratch, Cross LFS et DIY Linux pour construire une première chaîne d'outils permettant de compiler pour les 2 architectures, x86 et x86_64. La distribution s'est dans un premier temps beaucoup inspirée de Slackware (appliquer le moins de correctifs possible, utiliser une initialisation à la BSD) pour construire le système final. Elle a sa propre chaîne d'outils depuis 2010 (le nom complet de la « machine » est <architecture>-0linux-linux-gnu) et se recompile elle-même avec bonheur.

Le principe de construction des paquets consiste à compiler successivement d'abord en 32 bits puis en 64 bits chaque logiciel fournissant des bibliothèques ou des outils spécifiques à une architecture (auquel cas contraire on ne compilait qu'en 64 bits) puis à empaqueter en archive le résultat - sans oublier la doc, les liens, etc. - dans un paquet .spack utilisant le format CPIO. La recette prend en charge la création de l'éventuel fichier de post-installation ainsi que la description du logiciel en créant le fichier à la volée.

Les recettes de 0linux ont leurs fonctions préchargées pour faciliter les tâches répétitives et sont adaptées aux architectures i686, x86_64 et, hypothétiquement et pour un port futur, ARM.

Voir la documentation pour en savoir plus.

Un soin particulier a été apporté au système pour qu'un maximum de francophonie y soit présente, que ce soit dans le système de fichiers, le démarrage de la machine ou les scripts de compilation, afin de permettre de comprendre plus facilement ce qui se passe dans le système à un utilisateur anglo-sceptique ;). Les recettes sont basées à l'origine sur les règles d'écriture des SlackBuilds de slackware-fr.org (téléchargement automatique des sources, utilisation systématique de fakeroot et variables standardisées) et ont dévié au fur et à mesure vers une syntaxe unifiée et simplifiée utilisant des fonctions prédéfinies.


Pourquoi ?

Pourquoi pas ? :) Le système est pensé pour être généraliste, francophone et autodidactique (et agréable), et s'oriente sur le multimédia. Je l'utilise avec bonheur quotidiennement et exclusivement, y compris en tant que serveur Web. Sa construction et sa maintenance me permettent d'apprendre et d'approfondir ma connaissance du fonctionnement des systèmes GNU/Linux et de la partager avec d'autres enthousiastes.

Historiquement, ce projet n'était à la base qu'une traduction intégrale en français de la distribution Slackware, qui s'est avérée délicate sans toucher profondément à l'intégrité du système. J'ai alors créé mon propre système puis, après avoir touché à la compilation croisée, mon système est passé multilib. J'ai alors décidé que tout ce temps à travailler seul devait être dépensé pour un projet qui soit public et libre. Depuis 0Linux epsilon, le système dispose d'une arborescence de recettes communes à plusieurs architectures (pour le moment i686 et x86_64, plus tard peut-être ARM) pour simplifier la maintenance et faciliter le développement.


Qui ?

Je suis un autodidacte ayant la trentaine ; ça me paraît important de le souligner. Je me suis remis à linux et Slackware que j'utilisais depuis presque 10 ans en 2008 et j'en suis là aujourd'hui. Je travaille sur ce projet avec l'aide de fatalerrors pour l'ensemble de la compilation des paquets ainsi que Seb, le développeur de Spack, pour la gestion des paquets et les outils maison de mises à jour. Merci à eux pour leur constance.

Quelques contributions : Papiers peints

Merci à nos partenaires pour les serveurs dédiés, espaces d'hébergement et autres services sans lesquels on ne serait pas arrivé à grand chose, merci !

Écrivez-nous à contact@0linux.org

Une liste de diffusion est disponible. Envoyez un courriel avec comme sujet “Subscribe” à 0linux-dev-request@lists.tuxfamily.org pour vous y inscrire. Les archives se trouvent ici : http://listengine.tuxfamily.org/lists.tuxfamily.org/0linux-dev

Un canal #0linux existe sur le réseau IRC Freenode : irc://irc.freenode.net. Un salon de discussion Jabber existe occasionnellement à l'adresse 0linux@chat.jabberfr.org.

appzer0, mainteneur de 0Linux