[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Rebuild process



> I just received my first bug report, and I would appreciate it if someone
> could list the steps I need to take (doesn't seem to be documented anywhere).
> Obviously the first step is to reply to the bug-report with "-done", but then

Erm, no -- see below.

> what? I fix the bug (which was due to my superior packaging
> skills). Do I just
> do dh_make? Will that automagically increase the build number?
> Basically, what
> steps go between responding to the bug report and uploading the
> fixed package?
> 
> One problem I have found is the overlap of commands, which causes at least me
> some confusion as to what program I am supposed to be using (ie deb-make and
> dh_make).

The first step is to look at your package.  I presume that you have
the original sources, your diffs etc. in an organised manner which
allows you to build the current .deb and other files required for
uploading yourself?  If not, then I recommend the following.  (I
assume you are packaging foobar, upstream version 1.1, Debian revision
3, and you are preparing to release version 4.)  Many more details can
be found in the various new maintainer guides at
http://www.debian.org/devel (I think that's it).

(1) Create the directory /usr/local/src/Packages/foobar.  (You may
    well need to be root to do this, but then you can chown the
    Packages directory to yourself.  None of the rest needs to be done
    as root.)

(2) In this directory, place foobar_1.1.orig.tar.gz and
    foobar_1.1-3.diff.gz.  (foobar_1.1.orig.tar.gz should untar into
    the directory foobar-1.1.orig.)

(3) Untar the archive into the directory foobar-1.1.orig using the
    command: tar zxpvf foobar_1.1.orig.tar.gz
    then rename the directory with: mv foobar-1.1.orig foobar-1.1

(4) Apply the diffs:
    cd foobar-1.1
    zcat ../foobar_1.1-3.diff.gz | patch -p1

Now check that it's all working by running the command:
dpkg-buildpackage -rfakeroot
from within the foobar-1.1 directory.  (You have got fakeroot, don't
you?  If not, then get it!!)

Once you've got this far, you can then start patching and releasing
fixed code, as follows:

(1) Fix the bug in the foobar-1.1 directory.

(2) Describe your change in a new entry at the top of the
    debian/changelog file.  Make sure it's your email address at the
    end of the new changelog!  You can either do this by running the
    debchange (aka: dch) command, or by using the
    debian-changelog-mode of emacs.  (You may need to change /lib/ to
    /share/ in /etc/emacs/site-start.d/50dpkg-dev.el for this to work
    -- it's buggy.)  Use a comment like: closes: Bug #nnnnn in the
    changelog, so that people know why you've closed it.

(3) Run dpkg-buildpackage -rfakeroot again -- this should create
    foobar_1.1-4_i386.deb and foobar_1.1-4.{diff.gz,dsc,changes} in
    the parent directory (assuming you are running on an Intel x86
    processor).

(4) cd .. and then run: lintian foobar_1.1-4.changes.  If there are
    any errors (shown with E: and non-zero exit code; don't worry
    about E: newer-standards-version if it comes up), go back to step
    (1) again.

(5) Run the dupload command: dupload --to master foobar_1.1-4.changes
    (replacing master as appropriate).

(6) When you have received the acknowledgement that the uploaded
    package has been installed into the archive, you may close the bug
    by mailing <nnn>-done@bugs.debian.org, but not before.

[NB: hopefully, the bug closing will be done automatically by the
package installation program on master (dinstall) in the near future
if a closes: #### type comment is placed in the changelog.  I am
working on that one.]

HTH,

   Julian

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

            Julian Gilbey             Email: J.D.Gilbey@qmw.ac.uk
       Dept of Mathematical Sciences, Queen Mary & Westfield College,
                  Mile End Road, London E1 4NS, ENGLAND
      -*- Finger jdg@goedel.maths.qmw.ac.uk for my PGP public key. -*-


Reply to: