19
19
Final released versions.
21
21
<https://launchpad.net/~bzr-beta-ppa/+archive>
22
Releases and release candidates.
22
Releases and release candidates.
24
24
<https://launchpad.net/~bzr-nightly-ppa/+archive>
25
25
Automatic nightly builds from trunk.
38
38
versions it is also copied to the main PPA.
40
40
The packaging information is kept in branches of bzr on Launchpad, named
42
42
<https://code.launchpad.net/~bzr/bzr/packaging-hardy>.
44
44
<lp:~bzr/bzr/packaging-hardy>. These branches are intended to be used
50
* You must have a Launchpad account and be a member of the teams
50
* You must have a Launchpad account and be a member of the teams
51
51
that own these PPAs (``~bzr``, ``~bzr-beta-ppa``).
53
53
* You must have a GPG key registered to your Launchpad account.
107
107
release packages is as simple as::
109
109
cd ~/dev/bzr/releases/packaging
110
export VERSION="1.17~rc1-1~bazaar1"
112
export UBUNTU_RELEASES="dapper hardy intrepid jaunty karmic"
110
ln ~/dev/bzr/releases/bzr-1.6.tar.gz ./bzr_1.6.orig.tar.gz
111
export UBUNTU_RELEASES="dapper feisty gutsy hardy intrepid"
113
112
~/dev/bzr/bzr.dev/tools/packaging/update-packaging-branches.sh
114
~/dev/bzr/bzr.dev/tools/packaging/update-changelogs.sh
115
~/dev/bzr/bzr.dev/tools/packaging/update-control.sh 1.16 1.17 1.18
116
~/dev/bzr/bzr.dev/tools/packaging/build-packages.sh
117
dput bzr-beta-ppa ${PACKAGE}_$VERSION*.changes
119
Rinse and repeat for all the plugins by changing VERSION and PACKAGE.
113
~/dev/bzr/bzr.dev/tools/packaging/update-changelogs.sh 1.6~beta3-1~bazaar1
114
~/dev/bzr/bzr.dev/tools/packaging/build-packages
115
dput bzr-beta-ppa bzr_1.6~beta3-1~bazaar1*.changes
125
121
release. Such as ``~/dev/bzr/releases/packaging/hardy``. In each of these
126
122
branches, you will produce the package for the release.
128
The scripts will also create the branches and produce packages for
129
bzrtools and bzr-svn.
131
124
#. Decide on the final version number. It should be of this form::
133
bzr-1.17~rc1-1~bazaar1~hardy1
126
bzr-1.6~beta3-1~bazaar1~hardy1
135
128
**Note:** There are three hyphen-separated parts: the *package name*,
136
129
the *upstream version*, and the *packaging version*.
138
131
**Caution:** Upstream betas or release candidates must insert a tilde
139
132
to make them sort before the final release, like this:
140
``bzr-1.17~rc1-1~bazaar1~hardy1``.
133
``bzr-1.6~beta3-1~bazaar1~hardy1``.
142
135
Final releases will use a release string of the form:
143
``bzr-1.17-1~bazaar1~hardy1``
145
Set this base of this up as a usable environment variable::
147
export VERSION="1.17~rc1-1~bazaar1"
136
``bzr-1.6-1~bazaar1~hardy1``
149
138
#. Export the distroreleases that you will be packaging for::
151
export UBUNTU_RELEASES="dapper hardy intrepid jaunty karmic"
153
#. Export the program you are packaging::
140
export UBUNTU_RELEASES="dapper feisty gutsy hardy intrepid jaunty"
157
142
#. Checkout (or update) the packaging branch for each supported release::
171
156
For bzrtools this is typically::
173
Build-Depends-Indep: bzr (>= 1.17~), rsync
174
Depends: ${python:Depends}, bzr (>= 1.17~), bzr (<< 1.18~), patch
176
There is a helper script which will update the control file and commit it
177
for all of your ``$UBUNTU_RELEASES``. It is available as::
179
tools/packaging/update-control.sh
181
You must supply the versions as arguments as follows
182
OLD_VERSION CURRENT_VERSION NEXT_VERSION, such as::
184
tools/packaging/update-control.sh 1.16 1.17 1.18
158
Build-Depends-Indep: bzr (>= 1.6~), rsync
159
Depends: ${python:Depends}, bzr (>= 1.6~), bzr (<< 1.7~), patch
186
161
#. Make a new ``debian/changelog`` entry for the new release,
187
162
either by using ``dch`` or just editing the file::
189
dch -v '1.17~rc1-1~bazaar1~hardy1' -D hardy
164
dch -v '1.6~beta3-1~bazaar1~hardy1' -D hardy
191
166
dch will default to the distro you're working in and this isn't checked
192
against the version number (which is just our convention), so make sure
167
against the version number (which is just our convention), so make sure
195
170
Make sure you have the correct email address for yourself (you may need
196
171
export DEBEMAIL=`bzr whoami` if it isn't already set), version number, and
197
172
distribution. It should look something like this::
199
bzr (1.17~rc1-1~bazaar1~hardy1) hardy; urgency=low
174
bzr (1.6~beta3-1~bazaar1~hardy1) hardy; urgency=low
201
176
* New upstream release.
203
178
-- John Sample <sample@example.com> Mon, 31 Mar 2008 12:36:27 +1100
205
180
If you need to upload the package again to fix a problem, normally you
211
186
You will also want to commit these changes into the packaging branch.
213
There is a helper script which will build all the packages
188
There is a helper script which will update the changelog and commit it
214
189
for all of your ``$UBUNTU_RELEASES``. It is available as::
216
191
tools/packaging/update-changelogs.sh
193
You must supply the release string, such as::
195
tools/packaging/update-changelogs.sh 1.6~beta3-1~bazaar1
197
It will automatically append the distro numbering on the end.
218
199
#. Build the source packages::
220
201
cd packaging-$DISTRO; bzr builddeb -S
227
208
where ``$UID`` is the gpg key you want to use to sign the changes.
229
There is a helper script which will build the package
230
for all of your ``$UBUNTU_RELEASES``. It is available as::
232
tools/packaging/build-packages.sh
234
210
#. Upload into the beta PPA for each release::
236
dput bzr-beta-ppa bzr*1.17-1*.changes
212
dput bzr-beta-ppa bzr_1.6-1*.changes
238
214
#. For final release versions, also copy it into the ``~bzr`` PPA::
240
dput bzr-ppa ../bzr_1.17-1\~bazaar1\~hardy1\_source.changes
216
dput bzr-ppa ../bzr_1.6-1\~bazaar1\~hardy1\_source.changes
242
218
Alternatively, you can use Launchpad's "copy" feature to copy the
243
219
packages between repositories.
251
227
Packaging bzr-svn
252
228
~~~~~~~~~~~~~~~~~
254
bzr-svn uses a packaging branch that contains both the source
230
bzr-svn uses a packaging branch that contains both the source
255
231
(including any changes against upstream) and the ``debian/`` directory.
257
233
To build bzr-svn:
259
235
#. Get a checkout of ``lp:~bzr/bzr-svn/hardy-ppa/``
261
#. Merge from ``http://bzr.debian.org/pkg-bazaar/bzr-svn/unstable/``
237
#. Merge from ``http://bzr.debian.org/pkg-bazaar/bzr-svn/experimental/``
263
239
This should bring in both upstream and packaging changes for the new
264
240
release, and it's updated as part of the bzr-svn release process.
266
It's quite possible you will need to resolve some conflicts.
268
242
#. Run ``dch -v 0.4.15-1~bazaar1-hardy1 -D hardy`` or similar
270
244
#. Run ``bzr builddeb --source``