Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 13-04-2015 11:00:00

seb95deMLO
Invité

[packaging] Fabrication de paquets pour/sous debian

Bonjour a tous,

je poste aujourd hui car je suis au bout du rouleau, je n'y arrive pas, et en faite pour tout dire ça me degoute des paquets deb.
J'ai deux excellent livre sur debian, depuis pas mal de temps, 2007 ou 2006 pour le plus ancien... Donc ce sont les cahiers de l'admin debian etch et debian administration et configuration avancée...

Ils parlent tout deux de la contruction de paquets( surtout dans le debian administration). Donc ayant deja une petite connaissance dans la creation de paquets sous archlinux, frugalware, nutyx et surtout maintenant 0linux, je decide de retenter pour approfondir mes connaissances.

Je bute, pour commencer je trouve que debian se complique la vie, que c'est lent a faire, que c'est chiant de cette maniere, que j'ai le temps de faire au moins 10 paquets sous 0linux comme l'environnement de mate en 1.10 que je n'aurais pas reussit a finir de completer les actions demandé pour en faire un seul sous debian...

Je ne comprenais pas pourquoi et comment debian arrivait a reclamer plus de mains d'oeuvre pour par exemple packager kde car equipe trop petite alors qu'il me semble qu'ils sont deja 4/5 gars, alors que par exemple sous 0linux il ne sont que deux a faire les 2000 paquets, kde est l'oeuvre d'un seul gars sous nutyx, frugalware ou 0linux... Pour tout vous dire j'ai reussi sans mal a me faire mate1.10 en meme pas une heure installation comprise.

Alors je pense que vu l'excellent tuto qui est dispo sur le wiki, il y a des qualifié pour comprendre et partager ce savoir, mais est ce que moi qui trouve que sous debian c'est compliqué le packaging?

Alors comment j'ai fait, pour commencer j'ai voulu simplement reprendre un deb.source d'un paquet pour changer de version vu comment c'est pointé le deb.source, je me suis dit que c'est pas la bonne methode du coup je me demande si a chaque fois les packageurs repartent d'une feuille blanche et a coup de dh-make, cree petit a petit le paquets?

Bon comment je fais, (je me repete big_smile ):
Pour un petit changement dans un paquet(style un rajout de fonction ou un changement de compilation):
- je recupere les sources de debian, apt-get source nom_du_paquet ou par exemple apt-get source mldonkey-server
- j'effectue les modification, deja vu le nombre de fichiers c'est le bordel, ensuite si je veux simplement passer en version superieur ça doit pas etre la bonne methode... admettons que je veux seulement changer un truc dans la compilation, par exemple la prise en charge de tout les protocoles.
- je m'occupe donc de mettre une version differente de celle du depot pour pas entrer en conflit avec ceux du depot, par exemple si c'est la version 3.5.1 dans le depot, je change le miens en 3.5.1.scha1, je le fais avec dch,:
dch -v 3.5.1.scha1
- d'apres le livre, si j'ai besoin de mettre une option de compilation pour rajouter par exemple un protocole, je dois taper dans rules
- control me sers a transcrire les changements et surtout cest la ou je peu alleger les dependances(debian aime bien donner des versions a ses dependances ce qui est neccessaire car elle a plusieurs version, stble, testin, ect....)
- ensuite un dpkg-buildpackage -rfakeroot -us-uc

et mon paquet est la!

Bon vu que je voulais installer une nouvelle version du paquet firefox ou iceweasel(ça aussi c'est chiant:) ), j'avais fait de meme mais par la suite j'ai changé les version... je me suis emmelé les pinceaux!

Comment faites vous?

Dernière modification par seb95deMLO (15-04-2015 17:22:05)

#2 13-04-2015 13:58:41

nIQnutn
Modérateur
Lieu : Lyon
Distrib. : Jessie
Noyau : Linux 3.16-amd64
(G)UI : XFCE
Inscription : 16-03-2012
Site Web

Re : [packaging] Fabrication de paquets pour/sous debian

Hors ligne

#3 13-04-2015 14:24:30

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian


bien c'est vrai que je l'avais lu en large mais pas serieusement et je pense deja avoir trouvé une erreur que j'ai du faire.
enfin j'espere, c'est le nommage j'ai mis une version perso finissant par .scha au lieu de -scha...
je vais retenter, mais ça me parait etre une maniere de faire des paquets tres long et pas du tout motivante!

#4 13-04-2015 14:52:10

nIQnutn
Modérateur
Lieu : Lyon
Distrib. : Jessie
Noyau : Linux 3.16-amd64
(G)UI : XFCE
Inscription : 16-03-2012
Site Web

Re : [packaging] Fabrication de paquets pour/sous debian

tu peux essayer de contacter un des membres ou responsable du packaging pour avoir un peu d'aide.
ou

apt-get install packaging-tutorial

Hors ligne

#5 13-04-2015 14:53:05

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

http://doc.ubuntu-fr.org/tutoriel/creer … _un_paquet
est aussi une bonne documentation bien que basé sur ubuntu ça reste les meme outils.
Ce qui m'oblige a dire que jamais je ne ferais de paquets sous debian, bien trop casse bonbon!

Je pensais avoir affaire a un truc comme arch, une recette est hop mais non, bon je continue car je ne veu pas mourir idiot!!!

#6 13-04-2015 15:05:07

nIQnutn
Modérateur
Lieu : Lyon
Distrib. : Jessie
Noyau : Linux 3.16-amd64
(G)UI : XFCE
Inscription : 16-03-2012
Site Web

Re : [packaging] Fabrication de paquets pour/sous debian

https://www.debian.org/doc/manuals/pack … ial.fr.pdf

Il y a une partie dans le livre Le cahier de l'administrateur Debian
De la découverte à la maîtrise de Debian Wheezy
Raphaël Hertzog et Roland Mas

Hors ligne

#7 13-04-2015 15:13:21

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : [packaging] Fabrication de paquets pour/sous debian

La création de paquet Debian n'est pas une chose simple. Mais il y a de bonnes raisons pour cela (il y en a probablement aussi quelques mauvaises.)

Contrairement à Arch & co, l'installation est vraiment intégrée, des tests sont effectués au cas par cas en fonction des types de paquets, les options de compilation/installation/etc. très fines sont passées… Des choses que l'on n'a pas à faire pour se préparer un paquet à la bonne franquette. Mais voilà, là, il y a des objectifs de compatibilité, d'universalité, de sécurité, etc. smile

captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#8 13-04-2015 15:15:10

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

nIQnutn a écrit :

https://www.debian.org/doc/manuals/pack … ial.fr.pdf

Il y a une partie dans le livre Le cahier de l'administrateur Debian
De la découverte à la maîtrise de Debian Wheezy
Raphaël Hertzog et Roland Mas



oui en effet c'est avec un de ces livres que j'ai commencé, en plus de debian adminitrastion... http://raphaelhertzog.fr/2007/04/29/the-debian-system/
ce dernier date un peu mais reste une reference.;)

#9 13-04-2015 15:18:08

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

captnfab a écrit :

La création de paquet Debian n'est pas une chose simple. Mais il y a de bonnes raisons pour cela (il y en a probablement aussi quelques mauvaises.)

Contrairement à Arch & co, l'installation est vraiment intégrée, des tests sont effectués au cas par cas en fonction des types de paquets, les options de compilation/installation/etc. très fines sont passées… Des choses que l'on n'a pas à faire pour se préparer un paquet à la bonne franquette. Mais voilà, là, il y a des objectifs de compatibilité, d'universalité, de sécurité, etc. smile



merci de ce complement d'info, c'est bien ce que j'ai compris en parlant avec des gars de 0linux.
Alors ma question il y a t'il un moyen pour faire un paquet vite fait bien fait, par exemple xfce et ses plugins? pour un truc comme ça on peut peut etre se passer de toute ses verifications, surtout quand c'est seulement pour soi.

Vous faites comment de votre coté?

#10 13-04-2015 17:53:40

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Messieurs dames, ça se fete!!!!
mon premier paquet debian!!!!

bon en meme temps c'est seulement une recompilation a partir des sources d'un paquet debian....:D
Mais faut savoir partir petit pour devenir grand...
Et puis sous debian tout les paquets sont deja present, de plus etant sous sid et une fois le gele fini je serais de nouveau a jour...

#11 13-04-2015 19:51:19

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : [packaging] Fabrication de paquets pour/sous debian

\o/
Et si tu mettais résolu dans l'titre voir un peu ?

Voir le tuto : C'est résolu ! Bravo mais il faut l'indiquer dans l'titre. smile

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#12 13-04-2015 21:36:07

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

smolski a écrit :

\o/
Et si tu mettais résolu dans l'titre voir un peu ?

Voir le tuto : C'est résolu ! Bravo mais il faut l'indiquer dans l'titre. smile



ah je veux bien mais ce n'est point resolue:D
ce fils si on le permet va recenser mes essaies en paquets debian...

#13 13-04-2015 23:48:08

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : [packaging] Fabrication de paquets pour/sous debian

C'est ton fil légitime... wink

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

#14 14-04-2015 10:28:55

captnfab
Admin-Girafe
Lieu : /dev/random
Distrib. : Debian Stretch/Sid/Rc-Buggy
Noyau : Linux (≥ 4.3)
(G)UI : i3-wm (≥ 4.11)
Inscription : 07-07-2008
Site Web

Re : [packaging] Fabrication de paquets pour/sous debian

@seb95deMLO: il y a un moyen de faire un paquet vite fait pour soi: checkinstall. Après, ce n'est pas un paquet « bien fait », mais c'est un paquet rapide et facile à faire.

apt-get install checkinstall


captnfab,
Association Debian-Facile, bépo.
TheDoctor: Your wish is my command… But be careful what you wish for.

Hors ligne

#15 14-04-2015 13:18:07

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

smolski a écrit :

C'est ton fil légitime... wink


Merci smolski, j'espere que ça ne t'as pas semblé seche car que je me relis ma phrase peut etre pris sec alors que j'aurais du y mettre un petit " big_smile " et ça l'aurait été moins deu coup. Je continuerais le fils pour suivre les perepetie wink

@seb95deMLO: il y a un moyen de faire un paquet vite fait pour soi: checkinstall. Après, ce n'est pas un paquet « bien fait », mais c'est un paquet rapide et facile à faire.


Merci captnfab, j'ai cru voir ça dans le bouquin et je vais m'y pencher, du reste je vais aussi m'imprimer la doc debian sur les paquets.

Bon la je pars mettre une debian mais quand je reviens ce soir j'expose mon essaie réussit sur mldonkey:)
Puis je tenterais un autre paquets avec checkinstall;p

Qui sait peut être que ça intéresse parmi vous tongue

#16 14-04-2015 17:12:40

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Alors pour changer une regle de compilation d'un paquet deja present dans debian:

- je recupere les sources de debian, apt-get source nom_du_paquet ou par exemple

apt-get source mldonkey


- je m'occupe donc de mettre une version differente de celle du depot pour pas entrer en conflit avec ceux du depot, par exemple si c'est la version 3.5.1 dans le depot, je change le miens en 3.5.1-scha1, je le fais avec dch,:

dch -v 3.1.5-2.scha1


- j'effectue les modification, admettons que je veux seulement changer un truc dans la compilation, par exemple la prise en charge de tout les protocoles, faudra aller dans le fichier rules du dossier /debian
- control me sers a transcrire les changements et surtout c'est la ou je peu alleger les dependances(debian aime bien donner des versions a ses dependances ce qui est neccessaire car elle a plusieurs version, stble, testin, ect....)
- on télécharge les dépendances du paquet a construire:

# apt-get build-dep mldonkey


- ensuite pour construire le paquet on rentre un

dpkg-buildpackage -rfakeroot -us -uc


(-us -uc pour ne pas chiffrer avec une clef)

on installe ce que nous demande le terminal( d'ou l'utilité d'un chroot) ou de ne faire que pour des paquets qu'on utilise...
et on a un joli paquet.

Dans les prochains posts, enfin j'espere, on parlera de paquet a partir de zero, ou avec checkinstall, et ensuite de depot privé mais accessible par internet par exemple pour la famille. J'ai deja vu la doc du site tres bonne au passage.

Si vous le faites deja parlez en ici, je serais ravis de voir des exemples.:D

P.S: toutes les commandes sont a taper en user simple et pas en root! Sauf si

#

est mis avant la commande

Dernière modification par seb95deMLO (15-04-2015 14:01:23)

#17 15-04-2015 14:14:26

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Correction des erreurs faite dans le post d'avant:D
changements apporté au fichier rules:


          --enable-multinet \
          --enable-bittorrent \
          --enable-filetp \
          --enable-gnutella \
          --enable-gnutella2 \
    --enable-fasttrack



description supplementaire apporté au fichier changelog:

mldonkey (3.1.5-2.scha1) UNRELEASED; urgency=medium

  * Activation des réseaux fasttrack, bittorrent, gnutella1&2, filetp

-- Sebastien CHA <sebastien@xxxxxxxx.xx.xx>  Wed, 15 Apr 2015 14:04:01 +0200



L'adresse a été changé pour ne pas etre spammé.

A la suite de quoi nos nouveau paquets sont disponible comme on peut le voir par un "ls":

[~/Public/debian]:$ ls
mldonkey-3.1.5                                   mldonkey_3.1.5-2.scha1.dsc
mldonkey_3.1.5-2.debian.tar.xz                       mldonkey_3.1.5.orig.tar.bz2
mldonkey_3.1.5-2.dsc                         mldonkey-gui_3.1.5-2.scha1_amd64.deb
mldonkey_3.1.5-2.scha1_amd64.changes         mldonkey-server_3.1.5-2.scha1_amd64.deb
mldonkey_3.1.5-2.scha1.debian.tar.xz

Dernière modification par seb95deMLO (15-04-2015 15:09:06)

#18 15-04-2015 23:20:05

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Bon je viens de refaire un autre paquet, pour le moment ce ne sont qu'a partir des sources de debian, donc le paquet doit etre deja packagé.

apt-get source xfce4-systemload-plugin
su
apt-get build-dep xfce4-systemload-plugin
exit (on revient dans le terminal utilisateur)
dch -v 1.1.1-4.scha1
dpkg-buildpackage -rfakeroot -us -uc

Dernière modification par seb95deMLO (15-04-2015 23:21:06)

#19 27-04-2015 19:08:47

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Bon aujourd’hui ou plutôt hier, je me suis lancé dans le rpm, bon quelle simplicité!
Bon en faite on doit se faire un répertoire rpm ou rpmbuild comme on veut, avec des sous dossiers, pour cela on va faire la commande suivante:

mkdir -p ~/rpmbuild/{BUILD,RPMS/{i586,noarch,x86_64},SOURCES,SRPMS,SPECS}


Bon pour faire un simple  retroportage il suffite de télécharger le rpm.source du paquet desiré:

wget http://mirror.internode.on.net/pub/mageia/distrib/cauldron/SRPMS/core/release/pbzip2-1.1.8-3.mga3.src.rpm


Ensuite, la deuxième étape consiste à télécharger les build requires, c'est à dire les paquets nécessaires au bon fonctionnement de la future application à packager:

urpmi --buildrequires pbzip2-1.1.8-3.mga3.src.rpm


Dernière étape, on build notre paquet :

rpmbuild --rebuild pbzip2-1.1.8-3.mga3.src.rpm


on aura un joli rpm!!!

Si maintenant on veut mettre a jour un paquet present dans le depot mais pas dans sa derniere version c'est presque pareil:
Dans un premier temps, on télécharges le rpm source :

wget http://mirror.internode.on.net/pub/mageia/distrib/2/SRPMS/core/release/playonlinux-4.0.15-2.mga2.src.rpm


Ensuite, la deuxième étape consiste à télécharger les build requires, c'est à dire les paquets nécessaires au bon fonctionnement de la future application à packager:

urpmi --buildrequires playonlinux-4.0.15-2.mga2.src.rpm


On extrait ensuite notre paquet source :

rpm -ivh playonlinux-4.0.15-2.mga2.src.rpm


Après cette opération, les fichiers sources se situent dans $HOME/rpmbuild/SOURCES et le fichier SPEC dans $HOME/rpmbuild/SPECS/, les fameux dossier qu'on a fait plus haut big_smile
Nous téléchargeons le nouveau .tar.gz dans le dossier SOURCES:

cd $HOME/rpmbuild/SOURCES


wget http://www.playonlinux.com/script_files/PlayOnLinux/4.1.9/PlayOnLinux_4.1.9.tar.gz


Ensuite, on édite le fichier SPEC:

nano $HOME/rpmbuild/SPECS/playonlinux.spec


On change le numéro de version avec celle du paquet nouvellement téléchargée:

Version: 4.1.9


Aussi, si l'on souhaite modifier le changelog en dessous en respectant la mise en forme :


* Mon Jul 22 2014 pseudo <pseudo> 4.1.9-1.mga4
+ Revision:
- New 4.1.9 version


On enregistre les modifications.
On lance la création du RPM et SRPM dans la console :

rpmbuild -ba $HOME/rpmbuild/SPECS/playonlinux.spec


Le RPM sera crée selon l'architecture du système :

/rpmbuild/RPMS/x86_64/


ou

/rpmbuild/RPMS/i586/


Et la source :

/rpmbuild/SRPMS/


Il ne sera pas possible de créer le RPM pour l'autre architecture, sauf depuis une machine virtuelle ou un autre ordinateur.
Vous ne reste qu'à installer et partager !

tout a été fait grace a ce tuto :
http://www.mageialinux-online.org/wiki/ … vec-mageia

sauf que j'ai fait ça avec les paquet mldonkey pour le retroportage(en faite simplement changer certaines options de compilation.
Et pour la seconde, c'est a dire mettre a jour le paquet deja present dans les depots mais dans une version obsolete, c'est avec playonlinux 4.2.6 -> 4.2.7

tres simple;)

Maintenant j'essaye de faire pareil sous debian avec les paquets debian;)

#20 22-05-2015 22:20:25

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Nouvelle version amont, faire un deb:
1/ Pour commencer, nous faisons un dossier avec le nom du paquet, par exemple pour playonlinux:

mkdir /home/sebastien/packaging/playonlinux

insérez le cas échéant le résultat de la commande ici


2/ On télécharge les sources debian du paquet:

apt-get source playonlinux

insérez le cas échéant le résultat de la commande ici


5/ On télécharge en ROOT, les paquets neccessaire pour constuire ce paquet:

apt-get build-dep playonlinux

insérez le cas échéant le résultat de la commande ici


6/ On se remet en simple utilisateur, puis on rentre dans le dossier des sources debian:

cd '/home/sebastien/packaging/playonlinux/playonlinux-4.2.6

insérez le cas échéant le résultat de la commande ici


7/ On va dans voir le fichier /debian/watch qui permet, si bien fait, de faire tout automatiquement avec la commande uscan. Les sources mises à jour seront automagiquement recherchées, téléchargées, et la commande uupdate sera exécutée.

uscan
 

insérez le cas échéant le résultat de la commande ici

Si la commande uscan télécharge les sources mises à jour mais n'exécute pas la commande uupdate, vous devriez corriger le fichier debian/watch pour avoir debian uupdate après l'URL.

/8 Normalement tout a été fait si le fichier watch est bien fait on a un joli dossier playonlinux-4.2.8, on rentre dedans

 cd /home/sebastien/packaging/mc/mc-4.8.13

insérez le cas échéant le résultat de la commande ici

, du coup reste plus qu'a fabriquer le deb:

debuild

insérez le cas échéant le résultat de la commande ici

Dernière modification par seb95deMLO (23-05-2015 00:17:22)

#21 23-05-2015 00:15:03

seb95deMLO
Invité

Re : [packaging] Fabrication de paquets pour/sous debian

Par exemple pour mc:

1/ Pour commencer, nous faisons un dossier avec le nom du paquet, par exemple pour packaging:

mkdir /home/sebastien/packaging/



puis un sous dossier du nom du paquet qu'on compte creer; dans notre cas c'est mc:

mkdir /home/sebastien/packaging/mc/



2/ On télécharge les sources debian du paquet:

apt-get source mc

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances      
Lecture des informations d'état... Fait
Note : la maintenance du paquet de « mc » est réalisée dans le système de suivi de versions « Git » à l'adresse :
git://anonscm.debian.org/collab-maint/mc.git
Nécessité de prendre 2 284 ko dans les sources.
Réception de : 1 http://ftp.fr.debian.org/debian/ jessie/main mc 3:4.8.13-3 (dsc) [2 229 B]
Réception de : 2 http://ftp.fr.debian.org/debian/ jessie/main mc 3:4.8.13-3 (tar) [2 231 kB]
Réception de : 3 http://ftp.fr.debian.org/debian/ jessie/main mc 3:4.8.13-3 (diff) [50,1 kB]
2 284 ko réceptionnés en 3s (754 ko/s)
dpkg-source: info: extraction de mc dans mc-4.8.13
dpkg-source: info: extraction de mc_4.8.13.orig.tar.xz
dpkg-source: info: extraction de mc_4.8.13-3.debian.tar.xz
dpkg-source: info: mise en place de 2966.patch
dpkg-source: info: mise en place de 3297.patch
dpkg-source: info: mise en place de 2987.patch
dpkg-source: info: mise en place de 3379.patch
dpkg-source: info: mise en place de dummy-zip-password.patch
dpkg-source: info: mise en place de uzip_528239.patch
dpkg-source: info: mise en place de alt_editor.patch
dpkg-source: info: mise en place de use_sensible-editor.patch
dpkg-source: info: mise en place de pot.patch
dpkg-source: info: mise en place de disable_internal_editor.patch
dpkg-source: info: mise en place de mcedit_auto_indent.patch
dpkg-source: info: mise en place de mcedit_group_undo.patch
dpkg-source: info: mise en place de ext_run-mailcap.patch
dpkg-source: info: mise en place de ext_use_default_editor.patch



3/ On télécharge en ROOT, les paquets neccessaire pour constuire ce paquet:

apt-get build-dep mc

Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances      
Lecture des informations d'état... Fait
Les NOUVEAUX paquets suivants seront installés :
  bison check comerr-dev e2fslibs-dev intltool libaspell-dev libbison-dev
  libgcrypt20-dev libgpg-error-dev libgpm-dev libssh2-1-dev
0 mis à jour, 11 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 2 550 ko dans les archives.
Après cette opération, 6 985 ko d'espace disque supplémentaires seront utilisés.
Souhaitez-vous continuer ? [O/n]
Réception de : 1 http://ftp.fr.debian.org/debian/ jessie/main libbison-dev amd64 2:3.0.2.dfsg-2 [426 kB]
Réception de : 2 http://ftp.fr.debian.org/debian/ jessie/main bison amd64 2:3.0.2.dfsg-2 [765 kB]
Réception de : 3 http://ftp.fr.debian.org/debian/ jessie/main check amd64 0.9.10-6.1 [127 kB]
Réception de : 4 http://ftp.fr.debian.org/debian/ jessie/main intltool all 0.50.2-2 [101 kB]
Réception de : 5 http://ftp.fr.debian.org/debian/ testing/main libaspell-dev amd64 0.60.7~20110707-3 [40,2 kB]
Réception de : 6 http://ftp.fr.debian.org/debian/ jessie/main libgpg-error-dev amd64 1.17-3 [75,1 kB]
Réception de : 7 http://ftp.fr.debian.org/debian/ jessie/main libgcrypt20-dev amd64 1.6.3-2 [438 kB]
Réception de : 8 http://ftp.fr.debian.org/debian/ jessie/main libgpm-dev amd64 1.20.4-6.1+b2 [36,6 kB]
Réception de : 9 http://ftp.fr.debian.org/debian/ testing/main libssh2-1-dev amd64 1.5.0-2+b1 [298 kB]
Réception de : 10 http://ftp.fr.debian.org/debian/ unstable/main comerr-dev amd64 2.1-1.42.13-1 [38,3 kB]
Réception de : 11 http://ftp.fr.debian.org/debian/ unstable/main e2fslibs-dev amd64 1.42.13-1 [204 kB]
2 550 ko réceptionnés en 4s (603 ko/s)
Récupération des rapports de bogue… Fait
Analyse des informations Trouvé/Corrigé… Fait
Sélection du paquet libbison-dev:amd64 précédemment désélectionné.
(Lecture de la base de données... 185461 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../libbison-dev_2%3a3.0.2.dfsg-2_amd64.deb ...
Dépaquetage de libbison-dev:amd64 (2:3.0.2.dfsg-2) ...
Sélection du paquet bison précédemment désélectionné.
Préparation du dépaquetage de .../bison_2%3a3.0.2.dfsg-2_amd64.deb ...
Dépaquetage de bison (2:3.0.2.dfsg-2) ...
Sélection du paquet check:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../check_0.9.10-6.1_amd64.deb ...
Dépaquetage de check:amd64 (0.9.10-6.1) ...
Sélection du paquet intltool précédemment désélectionné.
Préparation du dépaquetage de .../intltool_0.50.2-2_all.deb ...
Dépaquetage de intltool (0.50.2-2) ...
Sélection du paquet libaspell-dev:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../libaspell-dev_0.60.7~20110707-3_amd64.deb ...
Dépaquetage de libaspell-dev:amd64 (0.60.7~20110707-3) ...
Sélection du paquet libgpg-error-dev précédemment désélectionné.
Préparation du dépaquetage de .../libgpg-error-dev_1.17-3_amd64.deb ...
Dépaquetage de libgpg-error-dev (1.17-3) ...
Sélection du paquet libgcrypt20-dev précédemment désélectionné.
Préparation du dépaquetage de .../libgcrypt20-dev_1.6.3-2_amd64.deb ...
Dépaquetage de libgcrypt20-dev (1.6.3-2) ...
Sélection du paquet libgpm-dev:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../libgpm-dev_1.20.4-6.1+b2_amd64.deb ...
Dépaquetage de libgpm-dev:amd64 (1.20.4-6.1+b2) ...
Sélection du paquet libssh2-1-dev:amd64 précédemment désélectionné.
Préparation du dépaquetage de .../libssh2-1-dev_1.5.0-2+b1_amd64.deb ...
Dépaquetage de libssh2-1-dev:amd64 (1.5.0-2+b1) ...
Sélection du paquet comerr-dev précédemment désélectionné.
Préparation du dépaquetage de .../comerr-dev_2.1-1.42.13-1_amd64.deb ...
Dépaquetage de comerr-dev (2.1-1.42.13-1) ...
Sélection du paquet e2fslibs-dev précédemment désélectionné.
Préparation du dépaquetage de .../e2fslibs-dev_1.42.13-1_amd64.deb ...
Dépaquetage de e2fslibs-dev (1.42.13-1) ...
Traitement des actions différées (« triggers ») pour man-db (2.7.0.2-5) ...
Traitement des actions différées (« triggers ») pour install-info (5.2.0.dfsg.1-6) ...
Paramétrage de libbison-dev:amd64 (2:3.0.2.dfsg-2) ...
Paramétrage de bison (2:3.0.2.dfsg-2) ...
update-alternatives: utilisation de « /usr/bin/bison.yacc » pour fournir « /usr/bin/yacc » (yacc) en mode automatique
Paramétrage de check:amd64 (0.9.10-6.1) ...
Paramétrage de intltool (0.50.2-2) ...
Paramétrage de libaspell-dev:amd64 (0.60.7~20110707-3) ...
Paramétrage de libgpg-error-dev (1.17-3) ...
Paramétrage de libgcrypt20-dev (1.6.3-2) ...
Paramétrage de libgpm-dev:amd64 (1.20.4-6.1+b2) ...
Paramétrage de libssh2-1-dev:amd64 (1.5.0-2+b1) ...
Paramétrage de comerr-dev (2.1-1.42.13-1) ...
Paramétrage de e2fslibs-dev (1.42.13-1) ...



4/ On se remet en simple utilisateur, puis on rentre dans le dossier des sources debian:

cd /home/sebastien/packaging/mc/mc-4.8.13

sebastien@debiandelllinux ven. mai 22 23:37:[~/packaging/mc/mc-4.8.13]:$



5/ On va dans voir le fichier /debian/watch qui permet, si bien fait, de faire tout automatiquement avec la commande uscan. Les sources mises à jour seront automatiquement recherchées, téléchargées, et la commande uupdate sera exécutée.

uscan

mc: Newer version (4.8.14) available on remote site:
  http://www.midnight-commander.org/downloads/mc-4.8.14.tar.xz
  (local version is 4.8.13)
Successfully downloaded updated package mc-4.8.14.tar.xz
Successfully symlinked ../mc-4.8.14.tar.xz to ../mc_4.8.14.orig.tar.xz.


ls

mc-4.8.13      mc_4.8.13.orig.tar.xz  mc_4.8.14.orig.tar.xz
mc_4.8.13-3.debian.tar.xz    mc-4.8.14.tar.xz   mc_4.8.13-3.dsc



Si la commande uscan télécharge les sources mises à jour mais n'exécute pas la commande uupdate et c'est notre cas actuellement comme on peu le voir plus haut a l'aide de la commande ls..., vous devriez corriger le fichier debian/watch pour avoir debian uupdate après l'URL.

version=3
http://www.midnight-commander.org/downloads/mc-([\d\.]+)\.tar\.xz

http://ftp.osuosl.org/pub/midnightcommander/mc-([\d\.]+)\.tar\.xz



Donc comme on peut le constater, il manque bien apres une des deux adresses la commande debian uupdate, dans ca cas, j'ai opté pour rajouter sur la premiere adresse.

version=3
http://www.midnight-commander.org/downloads/mc-([\d\.]+)\.tar\.xz debian uupdate

http://ftp.osuosl.org/pub/midnightcommander/mc-([\d\.]+)\.tar\.xz



On vire les tar qu'on a eu juste avant (version 4.8.14) et on relance uscan:

uscan

mc: Newer version (4.8.14) available on remote site:
  http://www.midnight-commander.org/downloads/mc-4.8.14.tar.xz
  (local version is 4.8.13)
Successfully downloaded updated package mc-4.8.14.tar.xz
Successfully symlinked ../mc-4.8.14.tar.xz to ../mc_4.8.14.orig.tar.xz.
New Release will be 3:4.8.14-1.
-- Untarring the new sourcecode archive ../mc_4.8.14.orig.tar.xz
Unpacking the debian/ directory from version 3:4.8.13-3 worked fine.
Remember: Your current directory is the OLD sourcearchive!
Do a "cd ../mc-4.8.14" to see the new package



cette fois c'est bon, comme on peut le voir:

ls

mc-4.8.13      mc_4.8.13.orig.tar.xz  mc_4.8.14.orig.tar.xz
mc_4.8.13-3.debian.tar.xz  mc-4.8.14      mc-4.8.14.tar.xz
mc_4.8.13-3.dsc      mc-4.8.14.orig  



6/ Normalement tout a été fait si le fichier watch est bien fait, du coup reste plus qu'a fabriquer le deb,  on se place dans le dossier mc-4.8.14

cd /home/sebastien/packaging/mc/mc-4.8.14



et reste a builder pour faire un deb:

debuild

 dpkg-buildpackage -rfakeroot -D -us -uc
dpkg-buildpackage: paquet source mc
dpkg-buildpackage: version source 3:4.8.14-1
dpkg-buildpackage: distribution source UNRELEASED
dpkg-buildpackage: source changé par Sebastien CHAVAUX <sebastien@debiandelllinux.schavfr>
 dpkg-source --before-build mc-4.8.14
dpkg-buildpackage: architecture hôte amd64
dpkg-source: info: utilisation des options depuis mc-4.8.14/debian/source/options : --compression=xz --extend-diff-ignore=(^|/)po/[^/]+\.po$
 fakeroot debian/rules clean
dh clean --parallel --with autoreconf
   dh_testdir -O--parallel
   dh_auto_clean -O--parallel
   dh_autoreconf_clean -O--parallel
   dh_clean -O--parallel
 dpkg-source -b mc-4.8.14
dpkg-source: info: utilisation des options depuis mc-4.8.14/debian/source/options : --compression=xz --extend-diff-ignore=(^|/)po/[^/]+\.po$
dpkg-source: info: utilisation du format source « 3.0 (quilt) »
dpkg-source: info: construction de mc en utilisant le ./mc_4.8.14.orig.tar.xz existant
patching file lib/util.h
Reversed (or previously applied) patch detected!  Skipping patch.
3 out of 3 hunks ignored
patching file lib/utilunix.c
Reversed (or previously applied) patch detected!  Skipping patch.
3 out of 3 hunks ignored
patching file src/viewer/datasource.c
Reversed (or previously applied) patch detected!  Skipping patch.
3 out of 3 hunks ignored
patching file src/viewer/growbuf.c
Reversed (or previously applied) patch detected!  Skipping patch.
5 out of 5 hunks ignored
patching file src/viewer/internal.h
Reversed (or previously applied) patch detected!  Skipping patch.
2 out of 2 hunks ignored
patching file src/viewer/lib.c
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored
patching file src/viewer/mcviewer.c
Reversed (or previously applied) patch detected!  Skipping patch.
4 out of 4 hunks ignored
dpkg-source: info: le patch ne s'applique pas proprement (« fuzz »), ou est mal-formé
dpkg-source: info: si le correctif « 2966.patch » est correctement appliqué par quilt, utiliser « quilt refresh » pour le mettre à jour
dpkg-source: erreur: LC_ALL=C patch -t -F 0 -N -p1 -u -V never -E -b -B .pc/2966.patch/ --reject-file=- < mc-4.8.14.orig.pKotze/debian/patches/2966.patch a produit une erreur de sortie de type 1
dpkg-buildpackage: erreur: dpkg-source -b mc-4.8.14 a produit une erreur de sortie de type 2
debuild: fatal error at line 1376:
dpkg-buildpackage -rfakeroot -D -us -uc failed

 



Une belle erreur s'aplique a cause des patchs. Va falloir que je verifie les patchs avant de continuer...

Pied de page des forums