# Puppy Linux

Puppy Linux est une distribution Linux disponible en Live CD créée par Barry Kauler. D'une taille réduite (330 Mo pour la dernière version), cette distribution est conçue pour être légère, fiable et facile d'utilisation tout en conservant le maximum de fonctionnalités.
Toutou Linux (2010-2016) est un dérivé francophone de Puppy Linux.

## Description

L'éventail d'applications fournies avec Puppy permet d'en avoir un usage généraliste. On y trouvera par exemple le navigateur Pale Moon, le logiciel de traitement de texte AbiWord, le tableur Gnumeric, le logiciel de dessin vectoriel Inkscape Lite ainsi que le lecteur multimédia Gxine ; l'existence d'un gestionnaire de paquets permet de la spécialiser.
La version 7.5 du 6 décembre 2017 comporte le noyau 4.4.95-noPAE en version 32 bits, et 4.9.58 en version 64 bits. Cette distribution, depuis sa création, connaît un développement constant, sous l'impulsion de B. Kauler et d'une communauté de développeurs.

## Spécificités

L'intégralité du système d'exploitation ainsi que tous les programmes peuvent être chargés en RAM, ce qui permet de retirer le média d'amorçage après initialisation.
L'accès RAM étant plus rapide que l'accès disque dur, il permet de fonctionner plus vite en Live CD qu'une distribution installée, même avec une vieille machine.
Puppy Linux, intègre les dernières fonctionnalités liées au matériel récent, mais reste adapté aux ordinateurs plus anciens ou dont les ressources sont limitées ; il peut servir aussi utilement comme système de récupération d'un système endommagé.
Il est possible de faire démarrer le système depuis :
* une clé USB, une carte mémoire flash ou toute autre interface flash autorisant le démarrage (flash-Puppy) ;
* un disque optique (CD-Rom ou DVD-Rom) (live-Puppy dont il existe six variantes) ;
* un lecteur Zip ou SuperDisk LS-120/240 (zippy-Puppy) ;
* un disque dur (hard-Puppy) ;
* un réseau Ethernet (thin-Puppy) ;
* un émulateur, sous Windows par exemple (emulated-Puppy).
Sur certaines machines non récentes il sera nécessaire de se servir d'une disquette d'amorçage ou d'avoir un chargeur d'amorçage de type Grub sur le disque dur afin de permettre le chargement du système depuis une clé USB.
Puppy Linux est l'une des rares distributions Live CD capable de sauvegarder des fichiers sur le Live CD lui-même (en mode multi-session), ce qui permet à l'utilisateur de transporter des données, et plus particulièrement de sauver ses réglages personnels.
Puppy Linux reconnaît les disques ou partitions de disques qu'utilise Windows (NTFS) et y accède en lecture et écriture.

## Interface utilisateur

Puppy Linux est basé sur l'environnement de bureau ROX. Le gestionnaire de fenêtres par défaut est JWM (Joe's Window Manager). Des paquets d'installation d'autres gestionnaires (tels qu'IceWM, Fluxbox ou Enlightenment) sont également téléchargeables. C'est une des rares distributions en mode super-utilisateur par défaut.
Lorsque le système s'initialise, l'intégralité du système se décompresse dans une zone de la mémoire vive accessible par l'utilisateur par le biais d'un disque virtuel (RAM Disque). Le PC doit être équipé d'un minimum de 128 Mo de mémoire vive (à condition que la mémoire vidéo partagée n'excède pas 8 Mo pour 128 Mo de RAM). On a aussi la possibilité de faire une installation « classique » sur disque dur, bien que Puppy soit développé dans une optique de distribution « live » ; pour en conserver les spécificités, si les ressources le permettent, on préfèrera une "installation frugale" sur disque dur ; elle permet un démarrage plus rapide tout en conservant le chargement total en RAM et la vitesse d'exécution sans l'utilisation du support CD ou USB.
La distribution inclut une large quantité de scripts spécifiques à Puppy pour la configuration du matériel et de l'interface utilisateur. Les interfaces, qui guident l'utilisateur pas à pas et la reconnaissance d'un grand nombre de configurations matérielles, font de Puppy une distribution facile à prendre en main, y compris pour les débutants.

## Le gestionnaire de paquets

Puppy Linux met à disposition un gestionnaire de paquets (Puppy package manager) qui facilite l'installation de nouveaux logiciels. À l'instar des grandes distributions Linux, cette interface présente les paquets installés et installables, et automatise leur installation/désinstallation, évitant la démarche souvent déroutante de l'installation manuelle (./configure, make, make install...). On trouvera une liste de paquets officiels qui ont été créés et testés pour Puppy Linux, à partir des sources ou de paquets Slackware (pour les versions Slacko) ou Ubuntu.
Puppy Unleashed est une interface permettant, à partir du choix des paquets disponibles, de créer un LiveCD personnalisé de Puppy. Cela représente plus de 300 paquets. Un script permet à l'utilisateur de sélectionner facilement les paquets dont il a besoin.

## Variantes de Puppy

De 2003 à 2013, Puppy était principalement développé par Barry Kauler ; il laissa ensuite la distribution aux mains de la communauté, tout en continuant à développer des projets dérivés.
Les variantes de Puppy se divisent aujourd'hui en 3 familles :
* Les distributions officielles, alternant entre versions Slacko (basées sur Slackware) et versions basées sur Ubuntu
* Les distributions communautaires, construites avec l'outil Woof-CE (qui sert également à bâtir les versions officielles)
* Les autres distributions dérivées, appelées Puplets
Par le passé, d'autres classifications servaient à différencier les variantes ; par exemple jusqu'à la version 5 on distinguait les versions Wary (stables), Racy (stables mais avec noyau plus récent) et Quirky (expérimentales, aujourd'hui devenue distribution à part). Lorsque les versions Ubuntu étaient non-officielles elles étaient surnommées Upup.
Certains dérivés sont aujourd'hui considérés comme distributions à part entière, et listées comme telles sur Distrowatch.com :
* Quirky, version expérimentale maintenue par Barry Kauler ;
* Fatdog64 Linux, un linux plus complet et dédié à l'architecture en 64 bits ;
* Legacy OS (anciennement TeenPup), linux dédié à l'installation sur des machines anciennes ;
* Toutou Linux, dérivé francophone$^,$ utilisant le gestionnaire de fenêtres Openbox ;
* ToOpPy Linux, dérivé multilingue ;
* MacPup, incluant le gestionnaire graphique Enlightenment.
Parmi les Puplets, on peut citer :
* l'édition Barebones, minimale et comprenant le navigateur Dillo (taille 40 Mo) ;
* l'édition EduPup, destinée aux enfants (TuxType 2, TuxMath, GCompris, Tux Paint) (taille ~150 Mo) ;
* l'édition KDEPuppy, incluant le gestionnaire graphique KDE (taille 125 Mo) ;
* l'édition Pupeee, destinée aux possesseurs d'Eee PC (taille 139 Mo) ;
* ASRI Edu projet francophone destiné aux enfants âgés de 3 à 12 ans, aux profs (instits) et aux linuxiens débutants ;
* Lxpup, une version avec l'environnement de bureau LXDE ;
* Justin Bieber Linux, une blague en réponse à Hannah Montana Linux basé sur Ubuntu.
Concernant la création de nouvelles Puplets, le Live CD de Puppy linux contient les outils de base pour leur production, et on peut ensuite les mettre en partage sur le site communautaire.