:B~ À propos de ce manuel 1~about-manual À propos de ce manuel L'objectif principal de ce manuel est de servir de point d'accès unique à tous les documents liés au ${project} et particulièrement aux logiciels produits par le projet pour Debian 9.0 «${stable}». Une version mise à jour peut toujours être trouvée sur http://live-systems.org/ . Ce manuel a principalement pour but de vous aider à construire un système live et non pas de s'articuler autour des sujets relatifs à l'utilisateur final. Toutefois, l'utilisateur final peut trouver des informations utiles dans ces sections: {Les Bases}#the-basics couvrent le téléchargement des images précompilées et la préparation des images pour être démarrées sur les supports ou sur le réseau, soit en utilisant le constructeur web, soit en exécutant live-build directement sur le système. {Personnalisation des comportements pendant l'exécution}#customizing-run-time-behaviours décrit certaines options qui peuvent être indiquées à l'invite de démarrage, telles que la sélection d'un clavier, des paramètres régionaux et la persistance. Certaines commandes mentionnées dans le texte doivent être exécutées avec les privilèges de super-utilisateur, qui peuvent être obtenus à l'aide de la commande #{su}# ou en utilisant #{sudo}#. Afin de distinguer les commandes qui peuvent être exécutées par un utilisateur sans privilège de celles nécessitant les privilèges de super-utilisateur, les commandes sont précédées respectivement par #{$}# ou #{#}#. Notez que ce symbole ne fait pas partie de la commande. 2~ Pour les impatients Même si nous croyons que tout dans ce manuel est important pour au moins certains de nos utilisateurs, nous nous rendons compte qu'il y a beaucoup de matière à couvrir et que vous pouvez vouloir expérimenter avant d'entrer dans les détails. Par conséquent, nous vous suggérons de lire dans l'ordre suivant. Tout d'abord, lisez ce chapitre {À propos de ce manuel}#about-manual dès le début et finissant avec la section {Terminologie}#terms. Ensuite, passez aux trois tutoriels à l'avant de la section {Exemples}#examples destinée à vous apprendre la construction de l'image et les bases de la personnalisation. Lisez en premier {En utilisant les exemples}#using-the-examples, puis {Tutoriel 1: Une image par défaut}#tutorial-1, {Tutoriel 2: Un logiciel de navigateur Web}#tutorial-2 et finalement {Tutoriel 3: Une image personnalisée}#tutorial-3. À la fin de ces tutoriels, vous aurez un avant-goût de ce qui peut être fait avec les systèmes live. Nous vous encourageons à revenir à l'étude plus approfondie du manuel, en poursuivant par exemple votre lecture par {Les bases}#the-basics, {Construire une image netboot}#building-netboot-image et finissant par la lecture de la {Vue d'ensemble de la personnalisation}#customization-overview et les sections suivantes. Après cela, nous espérons que vous serez complètement excités par ce qui peut être fait avec les systèmes live et motivés pour lire le reste du manuel, du début à la fin. 2~terms Terminologie _* *{Système Live}*: Un système d'exploitation pouvant être démarré sans installation préalable sur un disque dur. Les systèmes live ne modifient pas le système d'exploitation local ou les fichiers installés sur le disque dur sans qu'on leur en donne explicitement l'instruction. D'habitude, les systèmes live sont démarrés à partir des supports tels que des CDs, DVDs, ou des clés USB. Certains systèmes peuvent également être démarrés sur le réseau (via des images netboot, voir {Construction d'une image netboot}#building-netboot-image), et sur l'Internet (via le paramètre d'amorçage #{fetch=URL}#, voir {Webbooting}#webbooting). _* *{Support live}*: À la différence du système live, le support live se réfère au CD, DVD ou clé USB où l'image binaire produite par live-build et utilisée pour démarrer le système live est écrite. D'une manière générale, le terme désigne également tout emplacement où réside l'exécutable qui permet de démarrer le système live, tel que l'emplacement des fichiers de démarrage sur le réseau. _* *{${project}}*: Le projet qui maintient, entre autres, les paquets live-boot, live-build, live-config live-tools et live-manual. _* *{Système hôte}*: L'environnement utilisé pour créer le système live. _* *{Système cible}*: L'environnement utilisé pour faire fonctionner le système live. _* *{live-boot}*: Une collection de scripts utilisés pour lancer des systèmes live. _* *{live-build}*: Une collection de scripts utilisés pour construire des systèmes live personnalisés. _* *{live-config}*: Une collection de scripts utilisés pour configurer un système live pendant le processus d'amorçage. _* *{live-tools}*: Une collection de scripts supplémentaires utilisés pour effectuer des tâches utiles dans un système live en fonctionnement. _* *{live-manual}*: Ce document est maintenu dans un paquet nommé live-manual. _* *{Debian Installer (d-i)}*: Le système d'installation officiel pour la distribution Debian. _* *{Paramètres d'amorçage}*: Les paramètres qui peuvent être entrés à l'invite de démarrage afin de modifier le noyau ou live-config. _* *{chroot}*: Le logiciel /{chroot}/, #{chroot(8)}#, nous permet d'exécuter plusieurs instances concurrentes de l'environnement GNU/Linux sur un système sans redémarrage. _* *{Image binaire}*: Un fichier contenant le système live, tel que live-image-i386.hybrid.iso ou live-image-i386.img. _* *{Distribution cible}*: La distribution sur laquelle votre système live sera basée. Celle-ci peut être différente de la distribution de votre système hôte. _* *{stable/testing/unstable}*: La distribution *{stable}*, actuellement nommée ${stable}, contient la dernière version officielle de Debian. La distribution *{testing}*, temporairement nommée ${testing}, est la prochaine version *{stable}* où seulement les paquets suffisamment matures peuvent entrer. Un avantage de cette distribution est qu'elle contient des logiciels de versions plus récentes que la version *{stable}*. La distribution *{unstable}*, nommée sid de façon permanente, est en constante évolution. En général cette distribution est utilisée par les développeurs et ceux qui aiment le risque. Tout au long du manuel, nous avons tendance à utiliser les noms de code pour les évolutions majeures, tels que ${testing} ou sid, car c'est ce qui est pris en charge par les outils eux-mêmes. 2~ Auteurs La liste des auteurs (dans l'ordre alphabétique): _* Ben Armstrong _* Brendan Sleight _* Carlos Zuferri _* Chris Lamb _* Daniel Baumann _* Franklin Piat _* Jonas Stein _* Kai Hendry _* Marco Amadori _* Mathieu Geli _* Matthias Kirschner _* Richard Nelson _* Trent W. Buck 2~how-to-contribute Contribuer à ce document Ce manuel est conçu comme un projet communautaire et toutes les propositions d'améliorations et de contributions sont bienvenues. Veuillez consulter la section {Contribuer au projet}#contributing-to-project pour des informations détaillées sur la façon d'obtenir une clé et de faire des livraisons (commits). 3~applying-changes Appliquer des modifications Afin d'apporter des modifications au manuel anglais, vous devez modifier les fichiers adéquats dans #{manual/en/}# mais avant de soumettre votre contribution, veuillez prévisualiser votre travail. Afin de prévisualiser live-manual, assurez-vous que les paquets nécessaires sont installés en exécutant: code{ # apt-get install make po4a ruby ruby-nokogiri sisu-complete }code Vous pouvez compiler live-manual dans le répertoire de niveau supérieur de votre Git checkout en exécutant: code{ $ make build }code Comme il faut un certain temps pour construire le manual dans toutes les langues prises en charge, les auteurs peuvent trouver pratique d'utiliser l'un des raccourcis de construction rapide lors de la révision de la nouvelle documentation ajoutée au manuel anglais. #{PROOF=1}# construit live-manual au format html, mais sans les fichiers html segmentés, et #{PROOF=2}# construit live-manual au format pdf, mais seulement les portraits A4 et US. C'est pourquoi l'utilisation de l'une ou l'autre des possibilités peut sauver une quantité considérable de temps, par exemple: code{ $ make build PROOF=1 }code Lors de la révision d'une des traductions, il est possible de construire une seule langue en exécutant, par exemple: code{ $ make build LANGUAGES=de }code Il est également possible de construire par type de document, par exemple, code{ $ make build FORMATS=pdf }code Ou combiner les deux, par exemple: code{ $ make build LANGUAGES=de FORMATS=html }code Après avoir relu votre travail et vous être assuré que tout va bien, n'utilisez pas #{make commit}# à moins que vous mettiez à jour les traductions dans le commit. Dans ce cas, ne mélangez pas les modifications apportées au manuel en anglais et les traductions dans la même livraison, mais utilisez des commits séparés. Consultez la section {Traduction}#translation pour plus de détails. 3~translation Traduction Afin de traduire live-manual, procédez comme suit, selon que vous commencez une traduction à partir de zéro ou vous travaillez sur une traduction déjà existante: _* Commencer une nouvelle traduction à partir de zéro _2* Traduisez les fichiers *{about_manual.ssi.pot}*, *{about_project.ssi.pot}* et *{index.html.in.pot}* dans #{manual/pot/}# dans votre langue avec votre éditeur préféré (comme /{poedit}/). Envoyez les fichiers #{.po}# traduits à la liste de diffusion pour vérifier leur intégrité. La vérification d'intégrité de live-manual garantit non seulement que les fichiers #{.po}# sont 100% traduits, mais elle détecte également des erreurs possibles. _2* Pour activer une nouvelle langue dans l'autobuild, il suffit d'ajouter les premiers fichiers traduits à #{manual/po/${LANGUAGE}/}# et lancer #{make commit}#. Modifier ensuite #{manual/_sisu/home/index.html}# en ajoutant le nom de la langue et son nom en anglais entre parenthèses. _* Continuer avec une traduction déjà commencée _2* Si votre langue cible a déjà été ajoutée, vous pouvez continuer avec la traduction des fichiers .po dans #{manual/po/${LANGUAGE}/}# de façon aléatoire avec votre éditeur préféré (comme /{poedit}/). _2* N'oubliez pas que vous devez faire un #{make commit}# pour assurer que la traduction des manuels est mise à jour à partir des fichiers .po, alors vous pouvez réviser vos modifications avec #{make build}# avant #{git add .}#, #{git commit -m "Translating..."}# et #{git push}#. Gardez à l'esprit que #{make build}# peut prendre un temps considérable, vous pouvez relire les langues individuellement comme expliqué dans {Appliquer des modifications}#applying-changes Après l'exécution de #{make commit}#, vous verrez beaucoup de texte sur l'écran. Il s'agit essentiellement de messages informatifs sur l'état du processus et de quelques indications sur ce qui peut être fait pour améliorer live-manual. Si vous ne voyez aucune erreur fatale, vous pouvez généralement continuer et soumettre votre contribution. live-manual contient deux utilitaires qui peuvent grandement aider les traducteurs à trouver les textes non traduits et modifiés. Le premier est "make translate". Il lance un script qui vous indique en détail le nombre de messages non traduits qu'il y a dans chaque fichier .po. Le second, "make fixfuzzy", n'agit que sur les messages modifiés, mais il vous aide à les trouver et à les résoudre un par un. Gardez à l'esprit que même si ces utilitaires peuvent être vraiment utiles pour faire un travail de traduction sur la ligne de commande, l'utilisation d'un outil spécialisé comme /{poedit}/ est la méthode recommandée pour effectuer la tâche. C'est aussi une bonne idée de lire la documentation sur localisation de debian (l10n) et, plus particulièrement pour live-manual, les {Lignes directrices pour les traducteurs}#guidelines-translators. *{Remarque:}* Vous pouvez utiliser #{make clean}# pour nettoyer votre arbre git avant de faire un push. Cette étape n'est pas obligatoire grâce au fichier .gitignore mais c'est une bonne pratique pour éviter d'envoyer certains fichiers involontairement.