Projet

Général

Profil

EoleDebianPackaging » Historique » Version 3

Daniel Dehennin, 28/06/2012 17:42
Ajout d’un debian/copyright minimal

1 1 Daniel Dehennin
{{toc}}
2 1 Daniel Dehennin
3 1 Daniel Dehennin
h1. Introduction
4 1 Daniel Dehennin
5 1 Daniel Dehennin
Nous ne décrirons pas ici comment créer un paquet debian, mais
6 1 Daniel Dehennin
quelques règles utiles lors de la création d’un paquet debian pour
7 1 Daniel Dehennin
EOLE.
8 1 Daniel Dehennin
9 1 Daniel Dehennin
La principale cible de cette documentation est le packaging pour Ubuntu Precise Pangolin, mais des informations sont données pour Ubuntu Lucid Lynx lorsque cela est pertinant
10 1 Daniel Dehennin
11 1 Daniel Dehennin
h1. Considérations minimales pour un paquet Debian
12 1 Daniel Dehennin
13 1 Daniel Dehennin
h2. debian/control
14 1 Daniel Dehennin
15 1 Daniel Dehennin
h3. Source
16 1 Daniel Dehennin
17 1 Daniel Dehennin
h4. Version de packaging
18 1 Daniel Dehennin
19 1 Daniel Dehennin
https://launchpad.net/debian-policy
20 1 Daniel Dehennin
21 1 Daniel Dehennin
* Lucid : 3.8.4
22 1 Daniel Dehennin
* Precise : 3.9.3
23 1 Daniel Dehennin
24 1 Daniel Dehennin
h4. Dépendance de build minimale
25 1 Daniel Dehennin
26 1 Daniel Dehennin
h5. debhelper
27 1 Daniel Dehennin
28 1 Daniel Dehennin
https://launchpad.net/debhelper
29 1 Daniel Dehennin
30 1 Daniel Dehennin
* Lucid : 7.4
31 1 Daniel Dehennin
* Precise : 9
32 1 Daniel Dehennin
33 1 Daniel Dehennin
h4. URLs
34 1 Daniel Dehennin
35 1 Daniel Dehennin
* @Homepage: http://eole.orion.education.fr/diff/@
36 1 Daniel Dehennin
* @Vcs-Git: http://dev-eole.ac-dijon.fr/git/<PROJECT>@
37 1 Daniel Dehennin
* @Vcs-Browser: http://dev-eole.ac-dijon.fr/projects/<PROJECT>/repository@
38 1 Daniel Dehennin
39 1 Daniel Dehennin
40 1 Daniel Dehennin
h3. Binaire
41 1 Daniel Dehennin
42 1 Daniel Dehennin
h4. Architecture
43 1 Daniel Dehennin
44 1 Daniel Dehennin
* @all@ : Si un paquet ne contient aucun binaire compilé
45 1 Daniel Dehennin
46 1 Daniel Dehennin
* @any@ : Si un paquet contient au moins un fichier dépendant de l’architecture
47 1 Daniel Dehennin
48 1 Daniel Dehennin
49 1 Daniel Dehennin
h4. Dépendance minimal
50 1 Daniel Dehennin
51 1 Daniel Dehennin
Toujours ajouter @${misc:Depends}@ pour les outils debhelper.
52 1 Daniel Dehennin
53 1 Daniel Dehennin
54 1 Daniel Dehennin
h2. debian/compat
55 1 Daniel Dehennin
56 1 Daniel Dehennin
* Lucid : 7
57 1 Daniel Dehennin
58 1 Daniel Dehennin
* Precise : 9
59 1 Daniel Dehennin
60 1 Daniel Dehennin
61 1 Daniel Dehennin
h2. debian/rules
62 1 Daniel Dehennin
63 1 Daniel Dehennin
Depuis la version 7 des outils debhelper, le fichier debian/rules peut
64 1 Daniel Dehennin
être réduit, dans sa plus simple expression, à moins d’une dixaine de
65 1 Daniel Dehennin
lignes :
66 1 Daniel Dehennin
67 1 Daniel Dehennin
<pre>
68 1 Daniel Dehennin
#!/usr/bin/make -f
69 1 Daniel Dehennin
# -*- makefile -*-
70 1 Daniel Dehennin
71 1 Daniel Dehennin
# Uncomment this to turn on verbose mode.
72 1 Daniel Dehennin
# export DH_VERBOSE=1
73 1 Daniel Dehennin
74 1 Daniel Dehennin
%:
75 1 Daniel Dehennin
        dh $@
76 1 Daniel Dehennin
</pre>
77 1 Daniel Dehennin
78 1 Daniel Dehennin
La commande dh appel tour à tour tous les debhelper, il n’est donc
79 1 Daniel Dehennin
plus nécessaire de les lister dans le debian/rules.
80 1 Daniel Dehennin
81 3 Daniel Dehennin
h2. debian/copyright
82 3 Daniel Dehennin
83 3 Daniel Dehennin
h3. Pour precise
84 3 Daniel Dehennin
85 3 Daniel Dehennin
<pre>
86 3 Daniel Dehennin
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
87 3 Daniel Dehennin
Source: http://dev-eole.ac-dijon.fr/projects/<PROJET>
88 3 Daniel Dehennin
89 3 Daniel Dehennin
Files: *
90 3 Daniel Dehennin
Copyright: <COPYRIGHT YEARS> <COPYRIGHT HOLDER>
91 3 Daniel Dehennin
License: GPL-3+
92 3 Daniel Dehennin
93 3 Daniel Dehennin
License: GPL-3+
94 3 Daniel Dehennin
 This program is free software: you can redistribute it and/or modify
95 3 Daniel Dehennin
 it under the terms of the GNU General Public License as published by
96 3 Daniel Dehennin
 the Free Software Foundation, either version 3 of the License, or
97 3 Daniel Dehennin
 (at your option) any later version.
98 3 Daniel Dehennin
 .
99 3 Daniel Dehennin
 This package is distributed in the hope that it will be useful,
100 3 Daniel Dehennin
 but WITHOUT ANY WARRANTY; without even the implied warranty of
101 3 Daniel Dehennin
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
102 3 Daniel Dehennin
 GNU General Public License for more details.
103 3 Daniel Dehennin
 .
104 3 Daniel Dehennin
 You should have received a copy of the GNU General Public License
105 3 Daniel Dehennin
 along with this program. If not, see <http://www.gnu.org/licenses/>.
106 3 Daniel Dehennin
 .
107 3 Daniel Dehennin
 On Debian systems, the complete text of the GNU General
108 3 Daniel Dehennin
 Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
109 3 Daniel Dehennin
</pre>
110 3 Daniel Dehennin
111 1 Daniel Dehennin
112 1 Daniel Dehennin
h1. Paquet python
113 1 Daniel Dehennin
114 1 Daniel Dehennin
h2. debian/control
115 1 Daniel Dehennin
116 1 Daniel Dehennin
h3. Source
117 1 Daniel Dehennin
118 1 Daniel Dehennin
Ajout de @python-all-dev@ en @Build-Depends@ :
119 1 Daniel Dehennin
120 1 Daniel Dehennin
* Lucid : >= 2.6.5-0ubuntu1
121 1 Daniel Dehennin
122 1 Daniel Dehennin
* Precise : >= 2.6.6-3
123 1 Daniel Dehennin
124 1 Daniel Dehennin
h3. Binaire
125 1 Daniel Dehennin
126 1 Daniel Dehennin
Ajout de @${python:Depends}@ en @Depends@
127 1 Daniel Dehennin
128 1 Daniel Dehennin
129 1 Daniel Dehennin
h2. debian/rules
130 1 Daniel Dehennin
131 1 Daniel Dehennin
h3. Precise
132 1 Daniel Dehennin
133 1 Daniel Dehennin
Ajouter le module @dh_python2@ à la séquence @debhelper@ pour du code
134 1 Daniel Dehennin
python2 et @dh_python3@ pour du code python3 :
135 1 Daniel Dehennin
136 1 Daniel Dehennin
<pre>
137 1 Daniel Dehennin
#!/usr/bin/make -f
138 1 Daniel Dehennin
# -*- makefile -*-
139 1 Daniel Dehennin
140 1 Daniel Dehennin
# Uncomment this to turn on verbose mode.
141 1 Daniel Dehennin
# export DH_VERBOSE=1
142 1 Daniel Dehennin
143 1 Daniel Dehennin
%:
144 2 Daniel Dehennin
        dh $@ --with python2
145 1 Daniel Dehennin
</pre>
146 1 Daniel Dehennin
147 1 Daniel Dehennin
148 1 Daniel Dehennin
h3. Lucid
149 1 Daniel Dehennin
150 1 Daniel Dehennin
h4. Distribution d’un module zephir-client
151 1 Daniel Dehennin
152 1 Daniel Dehennin
Ajouter le module @python-central@ à la séquence de @build@ et forcer
153 1 Daniel Dehennin
l’utilisation de @dh_pycentral@ à cause de @twisted@ :
154 1 Daniel Dehennin
155 1 Daniel Dehennin
<pre>
156 1 Daniel Dehennin
#!/usr/bin/make -f
157 1 Daniel Dehennin
# -*- makefile -*-
158 1 Daniel Dehennin
159 1 Daniel Dehennin
# Uncomment this to turn on verbose mode.
160 1 Daniel Dehennin
# export DH_VERBOSE=1
161 1 Daniel Dehennin
162 1 Daniel Dehennin
%:
163 1 Daniel Dehennin
        dh $@
164 1 Daniel Dehennin
165 1 Daniel Dehennin
# Force python-central for use with twisted
166 1 Daniel Dehennin
build:
167 1 Daniel Dehennin
        dh build --with python-central
168 1 Daniel Dehennin
169 1 Daniel Dehennin
override_dh_pysupport:
170 1 Daniel Dehennin
        dh_pycentral
171 1 Daniel Dehennin
172 1 Daniel Dehennin
173 1 Daniel Dehennin
.PHONY: build override_dh_pysupport
174 1 Daniel Dehennin
</pre>
175 1 Daniel Dehennin
176 1 Daniel Dehennin
h4. Pas de code twisted
177 1 Daniel Dehennin
178 1 Daniel Dehennin
Ajouter le module python-support à la séquence debhelper :
179 1 Daniel Dehennin
180 1 Daniel Dehennin
<pre>
181 1 Daniel Dehennin
#!/usr/bin/make -f
182 1 Daniel Dehennin
# -*- makefile -*-
183 1 Daniel Dehennin
184 1 Daniel Dehennin
# Uncomment this to turn on verbose mode.
185 1 Daniel Dehennin
# export DH_VERBOSE=1
186 1 Daniel Dehennin
187 1 Daniel Dehennin
%:
188 2 Daniel Dehennin
        dh $@ --with python-support
189 1 Daniel Dehennin
</pre>