GitPackaging » Historique » Version 21
Daniel Dehennin, 06/02/2012 11:25
Typos
1 | 6 | Daniel Dehennin | {{toc}} |
---|---|---|---|
2 | 6 | Daniel Dehennin | |
3 | 1 | Daniel Dehennin | h1. Gestion des paquets EOLE |
4 | 1 | Daniel Dehennin | |
5 | 17 | Daniel Dehennin | h2. Séparation du code et du packaging |
6 | 17 | Daniel Dehennin | |
7 | 17 | Daniel Dehennin | Cela facilite le travail de tout le monde, aussi bien des développeurs que des packageurs. |
8 | 17 | Daniel Dehennin | |
9 | 17 | Daniel Dehennin | De plus, il est ainsi plus facile de fournir le même code pour plusieurs distributions différentes, cela sera utile notamment lors du portage des applications sur "Precise Pangolin":http://fr.wikipedia.org/wiki/Liste_des_versions_d%27Ubuntu#Ubuntu_12.04_LTS_.28Precise_Pangolin.29 |
10 | 17 | Daniel Dehennin | |
11 | 17 | Daniel Dehennin | h3. Le développement dans @master@ |
12 | 17 | Daniel Dehennin | |
13 | 17 | Daniel Dehennin | Ainsi, les développeurs ne sont pas gênés par le packaging, en particulier les changements sur @debian/changelog@ à chaque compilation de paquet. |
14 | 17 | Daniel Dehennin | |
15 | 17 | Daniel Dehennin | |
16 | 17 | Daniel Dehennin | h3. Le packaging dans @dist/<VENDOR>/<DISTRIBUTION>/master@ |
17 | 17 | Daniel Dehennin | |
18 | 17 | Daniel Dehennin | Afin de faire un paquet, il faut intégrer la branche de développement souhaitée, par exemple: |
19 | 17 | Daniel Dehennin | |
20 | 20 | Daniel Dehennin | # On passe sur la branche de packaging : |
21 | 20 | Daniel Dehennin | <pre>buildd@build:~/src/eole-debsums(master)$ git checkout dist/ubuntu/lucid/master</pre> |
22 | 20 | Daniel Dehennin | # On intègre les modifications faites par les autres (et eolepack) : |
23 | 20 | Daniel Dehennin | <pre>buildd@build:~/src/eole-debsums(dist/ubuntu/lucid/master)$ git pull</pre> |
24 | 20 | Daniel Dehennin | # On intègre nos modifications : |
25 | 20 | Daniel Dehennin | <pre>buildd@build:~/src/eole-debsums(dist/ubuntu/lucid/master)$ git merge master</pre> |
26 | 20 | Daniel Dehennin | # On envoi sur le dépôt central pour eolepack : |
27 | 20 | Daniel Dehennin | <pre>buildd@build:~/src/eole-debsums(dist/ubuntu/lucid/master)$ git push</pre> |
28 | 21 | Daniel Dehennin | # On se replace sur la branche de développement pour nos futures modifications |
29 | 20 | Daniel Dehennin | <pre>buildd@build:~/src/eole-debsums(dist/ubuntu/lucid/master)$ git checkout master</pre> |
30 | 20 | Daniel Dehennin | # On lance eolepack qui utilise la branche de packaging par défaut : |
31 | 20 | Daniel Dehennin | <pre>buildd@build:~/src/eole-debsums(master)$ epack</pre> |
32 | 18 | Daniel Dehennin | |
33 | 18 | Daniel Dehennin | La branche par défaut dans eolepack est modifiée pour être @dist/ubuntu/lucid/master@. |
34 | 17 | Daniel Dehennin | |
35 | 2 | Daniel Dehennin | h2. Environnement de compilation personnel |
36 | 2 | Daniel Dehennin | |
37 | 2 | Daniel Dehennin | Il existe plusieurs outils afin de mettre en place des environnements de compilation personnels. |
38 | 15 | Daniel Dehennin | |
39 | 2 | Daniel Dehennin | L’outil utilisé dans le projet "Debian":http://www.debian.org se nomme "sbuild":http://wiki.debian.org/sbuild. |
40 | 1 | Daniel Dehennin | |
41 | 17 | Daniel Dehennin | Ce système peut se reposer sur un système de snapshot : on installe un système de base, propre, et la compilation se fait dans un snapshot temporaire de ce système. |
42 | 2 | Daniel Dehennin | |
43 | 1 | Daniel Dehennin | Cela permet de lancer des compilations en parallèles au besoin. |
44 | 2 | Daniel Dehennin | |
45 | 17 | Daniel Dehennin | Deux méthodes sont utilisables pour la mise en place des snapshots : |
46 | 14 | Daniel Dehennin | |
47 | 14 | Daniel Dehennin | * [[eole:GitPackagingSbuildLVM|avec LVM]] |
48 | 1 | Daniel Dehennin | * [[eole:GitPackagingSbuildBtrfs|avec le système de fichier btrfs]] |
49 | 14 | Daniel Dehennin | |
50 | 14 | Daniel Dehennin | |
51 | 17 | Daniel Dehennin | Lorsque les schroots sont en place et sbuild configuré, la compilation d’un paquet peut se dérouler comme suit : |
52 | 14 | Daniel Dehennin | |
53 | 14 | Daniel Dehennin | <pre> |
54 | 3 | Daniel Dehennin | buildd@build:~/src$ sudo apt-get install git-core git-buildpackage fakeroot build-essential debhelper cdbs |
55 | 16 | Daniel Dehennin | buildd@build:~/src$ git clone http://dev-eole.ac-dijon.fr/git/eole-debsums |
56 | 16 | Daniel Dehennin | buildd@build:~/src$ cd eole-debsums |
57 | 16 | Daniel Dehennin | buildd@build:~/src/eole-debsums$ git checkout -b dist/ubuntu/lucid/build origin/dist/ubuntu/lucid/master |
58 | 16 | Daniel Dehennin | buildd@build:~/src/eole-debsums$ git buildpackage --git-builder="sbuild -A -d eole-2.3-dev" --git-cleaner=/bin/true |
59 | 16 | Daniel Dehennin | </pre> |
60 | 16 | Daniel Dehennin | |
61 | 16 | Daniel Dehennin | Ou si on souhaite minimiser les paquets à installer: |
62 | 16 | Daniel Dehennin | |
63 | 16 | Daniel Dehennin | <pre> |
64 | 16 | Daniel Dehennin | buildd@build:~/src$ sudo apt-get install git-core git-buildpackage dpkg-dev |
65 | 16 | Daniel Dehennin | buildd@build:~/src$ git clone http://dev-eole.ac-dijon.fr/git/eole-debsums |
66 | 16 | Daniel Dehennin | buildd@build:~/src$ cd eole-debsums |
67 | 16 | Daniel Dehennin | buildd@build:~/src/eole-debsums$ git checkout -b dist/ubuntu/lucid/build origin/dist/ubuntu/lucid/master |
68 | 16 | Daniel Dehennin | buildd@build:~/src/eole-debsums$ git buildpackage --git-builder="dpkg-buildpackage -nc -d -S" --git-cleaner=/bin/true |
69 | 16 | Daniel Dehennin | buildd@build:~/src/eole-debsums$ sbuild -A -d eole-2.3-dev ../eole-debsums_20111207-eole1.dsc |
70 | 16 | Daniel Dehennin | </pre> |
71 | 16 | Daniel Dehennin | |
72 | 13 | Daniel Dehennin | h1. Webographie |
73 | 7 | Daniel Dehennin | |
74 | 11 | Daniel Dehennin | * "PackagingGuide/Python":https://wiki.ubuntu.com/PackagingGuide/Python |