20:01 mode/#ubuntu-fr-classroom [+m] by bashelier 20:01 bonsoir à tous 20:01 le cours de ce soir porte donc sur le packaging 20:01 je vous propose dans un premier temps de parler des .deb eux même, nous verrons ensuite comment les construire 20:01 Techniquement parlant, un package debian (un .deb donc) est une archive (au même titre qu'un .gz, un .bz2...), 20:01 interesson nous donc plutôt à son contenu "global": 20:02 Un package est avant tout constitué d'un ensemble de fichiers qui vont s'installer sur votre système, ensemble de 20:02 fichiers qui est souvent le résultat d'un "make install", sauf que dans le cas présent les fichiers sont 20:02 installée "dans le .deb", et vont eux-mêmes être installés sur le système lors de l'installation du .deb. 20:02 exemple, gnome a besoin de la libgnome pour fonctionner), version du package, description etc... 20:02 Ensuite, un package est également constitué de certaines informations utiles au système, tel que dépendances (par 20:02 mode/#ubuntu-fr-classroom [-m] by bashelier 20:02 des questions ? :) 20:02 sa va 20:02 limpide 20:02 tu peux finir ta phrase ? 20:02 idem 20:03 pas de problem 20:03 très clair :) 20:03 "(par..." 20:03 20:04 <@bashelier> Ensuite, un package est également constitué de certaines informations utiles au système, tel que dépendances (par 20:03 max-k, c'est pour le suspens 20:03 20:04 <@bashelier> exemple, gnome a besoin de la libgnome pour fonctionner), version du package, description etc... 20:03 ah 20:03 une seconde 20:03 coincoin: oki 20:03 il a juste inversé les lignes :P 20:03 dans l'ordre ça va mieux (pour ceux qui ont eu des soucis) 20:03 (par 20:03 exemple, gnome a besoin de la libgnome pour fonctionner), version du package, description etc... 20:03 bashelier: merci 20:03 ok 20:03 prenons un exemple simple 20:03 ok 20:03 k 20:03 il a bien préparer son texte comme les presidents 20:04 mode/#ubuntu-fr-classroom [+m] by bashelier 20:04 commencez par vous créer un petit répertoire de travail: mkdir ~/classroom && cd ~/classroom 20:04 puis 20:04 aptitude download hello 20:04 vous devriez vous retrouver avec un fichier du genre hello_2.1.1-4_i386.deb 20:04 mode/#ubuntu-fr-classroom [-m] by bashelier 20:04 bon pour tout le monde ? :) 20:04 ptkzxq6_ [n=melanarg@gob75-2-82-67-192-55.fbx.proxad.net] has quit [Read error: 104 (Connection reset by peer)] 20:05 ptkzxq6_ [n=melanarg@gob75-2-82-67-192-55.fbx.proxad.net] has joined #ubuntu-fr-classroom 20:05 impec 20:05 att 20:05 oui :) 20:05 ok 20:05 hello_2.2-1build1_i386.deb ca marche quand même? 20:05 oui 20:05 ouais \o/ 20:05 vivi 20:05 coincoin: oui ;) 20:05 att 20:05 coincoin> c'est ça 20:05 bashelier, ok 20:05 c'est bon hl15 et feNNec_ ? :) 20:06 ca vient... 20:06 pas de problème :) 20:06 c'est cool, pour le moment je comprends :° 20:06 ^^ 20:06 euh on peut faire comment pour parler et taper dans la console parce que j'ai un peu de mal 20:06 xD 20:06 mode/#ubuntu-fr-classroom [+v illovae] by bashelier 20:06 ok 20:06 tu met ta console au premier plan 20:07 tu achète un écran 30 pouces ^^ 20:07 mdr 20:07 dual screen 20:07 dans la barre des fenêtres : clique droit sur la fenêtre -> premier plan 20:07 c'est bon j'ait un truc genre hello 2.2-1build1 20:07 hl15: nickel :) 20:07 mode/#ubuntu-fr-classroom [+m] by bashelier 20:07 on va maintenant regarder ce que contient le package, pour ce faire, utilisons la commande dpkg -c :) 20:08 dpkg -c hello*deb 20:08 arno_ [n=arno@ip-118.net-89-2-206.rev.numericable.fr] has joined #ubuntu-fr-classroom 20:08 on obtiens la liste des fichiers contenu dans le .deb, ainsi que les permitions etc... 20:08 un peu comme la commande ls -l 20:08 regardons de plus pret les deux dernières lignes 20:08 drwxr-xr-x root/root 0 2004-08-13 13:10 ./usr/bin/ 20:08 -rwxr-xr-x root/root 6876 2004-08-13 13:10 ./usr/bin/hello 20:09 on peut y voir un binaire (hello) executable (x) placé dans /usr/bin 20:09 en effet, installez hello (sudo aptitude install hello) 20:09 et tapez hello dans votre terminal 20:09 chez moi ça donne 20:09 $ hello 20:09 Bonjour, le monde! 20:09 mode/#ubuntu-fr-classroom [-m] by bashelier 20:09 cool ^^ 20:09 tout le monde voie l'idée ? :) 20:10 it works 20:10 cool :) 20:10 en fait c'est un zip qui ne contient que les fichiers propre au pacjage mais à partir de la racine? 20:10 yep! 20:10 mon apt il a 2 de tens' :P 20:10 which hello pour voir quel fichier est executé quand on tape hello 20:10 coincoin: pas un zip, mais en gros oui 20:10 mon terme geek est à la mode : pacjage 20:10 assez logique 20:10 bashelier, ok ca rentre 20:10 excellent ce programme "hello". 20:11 max-k, faute de frape ^^ 20:11 LeGreffi3R tu peux en coder un si tu veux 20:11 oui très utile ce programme quoi 20:11 wich ca marche pas chez moi 20:11 nik11> je sais 20:11 aptitude install hello "copie" depuis les dépôts l'équivalent de ./usr/bin/hello ? 20:11 whereis sinon 20:11 hello -n c'est bien 20:11 normal c which 20:11 Non Nicoz 20:11 pardon 20:11 max-k: which 20:12 ok 20:12 opaflamme: merci 20:12 ok :p 20:12 houla, j'ai des problèmes de connection :S 20:12 une seconde 20:12 XD 20:12 Nicoz: oui :) 20:13 on a un prof à mi-temps en gros 20:13 moi j'ai mon pc qui chauffe comme un micro-onde... 71 c 20:13 ^ 20:13 xD 20:13 coincoin, tape les 3-4 premiere lettre du pseudo puis tape tab sa met le pseudo en entier 20:13 ^^* 20:13 mode/#ubuntu-fr-classroom [+m] by bashelier 20:13 regardons maintenant 20:13 -rw-r--r-- root/root 708 2004-08-13 13:10 ./usr/share/man/man1/hello.1.gz 20:13 il s'agit d'une manpage 20:13 taper "man hello" dans votre terminal et admirez :) 20:13 -rw-r--r-- root/root 8899 2004-08-13 13:10 ./usr/share/info/hello.info.gz 20:13 c'est un peu comme man, tapez info hello 20:14 les fichiers /usr/share/locale/* sont les fichiers de traduction du programme 20:14 ils ne nous interessent pas ici 20:14 enfin, regardons 20:14 drwxr-xr-x root/root 0 2004-08-13 13:10 ./usr/share/doc/ 20:14 drwxr-xr-x root/root 0 2004-08-13 13:10 ./usr/share/doc/hello/ 20:14 -rw-r--r-- root/root 2066 2002-06-08 20:12 ./usr/share/doc/hello/NEWS 20:14 -rw-r--r-- root/root 2429 2004-08-13 13:10 ./usr/share/doc/hello/copyright 20:14 -rw-r--r-- root/root 5058 2002-06-09 07:41 ./usr/share/doc/hello/changelog.gz 20:14 -rw-r--r-- root/root 2827 2004-08-13 13:10 ./usr/share/doc/hello/changelog.Debian.gz 20:15 le fichier changelog.gz est le changelog des sources du programme 20:15 là ou les devs décrivent les changements des nouvelles versions 20:15 le fichier changelog.Debian.gz est grosso-modo la même chose, écrite cependant par le packageur debian 20:16 le ficher copyright est lui aussi écrit par le packageur 20:16 il contient les copyrights et les licenses des sources du programme 20:16 mode/#ubuntu-fr-classroom [-m] by bashelier 20:16 bashelier: des patch qui ne sont pas mainstream 20:16 tout ces fichiers sont strictement indispensables? 20:16 coincoin: oui 20:16 bashelier, ok 20:17 coincoin: pour tout les packages, il y aura un /usr/share/doc/package 20:17 pour le changelog.Debian.gz , si c hors mainstream ou pas ? 20:17 coincoin, tu n'es pas au bout de tes peines :) 20:17 es fichiers /usr/share/locale/* sont les fichiers de traduction du programme : moi j'en ai pas! 20:17 termitor: oui, c'est écrit par le packager debian 20:17 si on fait un paquet ubuntu et qu'il n'existe pas de paquet debian y'a-t-il aussi un changelog.devien.gz ? 20:17 mais "ils ne nous interessent pas ici" 20:17 max-k: les packages ubuntu et debian sont techniquement les mêmes 20:17 ou presque 20:17 dans le fichier changelog.Debian.gz, ça parle de feisty dès la première ligne.. étrange vu que ça vient d'un packager debian oO 20:17 bashelier> y a-t-il une commande permettant la lecture du changelog et du readme au niveau du paquet (a la manière d'apt cache show)? 20:18 sa risque d'etre compliquer a se souvenirs de tous ce qui est obligatoire 20:18 CiRiX: non c un format de paquet standard 20:18 LeGreffi3R: zcat | vim - ? :p 20:18 hl15, c'est clrai ! 20:18 termitor, ok mc 20:18 bashelier> ah oui ok... 20:18 bashelier, zless :p 20:18 LeGreffi3R, ^ 20:18 CiRiX: quand le packageur ubuntu a repris le paquet depuis debian, il a changé le 'unstable' en 'feisty' ici 20:18 bashelier: "ou presque" quelles sont les (petites) différences avec un paquet Debian ? 20:18 CiRiX: le paquet a été "mergé dans ubuntu sûrement, ce qui signifie que le package debian a été pris, un peu modifié, et uploadé dans ubuntu 20:19 arno_: nous verrons ça plus tard dans le cours ;) 20:19 ./usr/share/info/hello.info.gz est aussi obligatoire ? 20:19 merci [: 20:19 Nicoz: non 20:19 Nicoz: non 20:19 Nicoz: non 20:19 :> 20:19 Nicoz: mais me man l'est presque par contre 20:19 [: 20:19 ok :P 20:19 mr_pouit, tsss o: 20:19 ok pour tout le monde ? on regarde dpkf -f et on passe à la pratique :p 20:20 ok pour moi 20:20 ok 20:20 ok 20:20 mode/#ubuntu-fr-classroom [+m] by bashelier 20:20 je vous ais parlé tout à l'heure "d'informations" sur le paquet 20:20 comme dépendances etc... 20:20 dpkg -f hello*deb 20:20 voici un petit résumé: 20:20 Package: nom du paquet binaire 20:20 Version: numéro de version du paquet 20:20 Section: 'catégorie' du paquet 20:20 Priority: priorité 20:20 Architecture: architecture pour laquelle est buildé ce .deb 20:20 Depends: dépendances du paquet, ici hello a besoin du paquet 'libc6' pour fonctionner, il dépend donc de libc6 20:20 Installed-Size: taille une fois installé sur le système 20:20 Maintainer: responsable et probablemen packageur du paquet 20:20 Description: description du paquet. 20:21 PhilippeP [n=Philippe@user-85-201-40-55.tvcablenet.be] has joined #ubuntu-fr-classroom 20:21 mode/#ubuntu-fr-classroom [-m] by bashelier 20:21 des questions à propos des informations du paquet ? 20:21 est-il possible d'avoir un paquet pour plusieurs architecture ? 20:21 la taille est en quoi ? 20:21 CiRiX: oui 20:22 CiRiX: oui et dans ce cas c'est noté 'all' 20:22 j'ai toujours pas compris exactement la difference entre le changelog et le changelog.debian 20:22 bashelier, est t'il possible d'avoir un meme paquet pour plusieurs distributions, architecture etc 20:22 Nicoz en Kbyte 20:22 CiRiX: il peut être pour une architecture particulière, ou alors pour toutes (all) 20:22 merci mr_pouit :) 20:22 ok 20:22 ouais, un peu grillé, mais pas grave :P 20:22 un même .deb, si il n'est pas "all" en architecture, ne marche que sur l'architecture spécifiée 20:22 et si deux seulement ? j'ai un exemple de programme pour i386 et amd64 chez moi.. impossible de déclarer "i386, amd64" ? 20:22 mr_pouit: tu tapes plus vite que moi :) 20:22 Nicoz enfin ça dépend 20:22 et une description en français c'est possible ? 20:22 max-k : le changelog, c'est le développeur qui le maintient, alors que le changelog.debian c'est le mainteneur du package 20:23 CiRiX: oui, nous verrons ça plus tard 20:23 car c'est pas forcément la même personne 20:23 bashelier, ok mc 20:23 bashelier 20:23 olivierb: merci 20:23 Depends: libc6 (>= 2.5-0ubuntu1) pourquoi n'y a t il pas que la libc6 d'inscrite 20:23 la session jj'ai pas tres bien compris 20:23 categorie du paquet 20:23 vomoho: parce que le packahe hello ne dépend que de libc6 20:23 il y a quoi comme categorie ? 20:23 @bashelier, le packageur, c'est lui qui donne les principales informations sur le paquet ? 20:23 hl15: ça peut être gnome, net, etc... 20:23 t'as pas dit que si on met "any" en architecture, le paquet source peut être compilé sur n'importe quelle architecture 20:24 ouais nik11 20:24 vomoho: le (>= 2.5-0ubuntu1) ça veut dire qu'il veut libc6 avec une version supérieure ou égale à 2.5.0etc 20:24 davromaniak: y'a pas de any pour les .debs, c'est le paquet source seulement 20:24 oki merci 20:24 Nicoz: oui, la description est écrite par le packageur 20:24 généralement, on package en accord avec le développeur 20:24 ok bashelier 20:24 gpocentek, ben oui, je parle bien pour le paquet source, ;) 20:24 davromaniak: ok. 20:24 davromaniak: on en est au paquet binaire là 20:24 hl15: pour les sections : http://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections 20:25 Peut on compiler sur une machine 32 bits un paquet pour une architecture 64 bits ? 20:25 ah, désolé de ne pas suivre le cours 20:25 non thedamocles 20:25 merci 20:25 bashelier, ce qui est entre parentheses (=2.5...) c'est écris a la main? 20:25 merci mr_pouit 20:25 coincoin: généralement non 20:25 coincoin: non, par un programme magique que nous verrons plus tard 20:25 coincoin: c dans la suite , tu va comprendre 20:25 mr_pouit, ok 20:25 sur ta machine tu ne peux compiler que des paquets de l'archi de ta machine 20:25 davromaniak> non. 20:25 davromaniak: sauf si tu fais de la cross-compilation 20:25 bref 20:26 davromaniak: et tu peux très bien compiler du 32bits sur 64bits 20:26 bref 20:26 bashelier, fait donc un cours sur la cross-compilation, :) 20:26 on s'écarte là :) 20:26 !) 20:26 20:26 :)* 20:26 mode/#ubuntu-fr-classroom [+m] by bashelier 20:26 passons à la pratique maintenant :) 20:26 rm hello*deb 20:26 wget -c http://people.dunnewind.net/arthur/classroom-0.1.tar.gz 20:26 nik11 [n=niko@cht33-1-82-228-78-181.fbx.proxad.net] has quit [Client Quit] 20:26 on se retrouve avec l'archive classroom-0.1.tar.gz 20:27 on extrait le tout :) 20:27 tar xvf classroom-0.1.tar.gz 20:27 cd classroom-0.1/ 20:27 ls 20:27 on se retrouve dans un répertoire de source "standard" 20:27 mode/#ubuntu-fr-classroom [-m] by bashelier 20:27 vous avez sûrement déjà vu ça tous :) 20:27 oui 20:27 oui 20:28 a peu près oui 20:28 un ./configure toussa... 20:28 la joie de la compil avec les outils gnu , hahaha 20:28 ^^ 20:28 c'est pas un virus au moins ce truc la ^^ 20:28 huhu quelle franche tranche de poilade toussa 20:28 ah les gros malin XD 20:28 olivierb: je te jure que non ;) 20:28 ok ;-) 20:28 PPmarcel [n=PPmarcel@d77-216-205-104.cust.tele2.fr] has joined #ubuntu-fr-classroom 20:28 on va se compiler tout ça 20:28 mode/#ubuntu-fr-classroom [+m] by bashelier 20:28 ./configure 20:29 Il se peut qu'une erreur ce produise, ce qui signifie (du moins je l'espère) qu'il manque pkg-config et libgtk: 20:29 sudo aptitude install pkg-config libgtk2.0-dev 20:29 ./configure 20:29 mode/#ubuntu-fr-classroom [-m] by bashelier 20:29 bon pour tout le monde le configure ? 20:29 oui :) 20:29 c'est fait :) 20:29 pas de problème 20:29 non 20:29 huhu ca vien ca vien 20:29 ^^ 20:29 heu ça me demande d'installer au moin 30 paquets :x 20:29 * termitor suis 20:29 sa va j'espere que j'ai pas eu de pb 20:30 c'est bon pour moi 20:30 ShinMaa> si tu n'en as jamais fait c'est normal 20:30 ShinMaa: normal... :) 20:30 sa ma mis creating Makefile etc 20:30 Nan, l'ajout de libgtk2.0-dev me donne une foule de paquets à installer : 14,8Mo !!! 20:30 ShinMaa> installes les paquets proposés ça devrait aller :) 20:30 par contre 20:30 Ok :) 20:30 feNNec_: hihihi , salut 20:30 feNNec_ ---> ShinMaa ;) 20:30 remin [n=moron@i01v-62-34-233-48.d4.club-internet.fr] has joined #ubuntu-fr-classroom 20:30 comment on peut faire copier coller de tes ligne de commandez parce que sa par vite et j'ai pas le temsp de tout taper a la mais bashelier 20:30 Fait le feNNec_ , c'est pas tres long 20:31 a la main 20:31 gapz : Bip. 20:31 shift insert 20:31 LeGreffi3R: apt un -dev suffit a prendre les compilateur ? 20:31 + ctrl inser 20:31 bah tu sélectionne juste 20:31 hl15: tu selectionnes, puis clique sur les deux boutons pour coller 20:31 et après tu colle avec le clic du milieu de ta souris 20:31 11m20s qui dit la console !!! 20:31 termitor> idéalement oui. 20:31 (ou ctrl shift v pour coller) 20:31 7m36s 20:31 feNNec_> petite connexion? 20:31 patience feNNec_ :) 20:31 feNNec_: waow t'es en 56k ? 20:32 vantar! 20:32 LeGreffi3R, tant que c'est la connexion qu'est petite 20:32 coincoin> ah ben ça je dis pas... 20:32 8m10s 20:32 :) 20:32 8) 20:32 feNNec_: on est tous avec toi 20:32 merci bashelier et coincoin 20:32 B=====D 20:32 ah bravo ^^ 20:32 :] 20:32 * LeGreffi3R ne devrait pas montrer sa bite en cours. :P 20:32 magnifique {: 20:32 poussez les gars - ça aide 20:33 10m14s 20:33 xD 20:33 heureusement le monde de linux est souvent masculin 20:33 nan il n a pas payé pour ce moi, free l a ramener en 56 k 20:33 LeGreffi3R: hum faut prendre build-essential aussi c pas toujours dans les dependance 20:33 ohhhhh hiiiissse 20:33 sur irc on a pas l'image et heureusement 20:33 mode/#ubuntu-fr-classroom [+m] by bashelier 20:33 bon, c'est fini la récré ? ^^' 20:33 une petite question... :) 20:33 ah :) 20:34 qui a oublié de faire 20:34 sudo aptitude install debhelper cdbs linda build-essential fakeroot devscripts pbuilder dh-make debootstrap 20:34 :] 20:34 mode/#ubuntu-fr-classroom [-m] by bashelier 20:34 moi? 20:34 ah non pas moi 20:34 ^^ 20:34 moi aussi ! 20:34 je l'ai fait quand j'ai lu le cours sur planet 20:34 nickel :) 20:34 pareil 20:34 moi qunad j'ai vu l'annonce de cours 20:34 pareil 20:34 tout pareil 20:34 feNNec_: bon ? 20:34 bande de copieur 20:35 8m10s ! 20:35 han 20:35 ah j'ai pas tout là... 20:35 ah oui quand même 20:35 mode/#ubuntu-fr-classroom [+m] by bashelier 20:35 dkm [n=dkm@AAmiens-152-1-84-185.w90-34.abo.wanadoo.fr] has left #ubuntu-fr-classroom [] 20:35 pendant que ça télécharge chez feNNec_, regardons ce que le configure a généré 20:36 feNNec_: ce sont juste des explications, ne t'en fais pas tu n'est pas en retard ;) 20:36 le ./configure a généré un fichier "Makefile" 20:36 ce fichier est... un Makefile, et est executé par la commande "make" 20:36 il va servir à compiler le programme 20:37 ./configure sert donc à vérifier que tout ce qui est nécessaire à la compilation est présent et à générer le Makefile 20:37 make compile le programme 20:37 et sudo make install l'installe 20:37 Ju` [n=Ju@AAubervilliers-153-1-88-117.w86-212.abo.wanadoo.fr] has joined #ubuntu-fr-classroom 20:37 nous retrouverons toutes ces commandes lors de l'écriture du système de création du paquet 20:38 mode/#ubuntu-fr-classroom [-m] by bashelier 20:38 ta oublier de dire si on veut desinstaller c'est sudo make unistall 20:38 ou un truc commesa 20:38 hl15, sauf que ça marche pas toujours ça 20:38 hl15: pour le package on ne s'en sert pas ;) 20:38 bashelier: y'aura une 2ème session ??? (7m28s) 20:38 c grave quand il n'y a pas de ./configure ? 20:38 ok 20:38 hl15: si un fait un paquet, esperons ne pas se servir de cela 20:38 et que le Makefile est déjà fait 20:38 max-k: ça varie baucoup, on va partir du principe qu'il y en a un 20:39 bashelier: ok 20:39 max-k: si le Makefile est déjà là pas de problème ;) 20:39 bashelier: merci 20:39 mais bon 20:39 feNNec_> le cours sera dispo a l'adresse donnée dans le topic de toute facon ;) 20:39 feNNec_: t'en fais pas, tu loupes pas le plus important ;) 20:39 si les dependance ne sont pas satisfaite 20:39 feNNec_: ça ne t'embête pas qu'on continue et que tu lises ensuite ? 20:40 non allez-y... je suis là 20:40 :) 20:40 3m34s 20:40 quel progrès 20:40 mode/#ubuntu-fr-classroom [+m] by bashelier 20:40 compilons le programme 20:40 make 20:41 normalement ça marche ^^' 20:41 une fois compilé, on test: 20:41 src/classroom 20:41 normalement, une jolie fenêtre gtk devrait apparaître 20:41 mode/#ubuntu-fr-classroom [-m] by bashelier 20:41 -_-'' 20:41 ok pour tout le monde ? 20:41 make[1]: Rien à faire pour « all-am ». sa veut dire quoi sa ? 20:41 c'est bon 20:42 qui est l'auteur de ce prog ? xD 20:42 hl15: ça veut dire qu'on a finit, que c'est bon 20:42 c'est bon 20:42 toubon 20:42 juste pour avoir un ordre d'idée ca dure combien de temps une classroom d'habitude? 20:42 Nicoz: moi :) 20:42 sinon c'est ok pour moi 20:42 coincoin: ça varie d'un cours à l'autre... :) 20:42 bashelier, ca roule 20:42 1h30 2h a peu pres 20:42 hl15, ok merci 20:42 hop, on enchaine :) 20:42 mode/#ubuntu-fr-classroom [+m] by bashelier 20:43 packager une application singifie en gros créer un répertoire debian/ à la racine des sources, répertoire qui contient un ensemble de fichiers nécessaires à la création du package 20:43 commençons par nettoyer les sources 20:43 make clean 20:43 puis le Makefile lui-même 20:44 make distclean 20:44 PS: make distclean execute aussi make clean 20:44 maintenant, si ce n'est toujours pas fait... :) 20:44 sudo aptitude install debhelper cdbs linda build-essential fakeroot devscripts pbuilder dh-make debootstrap 20:45 mode/#ubuntu-fr-classroom [-m] by bashelier 20:45 cybergoll [n=pierre@35.92.99-84.rev.gaoland.net] has joined #ubuntu-fr-classroom 20:45 c'est bon pour moi 20:45 si tout le monde est pret on enchaine :) 20:45 pareil 20:45 pareil 20:45 re 20:45 idem 20:45 re cybergoll 20:45 feNNec_: t'es pas perdu ? 20:45 bon ben go :p 20:45 pareil :° 20:45 mode/#ubuntu-fr-classroom [+v feNNec_] by bashelier 20:45 mode/#ubuntu-fr-classroom [+m] by bashelier 20:45 non je suis. merci 20:46 feNNec_: tu pourras parler même en +m maintenant, fais moi signe quand c'est téléchargé chez toi 20:46 donc, créons ce répertoire debian/ 20:46 j'enchaine avec sudo aptitude install debhelper cdbs linda build-essential fakeroot devscripts pbuilder dh-make debootstrap 20:46 rassurez vous, on ne vas pas le faire à la main, il existe un outil bien pratique pour ça :) 20:46 PPmarcel [n=PPmarcel@d77-216-205-104.cust.tele2.fr] has quit [Connection timed out] 20:46 dh_make 20:46 dans votre terminale, entrez 20:47 dh_make -e votreadressemail@truc.org -f ../classroom-0.1.tar.gz 20:47 Ju [n=Ju@ubuntu/member/ju] has quit [Read error: 110 (Connection timed out)] 20:47 je détaille la ligne de commande 20:47 le -e spécifie tout simplement votre adresse email 20:47 c'est *essenciel* pour le paquet 20:48 en tant que responsable du package, on doit pouvoir vous contacter facilement 20:48 ensuite, le -f 20:48 l'archive des sources d'un package debian doit avoir un format bien particulier 20:48 nomdupaquetsource_version.orig.tar.gz 20:49 le fait de spécifier -f va créer ce fichier pour nous 20:49 on aurrait aussi pu faire cp classroom-0.1.tar.gz classroom_0.1.orig.tar.gz et se passez de -f remarquez 20:49 première question: 20:50 Type of package: single binary, multiple binary, library, kernel module or cdbs? 20:50 je détaillerais à la fin du cours 20:50 ici on fais tout simplement s comme single 20:50 enfin 20:50 Hit to confirm: 20:50 on fais entrée :p 20:50 vous devriez normalement obtenir 20:50 Done. Please edit the files in the debian/ subdirectory now. classroom 20:50 uses a configure script, so you probably don't have to edit the Makefiles. 20:51 mode/#ubuntu-fr-classroom [-m] by bashelier 20:51 bon pour tout le monde ? 20:51 c'est fait :) 20:51 oui 20:51 yessss 20:51 super 20:51 cool :) 20:51 c'est complètement ça oui 20:51 ouais \o/ 20:51 nickel 20:51 non j'avais créé 20:51 super gpocentek :P 20:51 le repertoire debian 20:51 ah 20:51 coincoin: rm -r debian 20:51 bashelier: ça y est les downloads sont terminés 20:51 * gpocentek est ému de voir un répertoire debian/ 20:51 il m'a dit qu'il ne voulais pas effacer quoi que ce soir 20:51 coincoin: et tu refais le dh_make 20:51 mode/#ubuntu-fr-classroom [-v feNNec_] by bashelier 20:51 moi j'ai : Extra parameters on command line 20:51 feNNec_: bravo 20:51 feNNec_: nickel, lis au dessus ;) 20:51 c'est ok 20:51 bashelier: j'ai fait make et ça me répond make: *** Pas de cibles spécifiées et aucun makefile n'a été trouvé. Arrêt. 20:52 feNNec_: fais ./configure avant 20:52 ta pas fait ./configure 20:52 :) 20:52 gpocentek: quoted 20:52 ok 20:52 mode/#ubuntu-fr-classroom [+m] by bashelier 20:52 :) 20:52 bon, allons admirer le résultat :) 20:52 cd debian 20:52 ls 20:52 bon rassurez vous, on a pas besoin de tout ça 20:53 les fichiers .ex et .EX sont des exemples, on va les virer 20:53 rm *.ex *.EX 20:53 ls 20:53 changelog compat control copyright dirs docs README.Debian rules 20:53 dans un premier temps on ne va garder que le scrict minimum, on vire aussi le reste 20:53 rm dirs docs README.Debian 20:53 ls 20:53 nous reviendrons sur ces 3 fichiers plus tard 20:54 changelog compat control copyright rules 20:54 mode/#ubuntu-fr-classroom [-m] by bashelier 20:54 si c'est ok pour tout le monde, j'explique ce que sont ces fichiers 20:54 j'ai faim ! 20:54 sa roule 20:54 ok 20:54 ok 20:54 rm -f *.ex *.EX c est mieux non ? 20:54 ok 20:54 ok 20:54 Marty_Desktop: pareil 20:54 moi ca passe pas le dh_make 20:54 termitor : je t'envoi mes apéricube :p 20:54 max-k a un pb le pense 20:54 oki 20:54 max-k: tu as tapé quelle commande exactement ? 20:54 olivierb: mefie toi que je te bouffe pas le bras en passant 20:55 termitor: mange du packaging 20:55 mode/#ubuntu-fr-classroom [+v max-k] by bashelier 20:55 mode/#ubuntu-fr-classroom [+m] by bashelier 20:55 bashelier: ok il manquai le -e 20:55 20:48 <@bashelier> dh_make -e votreadressemail@truc.org -f ../classroom-0.1.tar.gz 20:55 max-k: ok :) 20:55 mode/#ubuntu-fr-classroom [-v max-k] by bashelier 20:55 regardons les fichiers un à un 20:55 le fichier changelog: 20:55 souvenez vous de /usr/share/doc/hello/changelog.Debian.gz 20:56 il s'agit précisément de ce fichier 20:56 il décrit tout les uploads, révision par révision, avec une entrée par révision 20:56 chaque entrée est constituée de 3 parties 20:56 classroom (0.1-1) unstable; urgency=low 20:56 * Initial release (Closes: #nnnn) 20:56 -- Arthur Loiret Fri, 13 Jul 2007 20:50:53 +0200 20:57 décrivons une à une ces 3 parties 20:57 20:57 en premier, on spécifie le nom du paquet source, la version, le dépôt pour lequel on upload, et enfin la priorité de building 20:57 je m'explique 20:57 en premier, considérons la version 20:58 on remarque que la version des sources et 0.1 20:58 là on lit 0.1-1 20:58 tout simplement parce que le package est un "sur-ensemble" sur les sources 20:58 le -1 est le numéro de révision 20:58 exemple: 20:58 la version 0.1-1 est dans les dépôts 20:58 le packageur ajoute un .desktop 20:59 il va créer une nouvelle révision et uploader la version 0.1-2 20:59 pas besoin d'attendre un version 0.2 du programme donc 20:59 ensuite, les lignes commençant par " *" 20:59 il s'agit de la liste des changements apportés par l'upload 20:59 édites cette ligne comme ceci: 21:00 * Initial release 21:00 je reviendrais sur le Closes plus tard 21:00 enfin, 21:00 -- Arthur Loiret Fri, 13 Jul 2007 20:50:53 +0200 21:00 tout simplement votre nom, votre mail, 2 espaces, et la date 21:00 ce format de date peut être obtenu en tapant 822-date dans un terminal 21:00 mode/#ubuntu-fr-classroom [-m] by bashelier 21:00 des questions ? :) 21:00 bashelier: -- root Fri, 13 Jul 2007 20:53:06 +0200 ca ne faut pas bien dans un paquet ? 21:01 une révision, on peut dire que ça correspond au numero de version du paquet ? 21:01 termitor: édites à la main le root, met ton nom à la place 21:01 pour une meme version d'un logiciel ? 21:01 j'ai pris du temps avant de comprendre a utiliser nano pour voir le cangelog 21:01 bashelier: j'y suis: j'ai tout rattrapé. En ligne comme on dit. ici moche-les-grands-clapiers, à vous les studios 21:01 ShinMaa: oui, révision du paquet le -1 21:01 feNNec_: :) 21:01 bashelier: tous paquet avec une version en -1 final est donc une source non modifier ? 21:01 ShinMaa: pour une même version d'un logiciel oui 21:02 termitor> faut pas compiler et faire les paquets en root... 21:02 termitor: non, la première révision d'un paquet tout simplement 21:02 LeGreffi3R: bouh ! 21:02 pour éditer le fichier on peut aussi utiliser la commande dch 21:02 ou vi 21:02 olivierb: exactement, mais on verra ça plus tard, ptètre :) 21:02 mode/#ubuntu-fr-classroom [+m] by bashelier 21:02 mimilus [n=papa@ADijon-257-1-131-79.w90-6.abo.wanadoo.fr] has joined #ubuntu-fr-classroom 21:03 fichier suivant: compat 21:03 5 21:03 il s'agit, comme son nom l'indique, de la "compatibilité", autrement dit la version de debhelper employée, version qui sera respécifiée dans le debian/control 21:03 le control donc 21:03 less control 21:03 Source: nom du paquet source 21:04 ici classroom donc 21:04 Section: unknown 21:04 il faut changer "unknown" en section valide, sauf que là on va pas le faire, vous allez vour pourquoi très vite :) 21:04 Priority: optional 21:04 Priorité sur le système 21:04 Maintainer: Arthur Loiret 21:04 vous :) 21:04 vous êtes le responsable du paquet 21:05 Build-Depends: debhelper (>= 5), autotools-dev 21:05 les Build-Depends correspondent à ce dont il y a besoin pour *builder* la package 21:05 ici, il manque pkg-config libgtk2.0-dev par exemple 21:05 souviens toi de ce que tu as du installer pour que ça ./configure feNNec_ :) 21:06 on édite donc le fichier 21:06 Build-Depends: debhelper (>= 5), autotools-dev, pkg-config, libgtk2.0-dev 21:06 on sépare les packages par une virgule 21:06 remarquez la version 5 de debhelper respécifiée aussi :) 21:06 Standards-Version: 3.7.2 21:06 il s'agit de la version de la debian policy à laquelle le package doit être conforme 21:07 nous verrons ça par la suite également 21:07 ensuite, chacune des entrées correspond à un package binaire 21:07 ici il n'y en a qu'un seul "hello" 21:07 Package: classroom 21:07 euh "classroom" pardon... 21:07 mais un même paquet source peut amener à la création de plusieurs packages binaires 21:08 exemple, libfoo produira libfoo0 et libfoo-dev 21:08 Architecture: any 21:08 il indique que le paquet peut être buildé sur toute les architectures :) 21:08 si le paquet ne dépend pas de l'architecture empleyée, on peut tout simplement spécifier "all" 21:09 ou encore "amd64 i386" si ça ne compile que là dessus 21:09 Depends: ${shlibs:Depends}, ${misc:Depends} 21:09 les Dépendances du paquet binaire, qui n'ont *rien* à voir avec Build-Depends, et ne sont pas générées à partie de là :) 21:09 nous reviendrons plus en détail sur cette ligne bientôt 21:09 Description: 21:09 on complètera ensuite... :) 21:10 mode/#ubuntu-fr-classroom [-m] by bashelier 21:10 des questions ? 21:10 non 21:10 non 21:10 non 21:10 Si 21:10 courrage, plus que 2 fichiers ;) 21:10 non 21:10 c'est encore un peu abstrait pour moi 21:10 oui : mais un même paquet source peut amener à la création de plusieurs packages binaires ?? 21:10 Build-Depends: comment savoir ? 21:10 bashelier> juste dire qu'un -dev n'est pas un paquet binaire a priori... 21:10 Comment savoir si le "Build-Depends" change suivant les paquet etc ? 21:10 si , mais pour plus tart, genre si on veut un patch specifique a certain archi dans le meme paquet source 21:10 pour l'instant c ok mais comment peut on savoir si un paquet nécessite la version >=5 d'un autre paquet ? 21:10 LeGreffi3R: si, un -dev contient aussi un .so et un .a qui sont compilés 21:10 comment on fait pour le savoir ? 21:11 ShinMaa: à toi de voir ce dont a besoin ton paquet pour compiler ;) 21:11 max-k: on lit la doc du paquet, on regarde si le ./configure passe etc... 21:11 bashelier> ce sont les lib* ces paquets, justement ;) 21:11 LeGreffi3R: oui :) 21:11 LeGreffi3R: ce sont des paquets binaires quand même ;) 21:11 ok mais si on peut pas tester avec une version antèrieur que celle qu'on a installée 21:11 ok 21:12 max-k: si la version par défaut passe, on laisse 21:12 on ne spécifie une version que si c'est nécessaire 21:12 pour trouver les build-depends, on peut regarder le configure.ac aussi 21:12 ah c'est les logiciel dont a besoin la compilation de classroom ? 21:12 bashelier: ok 21:12 ShinMaa: oui ;) 21:12 ok ok ! 21:12 mr_pouit: non, faut pas regarder le configure.ac ici j'ai fais ça super porc :P 21:12 mode/#ubuntu-fr-classroom [+m] by bashelier 21:12 bon, courrage plus que deux donc :) 21:12 bashelier: ^^' 21:12 le fichier copyrights 21:13 il contient les lisences et copyrights des sources, ainsi que le copyright du paquet lui-même 21:13 on y reviendra plus tard ;) 21:13 enfin, le plus interassant, le rules 21:13 le rules, est un makefile, et fonctionne comme tel 21:14 c'est à dire par targets 21:14 n'ayez par peur, je m'explique 21:14 regardez la ligne 44 21:14 44 install: build 21:14 on peut y voir la définition du target "install" 21:15 un target contient un ensemble de commandes 21:15 comme la ligne de commande 21:15 utiles à effectuer telle ou telle tache 21:15 ici on voie que make install est appellé 21:15 ensuite, on voir "build" après "install:" 21:16 cela signifie que le target install a besoin que le target build ai été effectué pour être lui même effectué 21:16 install dépend de build donc 21:16 build contient le make 21:16 pour builder le paquet enfin, le target "binary" va être appellé, ainsi que toutes ses dépendances donc 21:17 remarquez donc que l'on retrouve les ./configure, make et make install dans le paquet 21:17 mode/#ubuntu-fr-classroom [-m] by bashelier 21:17 questions ? :p 21:17 don-harry [n=don-harr@242.192-246-81.adsl-dyn.isp.belgacom.be] has quit [Read error: 104 (Connection reset by peer)] 21:17 ligne 61 et pas 44 21:17 don-harry [n=don-harr@242.192-246-81.adsl-dyn.isp.belgacom.be] has joined #ubuntu-fr-classroom 21:17 gasp !!! 21:17 +1! 21:17 arrrgg 21:17 j'ai pas reussie a trouver la ligne sous nano dsl 21:17 bashelier, en fait ce fichier sert à contruire le paquet mais ne sera pas embarqué dans celui-ci c'est ca? 21:17 hl15: mc montre les numero de ligne 21:17 coincoin: oui 21:17 bashelier, ok 21:17 Si on comprend pas tout ce qui y'a écrit dans rules c'est pas grave ? mdr 21:18 hl15: ctrl+w et "install:" 21:18 moi c'est a la ligne 61 21:18 bashelier: quelle editeur tu utilise vim ed ? 21:18 enfin je crois :p 21:18 termitor: j'utilise vim 21:18 ShinMaa> non , mais c'est mieux si tu comprend un peu ce que tu fais 21:18 bon, on le build ce paquet ? :) 21:18 bashelier: tu pourrais reprendre ta dernière séquence ? 21:19 et on quitte comment vim au fait ? 21:19 :q 21:19 :s! 21:19 :q 21:19 :q! 21:19 :x 21:19 hl15: Echap :q entrée 21:19 bashelier: j'entrave que quik 21:19 en fait ce fichier, il est utiliser pendant la contruction du package, pas pendant l'installation du package 21:19 hl15, le "!" est pour forcé la sortie, en cas de modification involontaire 21:19 olivierb: si, il définit tout ce qu'il y a a faire en fait ;) 21:19 CiRiX, j'en apprend plein ce soir :) 21:19 donc il est utilisé dans les deux cas 21:19 ./configure, make, make install... 21:19 olivierb: ah pardon 21:20 olivierb: non, pour l'install non, il n'est pas utile 21:20 au temps pour moi 21:20 ok 21:20 coincoin: le systeme de build debian est assez complexe 21:20 coincoin, idem ^^ 21:20 mode/#ubuntu-fr-classroom [+m] by bashelier 21:20 termitor: pas du tout voyons :p 21:20 bon, buildons 21:20 cd .. 21:20 debuild -us -uc 21:21 debuild -us -uc sert à builder le paquet, sans signer ni le paquet source ni le(s) paquet(s) binaires 21:21 on laisse mouliner 21:21 dpkg-deb : construction du paquet « classroom » dans « ../classroom_0.1-1_i386.deb ». 21:21 et hop, un package classroom :P 21:21 mode/#ubuntu-fr-classroom [-m] by bashelier 21:21 bon pour tout le monde ? 21:21 nen 21:21 ca foire 21:21 non dpkg-checkbuilddeps : erreur : erreur rencontrée lors de l'analyse de Build-Depends 21:21 c'est en cours... 21:21 dpkg-checkbuilddeps : dépendances de construction non trouvées : autotools-dev 21:21 dpkg-checkbuilddeps : erreur : erreur de syntaxe dans fichier de contrôle debian/control à la ligne 6 : ligne au format inconnu, format différent de « champ-virgule-valeur » 21:21 debuild: fatal error at line 987: 21:21 You do not appear to have all build dependencies properly met, aborting. 21:21 (Use -d flag to override.) 21:21 If you have the pbuilder package installed you can run 21:21 /usr/lib/pbuilder/pbuilder-satisfydepends as root to install the 21:21 required packages, or you can do it manually using dpkg or apt using 21:22 the error messages just above this message. 21:22 houla 21:22 mode/#ubuntu-fr-classroom [+m] by bashelier 21:22 je vais répondre en +m 21:22 vomoho: tu as bien séparé les Build-Depends par une virgule ? 21:22 Build-Depends: debhelper (>= 5), autotools-dev, pkg-config, libgtk2.0-dev 21:22 chez moi c'est comme aç 21:22 max-k: idem 21:22 vérifiez :) 21:22 Mode -m 21:23 mode/#ubuntu-fr-classroom [-m] by bashelier 21:23 bashelier, désolé, je n'avais pas installé autotools-dev ! je ne sais pas pourquoi 21:23 CiRiX: pas de problème ;) 21:23 bashelier: debuild -us -uc est a executer dans le repertoire debian ? 21:23 termitor: non 21:23 d'où le 21:23 cd .. 21:23 bashelier: pas vue , haha 21:23 dpkg-checkbuilddeps : erreur : erreur de syntaxe dans fichier de contrôle debian/control à la ligne 6 : ligne au format inconnu, format différent de « champ-virgule-valeur » 21:23 debuild: fatal error at line 987: 21:23 You do not appear to have all build dependencies properly met, aborting. 21:23 (Use -d flag to override.) 21:23 If you have the pbuilder package installed you can run 21:23 /usr/lib/pbuilder/pbuilder-satisfydepends as root to install the 21:23 bah ça marche quand meme depuis le dossier debian 21:23 required packages, or you can do it manually using dpkg or apt using 21:23 the error messages just above this message. 21:23 debuild 'est à effecture dans le répertoire source 21:24 mode/#ubuntu-fr-classroom [+m] by bashelier 21:24 s'il vous plait :) 21:24 vérifiez tous votre debian/control 21:24 Build-Depends: debhelper (>= 5), autotools-dev, pkg-config, libgtk2.0-dev 21:24 qu'il ait cette tronche là 21:24 pas de nouvelle ligne 21:24 tout sur une ligne 21:24 mode/#ubuntu-fr-classroom [-m] by bashelier 21:24 bashelier: pas de pbuilder ? 21:24 Marty_Desktop: pas tout de suite 21:24 :) 21:25 ct ca le blême : un retour à la ligne qui est sorti de nulle part 21:25 bashelier> trop bien j'ai un .deb! 21:25 :P 21:25 ça marche! 21:25 :D 21:25 max-k: tu le vires ;) 21:25 LeGreffi3R: dans le repertoir debian ? 21:25 ils servent a quoi les argument -us -uc ? bashelier 21:25 bashelier: c fait : c tout bon 21:25 non dans "classroom" 21:25 on ne fait pas debuid -S -sa ? 21:25 dans "classroom-0.1" 21:25 le père du dossier des sources 21:25 Marty_Desktop: pas tout de suite 21:26 mode/#ubuntu-fr-classroom [+m] by bashelier 21:26 prochaine étape: rendre le package plus beau... parce que là il est moche, mais on n le sait pas encore :p 21:26 installez la dernière version de lintian comme ceci: 21:26 wget -c http://people.dunnewind.net/arthur/lintian_1.23.32ubuntu1_all.deb 21:26 sudo dpkg -i lintian_1.23.32ubuntu1_all.deb 21:26 rm -f lintian_1.23.32ubuntu1_all.deb 21:27 mode/#ubuntu-fr-classroom [-m] by bashelier 21:27 lintian est installé pour tout le monde ? 21:27 depuis hier 21:27 oui 21:27 idem 21:27 il est en dépot ce paquet 21:27 oui mais c une version antérieure 21:27 LeGreffi3R: pas la même version 21:27 :( 21:27 je l'ai dans les depot (gutsy :-p:-p) 21:27 termitor: héhé oui :) 21:28 mode/#ubuntu-fr-classroom [+m] by bashelier 21:28 on passe un lintian sur le .deb 21:28 cd .. 21:28 lintian classroom_0.1-1_i386.deb 21:28 et là... on voie qu'il n'est pas très content :) 21:28 mode/#ubuntu-fr-classroom [-m] by bashelier 21:29 quelqu'un peut me paster les messages d'erreur ? 21:29 ben pk ? 21:29 je le fais 21:29 merci 21:29 W: classroom: binary-without-manpage usr/bin/classroom 21:29 W: classroom: zero-byte-file-in-doc-directory usr/share/doc/classroom/changelog.gz 21:29 E: classroom: helper-templates-in-copyright 21:29 E: classroom: description-is-dh_make-template 21:29 W: classroom: wrong-bug-number-in-closes l3:#nnnn 21:29 W: classroom: maintainer-not-full-name unknown 21:29 E: classroom: section-is-dh_make-template 21:29 mode/#ubuntu-fr-classroom [+m] by bashelier 21:29 merci 21:29 miam ^^ 21:29 :p 21:29 repassez un coup de lintian, avec lintian -i classroom_0.1-1_i386.deb cette fois 21:30 regardons les warnings un à un 21:30 21:30 < CiRiX> W: classroom: binary-without-manpage usr/bin/classroom 21:30 il manque donc une manpage au programme... on va en écrire une :) 21:30 21:30 < CiRiX> W: classroom: zero-byte-file-in-doc-directory usr/share/doc/classroom/changelog.gz 21:31 hl15 [n=hl15@AStDenis-103-1-10-239.w80-8.abo.wanadoo.fr] has quit [Client Quit] 21:31 ça veut dire qu'on a pas installé de changelog à partir des sources, on va corriger ça dans le rules 21:31 21:30 < CiRiX> E: classroom: helper-templates-in-copyright 21:31 21:30 < CiRiX> E: classroom: description-is-dh_make-template 21:31 21:30 < CiRiX> E: classroom: section-is-dh_make-template 21:31 21:30 < CiRiX> W: classroom: maintainer-not-full-name unknown 21:31 ça veut dire qu'il faut éditer les fichiers control et copyright, on va le faire 21:31 21:30 < CiRiX> W: classroom: wrong-bug-number-in-closes l3:#nnnn 21:32 ça ça veut dire que tu n'as pas édité changelog comme j'avais dis CiRix ;) 21:32 * Initial release 21:32 mode/#ubuntu-fr-classroom [-m] by bashelier 21:32 exemple du message complet http://paste.ubuntu-nl.org/29821/ 21:32 >< 21:32 tout le monde comprend les warnings ? 21:33 grosso-modo oui 21:33 merci termitor 21:33 a peu près 21:33 on commence par écrire une manpage ? 21:33 moi aussi je suis mauvais élève j'ai pas édité le control j'ai du zaper 21:33 c'est surtout le rules que j'ai pas compris moi 21:33 ou par le reste 21:33 comme vous voulez 21:33 bashelier, pour le changelog que je n'ai pas édité, vu que c juste un Warning, rien de grave pour la poursuite du cours ? 21:33 à peu près 21:33 CiRiX: non ;) 21:33 ouf 21:34 le manpage pour commencer? 21:34 bashelier, k mc 21:34 mode/#ubuntu-fr-classroom [+m] by bashelier 21:34 on a un bon exemple de manmage ici: 21:34 cat /usr/share/debhelper/dh_make/debian/manpage.1.ex 21:34 hl15 [n=hl15@AStDenis-103-1-10-239.w80-8.abo.wanadoo.fr] has joined #ubuntu-fr-classroom 21:34 cd classroom-0.1/debian 21:34 cp /usr/share/debhelper/dh_make/debian/manpage.1.ex classroom.1 21:35 le 1 correspond à la section des manpages, man man pour plus d'info 21:35 éditons classroom.1 donc 21:35 les lignes commençant pas .\" sont des commentaires 21:35 .TH #UCPACKAGE# SECTION "#SHORTDATE#" 21:36 on remplace, ce qui donne 21:36 .TH classroom 1 20070723 21:36 gpocentek: pour la date ,j'ai un doute 21:36 gpocentek: c'est bien ça ? 21:37 gpocentek: ? 21:37 bashelier: dans la page ma que je viens d'écrire j'ai mis "13 Jul 2007"... 21:37 ok 21:37 merci 21:37 donc 13 Jul 2007 :) 21:37 mais il doit y a voir plusieurs formats possibles 21:37 ptètre 21:37 ensuite 21:37 .SH NAME 21:37 #PACKAGE# \- program to do something 21:38 .SH NAME veut dire "section NAME", on n'y touche pas 21:38 on change la seconde ligne 21:38 classroom \- nice app designed to tell the world gpocentek rocks <3 21:38 meven [n=meven@ARennes-357-1-114-53.w90-12.abo.wanadoo.fr] has joined #ubuntu-fr-classroom 21:38 section suivante: 21:38 .SH SYNOPSIS 21:38 .B #PACKAGE# 21:38 .RI [ options ] " files" ... 21:38 .br 21:38 .B bar 21:38 .RI [ options ] " files" ... 21:38 ici il n'y as pas d'options à la ligne de commande 21:39 on vire cette section 21:39 section suivante 21:39 .SH DESCRIPTION 21:39 This manual page documents briefly the 21:39 .B #PACKAGE# 21:39 and 21:39 .B bar 21:39 commands. 21:39 .PP 21:39 on remplace par 21:39 remin [n=moron@i01v-62-34-233-48.d4.club-internet.fr] has quit [Client Quit] 21:39 This manual page documents briefly the 21:39 .B classroom 21:39 app 21:40 mode/#ubuntu-fr-classroom [-m] by bashelier 21:40 ok pour tout le monde ? 21:40 houla 21:40 and = app ? 21:40 je vous propose de faire une manpage et de la mettre quelquepart 21:40 paril oO? 21:40 ce sera plus simple en fait 21:40 bashelier: precise ou tu veut que l'on modife , le flux est intense 21:40 mode/#ubuntu-fr-classroom [+m] by bashelier 21:40 en fait c'est ptètre mieux que je vous en file une toute faite :) 21:40 une seconde 21:40 mode/#ubuntu-fr-classroom [-m] by bashelier 21:41 on attent 21:41 .B machin chose ça veut dire qu'on fou machin chose en gras ? 21:41 en même temps ca serait bete de partir maintenant 21:41 ShinMaa: exactement 21:41 coincoin: c que j'ai faim 21:41 huhu 21:42 c'est une sorte de HTML avec des balises bizarres 21:42 qu'est ce qui se passse sur ce chan y a une classroom ou quoi ? 21:42 meven, oui 21:42 exact 21:42 oui 21:42 non pourquoi xD 21:42 sur quoi je débraque et j'ai pas vu de message sur le planet.ubuntu-fr 21:42 et là je pane plus rien (j'ai zappé 2 sec. le temps de me servir des pâtes) 21:43 huhu le repas de l'informaticien 21:43 coincoin: ca va etre ravioli froid pour moi 21:43 max-k> il doit y avoir des docs plus complête sur l'edition des manpages :) 21:43 le log du cours est a quel adresse encore ? 21:43 gpocentek: tu peux répondre aux questions pendant que j'écris la manpage ? 21:43 pour meven 21:43 yes 21:43 LeGreffi3R: ouais je m'y plongerai à un autre moment 21:43 /topic 21:44 (donc si y'a des questions...) 21:44 en tout cas je découvre les classroom et c'est bien sympa ! 21:44 oui clair bien sympa 21:44 la difficulte c de tape dans tous en meme temps , build debian , man , tar , editeur genre vim , c pas un truc débutant cette fois 21:44 * vomoho est d'accord avec coincoin 21:44 et puis je mettrai mon log sur mon site, vu que le cours est très bien :D 21:44 mode/#ubuntu-fr-classroom [+m] by bashelier 21:44 alors :) 21:44 rm classroom.1 21:45 à la place on met celle-ci 21:45 http://paste.dunnewind.net/257 21:45 pour tester: 21:45 man ./classroom.1 21:45 (éditez votre nom et votre adresse mail... ;) ) 21:45 mode/#ubuntu-fr-classroom [-m] by bashelier 21:45 ok pour tout le monde ? :) 21:45 heu non 21:46 j'ai fait un wget comme un abruti xD 21:46 j'ai du html partout 21:46 2s 21:46 ^^ 21:46 moi aussi 21:46 meven [n=meven@ARennes-357-1-114-53.w90-12.abo.wanadoo.fr] has quit [Remote closed the connection] 21:46 mode/#ubuntu-fr-classroom [+m] by bashelier 21:46 wget -O classroom.1 http://paste.dunnewind.net/download/257 21:46 mode/#ubuntu-fr-classroom [-m] by bashelier 21:46 :) 21:46 ah non 21:46 -_- 21:47 au temps pour moi 21:47 bon pour tout le monde la manpage ? ^^' 21:47 mal fichu ce logiciel de pastebin qui recopie les n° de lignes -__- 21:47 .PP = nouveau paragraphe ? 21:47 ShinMaa: oui 21:47 c'est bon pour moi. 21:47 nan j'ai plein de numéros de ligne ^^' 21:47 on a tout notre temps :) 21:47 faut copier ce qui y'a dans le textearea plus bas 21:48 pas bête :) 21:48 ok c bon 21:48 bashelier: http://paste.ubuntu-nl.org/29832/plain/ 21:48 wget -O classroom.1 http://paste.ubuntu-nl.org/29832/plain/ 21:49 merci beaucoup termitor 21:49 toujours pas 21:49 * termitor leche leche 21:49 ^^ 21:49 il est censé etre dans quel rep ce fichier ?? 21:49 PhilippeP: debian/ 21:50 yess c'est bon 21:50 'ci 21:50 c'est bon 21:50 nickel :) 21:50 mode/#ubuntu-fr-classroom [+m] by bashelier 21:50 warning suivant: 21:50 coincoin [n=coincoin@mac33-4-88-163-64-138.fbx.proxad.net] has quit [Client Quit] 21:50 W: classroom: zero-byte-file-in-doc-directory usr/share/doc/classroom/changelog.gz 21:50 ceci signifie que le changelog des sources est vide 21:50 regardons dans le rules quel fichier est installé comme changelog 21:50 tapez 21:50 coincoin [n=coincoin@mac33-4-88-163-64-138.fbx.proxad.net] has joined #ubuntu-fr-classroom 21:51 geap changelog rules 21:51 grep changelog rules 21:51 pardon 21:51 cette commande va afficher tout les lignes de rules contenant le mot "changelog" 21:51 dh_installchangelogs ChangeLog 21:51 dh_installchangelogs est le programme chargé d'installer les changelog des sources 21:52 (man dh_installchangelogs pour plus de détails) 21:52 donc ici il install le ficher ChangeLog 21:52 voyons à quoi il ressemble 21:52 cd .. 21:52 cat ChangeLog 21:52 il est... vide 21:52 oui, l'auteur de classroom a oublié de le remplire 21:52 je suis désolé, ceci ne derait pas arriver :p 21:52 mode/#ubuntu-fr-classroom [-m] by bashelier 21:52 tout le monde a bien cerné le problème ? 21:52 ok j'éviterais le ctrl-x maintenant 21:53 oui 21:53 pas vraiment 21:53 bashelier: si on t'attrape 21:53 bashelier: oui 21:53 gpocentek: si le changelog upstream est vide, on ne l'installe pas, right ? 21:53 +1 21:53 coincoin: on a installé un fichier vide, dons lintian est pas content 21:53 mode/#ubuntu-fr-classroom [+m] by bashelier 21:53 on va donc faire en sorte que rules n'installe pas ce fichier 21:54 on édite rules, et on vire la ligne 21:54 dh_installchangelogs ChangeLog 21:54 mode/#ubuntu-fr-classroom [-m] by bashelier 21:54 ok ? 21:54 ok 21:54 ouaip 21:54 (on approche de la fin, courrage tous :) ) 21:54 moi je mets un #, ca rox plus. 21:54 ok 21:55 c'est comment le nom du fichier ou on doit recopier la page de manuel ? 21:55 bashelier: oki 21:55 LeGreffi3R: copieur 21:55 LeGreffi3R: d'habitude on les vire les commentaires du rules :) 21:55 arno_, debian/rules 21:55 arno_: debian/classroom.1 21:55 (kc) 21:55 arno_: classroom.1 21:55 ha pardon x: 21:55 ^^ 21:55 ouf xD 21:55 c'est bon :° 21:55 :) 21:55 mode/#ubuntu-fr-classroom [+m] by bashelier 21:55 warning suivant: 21:55 W: classroom: copyright-lists-upstream-authors-with-dh_make-boilerplate 21:55 on regarde le fichier copyright 21:56 Upstream Author: 21:56 il faut bien spécifier l'auteur :) 21:56 généralement on regarde le fichier "AUTHOR" des sources 21:56 ha mais il est vide lui aussi 21:56 j'ai oublié de mettre à jours l'archive -_- 21:57 bon, on va dire qu'il contient 21:57 "Written" by Arthur Loiret 21:57 voilà on a notre auteur 21:57 Upstream Author: Arthur Loiret 21:58 The_Marauder [n=The_Mara@cam44-1-82-67-123-151.fbx.proxad.net] has quit [Read error: 104 (Connection reset by peer)] 21:58 ensuite, juste au dessus 21:58 It was downloaded from 21:58 on spécifie l'endroit où l'on a téléchargé les sources 21:58 ici, c'est http://people.dunnewind.net/arthur 21:58 ensuite 21:58 Copyright: 21:58 on va liste les copyrights des sources 21:58 pour cela il existe une commande magique 21:59 placez vous dans le répertoire des sources et... 21:59 grep -Ri copyright * 21:59 termitor: tu peux mettre le résultat sur pastebin ? 21:59 mode/#ubuntu-fr-classroom [+v termitor] by bashelier 22:00 mode/#ubuntu-fr-classroom [+m] by bashelier 22:00 la commande est sûre à 100% m'sieur ? o/ 22:00 bon, encore mauvaise nouvelle, ils sont pas à jours non plus 22:00 gpocentek: non, mais problème 22:00 je vous met sur pastebin les fichiers asm_exit.c, asm_exit.h, et main.c 22:00 ils ne sont pas à jours chez vous... 22:00 je suis désolé 22:01 http://paste.stgraber.org/2118 22:01 pour asm_exit.c 22:01 http://paste.stgraber.org/2119 22:01 pour asm_exit.h 22:02 http://paste.stgraber.org/2120 22:02 pour main.c 22:02 ces fichiers sont dans src/ 22:02 remplacez les donc 22:02 et dans le répertoire des sources 22:02 grep -Ri copyright * 22:02 mode/#ubuntu-fr-classroom [-m] by bashelier 22:02 et encore pardon pour cet oubli 22:03 bashelier: http://paste.ubuntu-nl.org/29835/ ca te va ? 22:03 bof si tout etait la rose on s'ennuierais un peu 22:03 termitor: non :) 22:03 pstream Author(s): 22:03 oups 22:03 je refais 22:03 Upstream Author: Arthur Loiret 22:03 ça c'est bon :) 22:04 pour les copyrights on y reviens dès que les fichiers sont bon :) 22:04 hl15: :) 22:04 heu la je me perd un peu 22:04 bashelier: ... je vais craqué , 22:04 faut remplacer les 3 fichiers source? 22:04 coincoin: oui 22:04 * gpocentek suggère de simplement zieuter les fichiers sources 22:05 +1 22:05 regardez les 3 fichiers sources sur pastebin 22:05 ils contiennent des copyrights 22:05 quels sont-ils ? 22:05 :) 22:06 des fichiers sources 22:06 * 22:06 * source code mostly copied from gtk-fr.org 22:06 * 22:06 * You may redistribute it and/or modify it under the terms of the 22:06 * GNU General Public License, as published by the Free Software 22:06 * Foundation; either version 2 of the License, or (at your option) 22:06 * any later version. 22:06 * 22:06 http://paste.stgraber.org/2118 http://paste.stgraber.org/2119 http://paste.stgraber.org/2120 22:06 * main.c is distributed in the hope that it will be useful, 22:06 de ces 3 fichiers 22:06 * but WITHOUT ANY WARRANTY; without even the implied warranty of 22:06 avec des jolies copyright on top 22:06 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 22:06 * See the GNU General Public License for more details. 22:06 * 22:06 mode/#ubuntu-fr-classroom [+m] by bashelier 22:06 vomoho: les *copyrights* , pas le reste ;) 22:06 pour l'instant 22:06 mode/#ubuntu-fr-classroom [-m] by bashelier 22:06 http://paste.stgraber.org/2118 http://paste.stgraber.org/2119 http://paste.stgraber.org/2120 22:07 bashelier: désolé 22:07 The_Marauder [n=The_Mara@cam44-1-82-67-123-151.fbx.proxad.net] has joined #ubuntu-fr-classroom 22:07 je ne comprend pas pour "upstream author". quelle est la différence avec la ligne "copyright" ? 22:07 np ;) 22:07 CiRiX: upstream author est celui qui a écrit le programme 22:07 CiRiX: mais il peut y avoir d'autres copyrights, pour diverses raisons 22:07 main.c: * You should have received a copy of the GNU General Public License 22:07 main.c: /* this label is copyright (C) Gauvain Pocentek */ 22:07 Makefile:# gives unlimited permission to copy and/or distribute it, 22:07 Makefile.in:# gives unlimited permission to copy and/or distribute it, 22:07 bashelier, ok merci 22:08 mode/#ubuntu-fr-classroom [+m] by bashelier 22:08 ici les copyrights sont 22:08 Copyright (C) 2007 Arthur Loiret 22:08 (C) Gauvain Pocentek 22:08 ces deux là 22:08 on ne met que les copyrights des sources du fichier, donc pas des configure Makefile etc... 22:08 on les liste dans le debian/copyright donc 22:08 mode/#ubuntu-fr-classroom [-m] by bashelier 22:09 On copie juste le nom du copyrigth avec le nom de la personnes, sans sa description ? 22:09 si on a plusieurs auteurs sur un programme, comment doit-on les mettre sur la ligne upstream author ? j'fais un blocage sur cette ligne >< 22:09 Upstream Author, et si il y en plusieurs ? 22:09 bashelier: bon ? http://paste.ubuntu-nl.org/29837/ 22:09 CiRiX: on fais une ligne par auteur tout simplement ;) 22:09 thedamocles [n=thedamoc@kellyhouse.force9.co.uk] has left #ubuntu-fr-classroom [] 22:10 termitor: non =) 22:10 "grep -Ri copyright * >> ../debian/copyright" depuis src , c'est bon? 22:10 termitor: 22:04 <@bashelier> Upstream Author: Arthur Loiret 22:10 * termitor craque 22:10 arf je coule, 22:10 LeGreffi3R: pas bonne idée 22:10 les copyrights sont 22:10 22:09 <@bashelier> Copyright (C) 2007 Arthur Loiret 22:10 22:09 <@bashelier> (C) Gauvain Pocentek 22:10 ^^ huhu je vous laisse, à bientot dans une classroom ! 22:10 coincoin: pourtant tu devrait nager 22:11 je vais vous faire un fichier copyright tout fait 22:11 bye coincoin 22:11 le copyright c'est en fait un racourci pour "copyright holder" 22:11 coincoin [n=coincoin@mac33-4-88-163-64-138.fbx.proxad.net] has quit ["Ex-Chat"] 22:11 c'est 1 ou plusieurs personnes qui définissent les droits du fichier source 22:12 et pour décrire un copyright holder il faut : nom, email, et date 22:12 pour faire plus joli sur le terminal : grep -i "copyright (c)" src/*.{c,h} 22:13 bondeja munuit passé (GMT+4) alors je vus souhaite a tous bonne nuit a+ 22:13 pardon : grep -Ri "copyright (c)" src/*.{c,h} 22:13 bye 22:13 oui mais tu finis par corriger a la main, parce que les dev ont oublié la date dans leur copyright ;) 22:13 bonne nuit hl15 22:13 hl15, bn 22:13 hl15 [n=hl15@AStDenis-103-1-10-239.w80-8.abo.wanadoo.fr] has quit ["Quitte"] 22:13 fichier copyright: http://paste.dunnewind.net/258 22:14 ensuite, plus que la section et l'installation de la manpage... et on aura un beau package :) 22:14 mode/#ubuntu-fr-classroom [+m] by bashelier 22:15 on a certes créé une manpage 22:15 encore faut-il l'installer 22:15 pour cela, on créé un fichier debian/manpages qui contient la liste des manpages 22:15 dans debian/manpages on met donc 22:15 debian/classroom.1 22:15 c'est tout :) 22:15 enfin, la section 22:15 éditons debian/control 22:16 Section: unknown 22:16 gpocentek: tu as la liste des sections sous la main ? 22:16 je la retrouve 22:16 merci 22:17 At present, they are: admin, base, comm, contrib, devel, doc, editors, electronics, embedded, games, gnome, graphics, hamradio, interpreters, kde, libs, libdevel, mail, math, misc, net, news, non-free, oldlibs, otherosfs, perl, python, science, shells, sound, tex, text, utils, web, x11. 22:17 non free/unknow nanare 22:17 (http://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections) 22:17 je vous propose de mettre x11 22:17 Section: x11 22:17 mode/#ubuntu-fr-classroom [-m] by bashelier 22:17 Adri2000_ [n=adri2000@ubuntu/member/adri2000] has quit [Read error: 110 (Connection timed out)] 22:18 ensuite, plus qu'à rebuilder le paquet 22:18 debuild -us -uc 22:18 don-harry [n=don-harr@242.192-246-81.adsl-dyn.isp.belgacom.be] has quit [Read error: 104 (Connection reset by peer)] 22:18 je me trompes en disant que la section x11 est un foure-tout pour les applications graphiques ? S: 22:18 CiRiX: non, tu te trompes pas 22:18 CiRiX: plus ou moins... :) 22:19 tout Xfce est dans x11 ^^ 22:19 ^^ 22:19 faut faire une sction xfce 22:19 bon, c'est la fin de ce cours 22:19 t'en parleras à sam ? :) 22:19 don-harry [n=don-harr@242.192-246-81.adsl-dyn.isp.belgacom.be] has joined #ubuntu-fr-classroom 22:19 vous devriez normalement être en mesure de créer un package debian maintenant :) 22:19 debuild: fatal error at line 1228:debian/rules build failed 22:19 coucou les gens,,, c'est fini la classroom ? 22:19 merci 22:19 je vous invit eà lire http://doc.ubuntu-fr.org/tutoriel/creer_un_paquet pour la partie "pbuilder" 22:19 * gpocentek félicite bashelier 22:19 c'est ironique bashelier ? mdr 22:20 on pourra refaire ce package, pour un autre déja plus dur :x 22:20 --fin du log-- 22:20 ShinMaa: orgre 22:20 gpocentek: je lui montrerais bien le log mais le coup du tarball pas à fours moyen ^^' 22:20 :) 22:20 jours* 22:20 bravo bashelier ... 22:20 ShinMaa: quoi donc ? mon pseudo ? 22:20 merci beaucoup :) 22:20 merci pour ce cours [= 22:20 ShinMaa: t'as tous les éléments pour faire ton paquet là :) 22:20 Bye et merci pour cette classroom et surtout à bashelier 22:21 merci à vous, et encore désolé pour ces petits désagréments avec les sources ;) 22:21 vomoho [n=vomoho@AOrleans-152-1-82-28.w90-21.abo.wanadoo.fr] has quit ["Ex-Chat"] 22:21 merci merci 22:21 PhilippeP [n=Philippe@user-85-201-40-55.tvcablenet.be] has left #ubuntu-fr-classroom ["Kopete 0.12.1 : http://kopete.kde.org"] 22:21 En tout cas, c'était clair comme cours, merci :) 22:21 merci à toi :) 22:21 pas grave mais on pourra le retrouver ou le cours parce-que va falloir que je le digère un peu 22:21 Bonne soirée à tous et merci pour mon link mauve de fiston ;) 22:21 max-k: oui oui, une seconde 22:21 merci bashelier 22:21 bashelier: pardon 22:22 max-k: J'ai FAIM , me parle parle pas de digestion :-p 22:22 http://www.sceen.net/~gapz/classroom/packaging-2007-07-13 22:22 le log du cours max-k ;) 22:22 termitor: xD moi c bon j'ai mangé des pâtes 22:22 bon, si tu as un dernier mot à dire (une connerie ?) avant que j'eteigne les logs bashelier c'est le moment ;-) 22:22 bashelier: merciiiiiii !!!!!! 22:22 bashelier: bravo 22:23 gapz: merci pour tes pilules, ça m'a beaucoup aidé =) 22:23 *fuite* 22:23 encore merci à vous tous, n'hésitez pas à passer par ce chan pour parler packaging ;) 22:23 merci pour cet atelier, c'était super bien organisé 22:24 BONNE NUIT A TOUS ET MERCI ENCORE BASHELIER