Installer les paquets nécessaires
sudo apt-get install pbuilder dh-make debhelper ubuntu-dev-tools
Créer l’environnement chroot
pbuilder-dist trusty amd64 create
ou pour i386 :
pbuilder-dist trusty i386 create
Cela crée un dossier pbuilder
dans le home. Dans celui-ci on trouve deux dossiers : trusty_result
et trusty-i386_result
où arriveront les compilations effectuées avec pbuilder-dist
.
Créer le paquet source .dsc
Exemples avec la version 3.0.3 de TeXoMaker.
Créer un dossier spécifique du genre packaging
.
Y Placer le dossier texomaker–3.0.3 contenant les sources de départ pour linux.
Makefiles
Pour faire des builds pour 32 et 64 bits, il est nécessaire de préparer deux Makefiles spécifiques.
Sur la machine 64 bits (a priori celle sur laquelle on travaille) :
qmake
Puis renommer le Makefile en make64.mk
, Enlever les premières lignes. Le fichier doit commencer par :
####### Compiler, tools and options
Créer un fichier make32.mk
vide.
Sur la machine 32 bits, faire pareil. Copier le contenu du Makefile créé, à partir de ####### Compiler, tools and options
, et le coller dans le fichier make32.mk
de la machine 64 bits. Créer enfin le fichier Makefile
contenant :
MAKEFILE = Makefile
ARCH :=$(shell getconf LONG_BIT)
ifeq ($(ARCH),32)
include make32.mk
else
include make64.mk
endif
Préparation
On est donc dans le dossier packaging
dans lequel on a le dossier original texomaker-3.0.3
.
cp texomaker-3.0.3 texomaker
tar czf texomaker-3.0.3.tar.gz texeomaker-3.0.3
cp texomaker-3.0.3.tar.gz texomaker_3.0.3.orig.tar.gz
Créer dans texomaker
le dossier debian
. En pratique on copiera le dossier exemple de ce répertoire à adapter.
À priori le seul fichier à adapter est le fichier changelog
: changer la version….
Création du fichier source .dsc
On se place dans le dossier texomaker
:
debuild -S -sa
Il faut avoir configuré les clés gpg correspondantes et les avoir synchronisées avec le serveur Ubuntu.
Essai de construction des paquets
On remonte d’un cran :
cd ..
Avant d’envoyer sur le ppa, il faut tester que la construction se passe bien pour les deux architectures :
pbuilder-dist trusty amd64 build texomaker_3.0.3-0ubuntu1.dsc
puis
pbuilder-dist trusty i386 build texomaker_3.0.3-0ubuntu1.dsc
Si tout se passe bien les paquets .deb
sont dans les dossiers result
dans le répertoire pbuilder
.
Envoi sur le ppa
Si tout s’est bien passé, on est prêt à uploader sur le ppa. Rappelons que l’on envoie sur le Launchpad uniquement les sources qui sont construites sur les serveurs de Canonical :
dput ppa:gwenael-m/freebyte texomaker_3.0.3-0ubuntu1_source.changes
Ajout du ppa sur une machine
sudo apt-add-repository ppa:gwenael-m/freebyte
En cas de problème de clé GPG :
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 920E8E730C666B93