Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
howtofix [Le 21/01/2009, 02:42] – 213.95.41.13 | howtofix [Le 27/05/2016, 14:21] (Version actuelle) – L'Africain | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | <note tip>Ceci est une ébauche d'une traduction de la page https:// | ||
+ | Attention la traduction est aussi sous une licence définie par ces termes : | ||
+ | |||
+ | The website HTML, text, images audio, video, software or other content that is made available on this website are the property of someone - the author in the case of content produced elsewhere and reproduced here with permission, or Canonical or its content suppliers. Before you use this content in some way please take care to ensure that you have the relevant rights and permissions from the copyright holder. | ||
+ | |||
+ | You are welcome to display on your computer, download and print pages from this website provided the content is only used for personal, educational and non-commercial use. You must retain copyright and other notices on any copies or printouts you make. Certain of the materials available on this site are "open source" | ||
+ | |||
+ | ====== Bugs / Comment corriger un paquet ====== | ||
+ | |||
+ | Chaque paquet installé sur le système Ubuntu a été construit à partir de sources. Chaque source a une page dédiée pour rapporter des bugs touchant le paquets fils ( paquet issu de la compilation des sources ). | ||
+ | |||
+ | Prenons pour exemple, la page des bugs du paquet " | ||
+ | |||
+ | Vous ne savez pas comment corriger un problème ( bug ) reporter mais ça aide ! | ||
+ | Il y a certaines choses que n' | ||
+ | ===== Replicating bugs ( Rapport de bugs dupliqué ) ===== | ||
+ | |||
+ | Avant de corriger un bug, assurez-vous que le bug peut être reproduit sur votre machine. Sinon, essayer de corriger un bug que vous ne constatez pas n'est pas prioritaire pour une résolution. Si vous avez besoin d' | ||
+ | |||
+ | ===== Installer les outils nécessaires ===== | ||
+ | |||
+ | De nombreux scripts ont été développés pour aider tout en travaillant avec les outils debian et des patchs. Installer ces paquets : | ||
+ | |||
+ | sudo apt-get install devscripts ubuntu-dev-tools | ||
+ | |||
+ | Générer un patch : | ||
+ | |||
+ | Ici le simple exemple pour voir comment créer un patch : | ||
+ | |||
+ | - Imaginons que vous avez un rapport de bug disant que la description du paquet xicc contient une erreur orthographique touchant le mot "color " et que nous voulons corriger. (Très mauvais exemples je vous l' | ||
+ | |||
+ | $ apt-cache show xicc | ||
+ | Package: xicc | ||
+ | Priority: optional | ||
+ | Section: universe/ | ||
+ | Installed-Size: | ||
+ | Maintainer: Ross Burton < | ||
+ | Architecture: | ||
+ | Version: 0.2-2 | ||
+ | Depends: libc6 (>= 2.3.4-1), libglib2.0-0 (>= 2.8.0), libice6, libsm6, libx11-6 | ||
+ | Filename: pool/ | ||
+ | Size: 8224 | ||
+ | MD5sum: a266d60cd721ef91fcb1d3d47ecd6a40 | ||
+ | SHA1: b8da21b8dfba7ed9c7ac6fa5c9c3e70b438d7124 | ||
+ | SHA256: 635c287a1c43df31670a20194e774561479d70d981bf24c143c3711799bd839a | ||
+ | Description: | ||
+ | This utility lets you set an ICC colour profile for an X display, so that | ||
+ | | ||
+ | to specifically look for this atom but several applications such as Gimp and | ||
+ | Eye Of Gnome already do. | ||
+ | Bugs: mailto: | ||
+ | Origin: Ubuntu | ||
+ | |||
+ | - L' | ||
+ | |||
+ | < | ||
+ | |||
+ | - Éditez le fichier debian/ | ||
+ | |||
+ | cd xicc-0.2 | ||
+ | sed -i ' | ||
+ | |||
+ | Bien entendu le patch n'est pas toujours si facile et pourrait nécessiter un patch bien plus important touchant beaucoup de parties dans le paquet originel. Reportez-vous à la partie Patch guidelines. | ||
+ | - Adhérer à DebianMaintainerField: | ||
+ | |||
+ | Maintainer: Ross Burton < | ||
+ | |||
+ | par | ||
+ | |||
+ | Maintainer: Ubuntu MOTU Developers < | ||
+ | XSBC-Original-Maintainer: | ||
+ | |||
+ | Pour cette action, vous pouvez utiliser l' | ||
+ | - Mettre à jour le fichier debian/ | ||
+ | |||
+ | dch -i | ||
+ | |||
+ | et décrire les changements que vous avez effectués. | ||
+ | - Générer le nouveau paquet : | ||
+ | |||
+ | debuild -S | ||
+ | |||
+ | Ou si vous créez un paquet non signé : | ||
+ | |||
+ | debuild -S -us -uc | ||
+ | |||
+ | - Regardez avez debdiff : | ||
+ | |||
+ | cd .. | ||
+ | debdiff xicc_0.2-2.dsc xicc_0.2-2ubuntu1.dsc | less | ||
+ | |||
+ | - Pour créer un fichier patch, vous devez envoyer le résultat de debdiff dans un autre fichier : | ||
+ | |||
+ | debdiff xicc_0.2-2.dsc xicc_0.2-2ubuntu1.dsc > xicc_0.2.2ubuntu1.debdiff | ||
+ | |||
+ | - C'est fait. Vous pouvez maintenant joindre le patch debdiff à un rapport de bug ou l' | ||
+ | |||
+ | * Vérifier SponsorshipProcess pour voir comment inclure ce patch à Ubuntu. | ||
+ | * (PackagingGuide contient plus d' | ||
+ | * UbuntuDevelopment/ | ||
+ | |||
+ | ===== Tester les corrections ===== | ||
+ | |||
+ | Une fois que votre patch est généré entrer à nouveau dans le dossier des sources et construire le paquet. | ||
+ | < | ||
+ | cd hello-2.2 | ||
+ | sudo apt-get build-dep hello | ||
+ | debuild -us -uc | ||
+ | </ | ||
+ | Si la construction du paquet échoue, revenez sur vos changements et vérifiez qu'il n'y a pas d' | ||
+ | |||
+ | rm -rf hello-2.2 | ||
+ | dpkg-source -x hello_2.2-1.dsc | ||
+ | patch -p0 < hello.patch | ||
+ | |||
+ | Si la construction du paquet réussit, installer le paquet et soyez sûr que vous ne pouvez plus reproduire le bug en question. Le paquet local peu être installé avec la commande suivante : | ||
+ | |||
+ | sudo dpkg -i hello_2.2-1_*.deb | ||
+ | |||
+ | Si votre patch ne corrige pas le problème, ou que vous ne pouvez pas corriger le paquet, mettez à jour le rapport, | ||
+ | |||
+ | ===== Charger le patch ===== | ||
+ | |||
+ | Si votre patch corrige le bug, ajouter s'il vous plait un commentaire au bug, et joignez le patch. Soyez sûr que avez coché la case patch pour télécharger le patch. | ||
+ | |||
+ | Assignez le bug à " | ||
+ | |||
+ | N.B. Si vous connaissez le packaging debian, et voulez préparer une version candidate en incluant le correctif pour corriger le bug, voir MOTU/ | ||
+ | |||
+ | ===== Corriger le bug dans une version stable ===== | ||
+ | |||
+ | La majorité des changements et des corrections de bugs se font sur la version de développement de Ubuntu. Une fois nous produisons la version stable de Ubuntu, des millions d' | ||
+ | |||
+ | * Une régression dans une version stable est une catastrophe. Il est préférable de garder une version stable avec des bugs connus dont les utilisateurs apprennent à contourner tout en travaillant, | ||
+ | * Même certaines des corrections de bugs pouvant causer des confusions, s'ils perturbent la manière dont les utilisateurs ont déjà travaillé avec le logiciel. Cela affecte en particulier l' | ||
+ | |||
+ | Néanmoins nous voulons offrir des corrections de bugs critiques/ | ||
+ | |||
+ | D'un autre côté beaucoup d' |