Questions sur le rebuild d'un paquet depuis ses sources debian (après modif)
Le
Francois Lafont

Bonjour à tous,
En général, pour rebuilder un paquet Debian, je fais ça :
--
apt-get update
apt-get devscripts dpkg-dev
apt-get source toto
apt-get build-dep toto
cd le-rep-source-de-toto
# Là, je modifie éventuellement le paquet.
# Ensuite, j'édite le changlog avec dch pour
# incrémenter la version du paquet etc.
# Et enfin:
dpkg-buildpackage -us -uc -b
--
1. A priori, sur mes divers tentatives, ça marche plutôt
bien. J'ai bon jusque là ?
2. J'obtiens alors un paquet toto-xxx.deb (bon en fait
souvent on se retrouve avec plusieurs paquet mais moi,
c'est le paquet toto qui m'intéresse) qui possède un
numéro de version plus récent que le paquet toto qui
se trouve sur les dépôt officiels. Mais le paquet
que j'obtiens possède le même nom toto, c'est seulement,
le numéro de version qui change.
Y a-t-il un moyen pour que le paquet que je builde
ne s'appelle pas toto au final, mais s'appelle par
exemple toto-foo (où foo est un nom qui évoque ma
modif) ? Évidemment, on peut supposer alors que les
paquets toto et toto-foo sont incompatibles.
3. Imaginons maintenant que le paquet toto, ce ne soit
pas n'importe quel paquet mais que ce soit carrément
"linux-image-3.2.0-4-amd64". La méthode de rebuild
donnée en exemple ci-dessus-elle toujours valable ?
Ou bien pour un rebuild du noyau, c'est un cas
spécifique ?
4. Même question pour le "renommage". Lors du rebuild
de "linux-image-3.2.0-4-amd64" : y a-t-il un moyen de
changer le nom du paquet pour qu'il s'appelle par
exemple "linux-image-3.2.0-4-foo-amd64" et qu'il soit,
contrairement à précédemment, installable *en* *plus*
du paquet "linux-image-3.2.0-4-amd64" déjà installé
sur l'OS ? L'idée étant d'avoir dans Grub la possibilité
de lancer linux-image-3.2.0-4-amd64 ou bien
linux-image-3.2.0-4-foo-amd64.
Merci d'avance pour vos lumières.
--
François Lafont
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/l5habe$ipp$1@ger.gmane.org
En général, pour rebuilder un paquet Debian, je fais ça :
--
apt-get update
apt-get devscripts dpkg-dev
apt-get source toto
apt-get build-dep toto
cd le-rep-source-de-toto
# Là, je modifie éventuellement le paquet.
# Ensuite, j'édite le changlog avec dch pour
# incrémenter la version du paquet etc.
# Et enfin:
dpkg-buildpackage -us -uc -b
--
1. A priori, sur mes divers tentatives, ça marche plutôt
bien. J'ai bon jusque là ?
2. J'obtiens alors un paquet toto-xxx.deb (bon en fait
souvent on se retrouve avec plusieurs paquet mais moi,
c'est le paquet toto qui m'intéresse) qui possède un
numéro de version plus récent que le paquet toto qui
se trouve sur les dépôt officiels. Mais le paquet
que j'obtiens possède le même nom toto, c'est seulement,
le numéro de version qui change.
Y a-t-il un moyen pour que le paquet que je builde
ne s'appelle pas toto au final, mais s'appelle par
exemple toto-foo (où foo est un nom qui évoque ma
modif) ? Évidemment, on peut supposer alors que les
paquets toto et toto-foo sont incompatibles.
3. Imaginons maintenant que le paquet toto, ce ne soit
pas n'importe quel paquet mais que ce soit carrément
"linux-image-3.2.0-4-amd64". La méthode de rebuild
donnée en exemple ci-dessus-elle toujours valable ?
Ou bien pour un rebuild du noyau, c'est un cas
spécifique ?
4. Même question pour le "renommage". Lors du rebuild
de "linux-image-3.2.0-4-amd64" : y a-t-il un moyen de
changer le nom du paquet pour qu'il s'appelle par
exemple "linux-image-3.2.0-4-foo-amd64" et qu'il soit,
contrairement à précédemment, installable *en* *plus*
du paquet "linux-image-3.2.0-4-amd64" déjà installé
sur l'OS ? L'idée étant d'avoir dans Grub la possibilité
de lancer linux-image-3.2.0-4-amd64 ou bien
linux-image-3.2.0-4-foo-amd64.
Merci d'avance pour vos lumières.
--
François Lafont
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/l5habe$ipp$1@ger.gmane.org
Je pense que "fakeroot make deb-pkg" suffit
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
On 08/11/2013 01:13, Francois Lafont wrote:
Oui, c'est possible, mais je ne le recommanderais pas :)
Il faut alors modifier le fichier debian/control, changer le nom du
paquet binaire: "Package: toto" devient alors "Package: toto-foo".
Il faut aussi renommer les fichiers debian/toto.* où * vaut instal,
init, default, dirs, ...
Il faut aussi mettre à jour les conflits éventuels dans debian/control
"Conflict: toto" ainsi que les remplacement "Replace: toto".
Mais: du point de vue du gestionnaire de paquets, c'est alors un paquet
différent, pas une version particulière d'un paquet existant.
Pour cette raison, qui risque fort de compliquer les opérations de mises
à jour du système, je déconseille cette méthode.
Il vaut mieux, selon moi, intégrer foo dans le numéro de version plutôt
que le nom du paquet binaire.
Enfin, dpkg-buildpackage fonctionne, mais tu devrais toujours construire
tes paquets dans un environnement propre, avec pbuilder par exemple,
pour vérifier les dépendances de build, surtout si tu envisages de le
rendre disponible.
Pour le noyau, cette méthode fonctionne (a priori, à confirmer), mais tu
peux également utiliser make deb-pkg comme indiqué par "nb".
Même remarque que pour le point 1, mauvaise idée selon moi.
Cordialement,
JB
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Bosses plutôt en tant que user normal ... sauf lorsqu'il s'agit
d'installerdes paquets (sudo ...).
p.ex. :
$ sudo apt-get build-dep toto
$ dpkg-buildpackage -rfakeroot -us -uc -b
Tu pourrais utiliser le numéro de version pour ton paquet perso.
La commande dch est faite pour ça ...
$ dch -i
Guy
Le 08/11/2013 01:13, Francois Lafont a écrit :
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Bonjour tout le monde,
depuis la version 1.14.7 de dpkg, dpkg-buildpackage utilise automatiquement
fakeroot si nécessaire. Donc on peut omettre -rfakeroot.
Amicalement,
--
Charles Plessy
Tsurumi, Kanagawa, Japon
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
dch -i -D stable "Backport stable " par exemple
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Le tuto sur le BSP/Beginers est plutôt pas mal selon moi.
Je l'utilise régulièrement:
https://wiki.debian.org/BSP/BeginnersHOWTO
Joseph
2013/11/9 laurent Trinques
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Ça c'est une bonne nouvelle, ça va augmenter l'espérance de vie de mes
claviers ;-)
Merci pour l'info
Seb
--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/