# Source Mage

Source Mage est une distribution Linux dite source. Le slogan de Source Mage est “Linux so advanced, it may as well be magic”.

## Histoire

En 2001, Kyle Sallee libère une distribution Linux appelée Sorcerer GNU/Linux. Cependant, plusieurs développeurs étaient mécontents de l'approche de développement de Kyle, et ont créé un fork du projet qui devint Lunar Linux. Kyle Sallee en fut extrêmement mécontent, et retira Sorcerer GNU/Linux du web (rendant impossible pour les utilisateurs la mise à jour de leurs systèmes). La plupart des développeurs restants de Sorcerer GNU/Linux rassemblèrent les morceaux de Sorcerer GNU/Linux et redémarrèrent le projet. Au début, le projet fut libéré sous l'ancien nom (Sorcerer GNU/Linux), mais Kyle Sallee demanda le renommage du projet. Les développeurs ont alors publié leur projet sous le nom Source Mage GNU/Linux en avril 2004, avec un nouveau leadership n'incluant pas Kyle Sallee.

## Fonctionnalités notables

Source Mage est, comme son nom le suggère, une distribution Linux source. Au lieu de distribuer des binaires aux utilisateurs, le code source est compilé. Cette méthode permet plus de contrôle sur le logiciel que dans les distributions précompilées telles que Debian. Les dépendances peuvent être sélectionnées ou déselectionnées individuellement, préservant l'espace disque et libérant de la mémoire et des cycles CPU. Par exemple, OpenSSH peut être compilé sans le support du partage X11. On peut aussi choisir ses propres cflags, cxxflags et ldflags.
Utiliser une distribution source est une solution pour exploiter pleinement les performances d'un ordinateur, étant donné que les distributions binaires compilent leurs logiciels pour un large public, et non pas un groupe particulier tel que les utilisateurs d'un processeur spécifique.
Dans Source Mage, chaque paquet est appelé un spell (sortilège) et est cast (en anglais, jeté, lancé) sur l'ordinateur. « Caster un spell » (en anglais, to cast a spell signifie « jeter un sort ») consiste au téléchargement du code source (depuis le site du développeur plutôt que depuis celui de Source Mage), à la vérification des dépendances, à la compilation du programme et à son installation. Un ensemble de spell est appelé un grimoire. La désinstallation de paquets se fait avec la commande "dispel".
Les paquets de SMGL changent aussi peu que possible (uniquement pour s'adapter aux standards tels que Filesystem Hierarchy Standard) et est donc plus résistantes aux erreurs relevant des modifications des développeurs.

## Contrat social

* Source Mage GNU/Linux a établi un "Contrat social" qui pose les règles de base, similaires à celles de Debian. La première partie du contrat assure la liberté de Source Mage :
« Source Mage restera à 100 % libre. Nous nous engageons à garder la distribution Source Mage GNU/Linux complètement libre. Cela signifie que tous les logiciels que nous produiront seront distribués sous la GNU Public License. [...] Toute notre documentation sera distribuée sous la GNU Public License. »
* Source Mage GNU/Linux ne restreint pas le choix de l'utilisateur uniquement aux logiciels libres :
« Nous reconnaissons que certains de nos utilisateurs exigent l'utilisation de programmes qui ne se conforment pas aux règles de licenciation de SMGL. Alors que SGML ne s'appuiera jamais sur des logiciels non libres, nous ne limitons pas le choix de logiciels de l'utilisateur. Nous fournirons les outils pour que l'utilisateur prenne ses propres décisions averties, via le champ "LICENSE" de chaque spell, et le filtrage de spell de sorcery. Ainsi, bien que les logiciels non libres ne font pas partie de Source Mage, nous supportons leur utilisation, et nous fournissons l'infrastructure (tels notre système de suivi de bug, nos listes de diffusions, et des spell) pour les paquets de logiciels non libres. »

## Installation

Installer Source Mage GNU/Linux implique de créer une installation minimale comprenant un noyau, le compilateur C GCC, une connexion réseau, et quelques autres outils de base pour télécharger et compiler le code source. Ceci permet au système de télécharger, compiler pour un système spécifique et installer tous les autres composants.

## Portabilité

Tous les outils de Source Mage sont conçus pour fonctionner avec un système très minimal. Par exemple, ils sont écrits en Bash et sont basés sur les utilitaires GNU compatibles POSIX et GCC ne nécessite pas d'être compilé avec g++ (le compilateur c++). GNU Sed et Awk sont utilisés à la place de Perl. Tout cela rend Source Mage approprié pour une petite installation.