
------------------------------------------------------

 README.source - for ubuntu network-manager
 Author: Mathieu Trudel-Lapierre <mathieu-tl@ubuntu.com>

------------------------------------------------------

Content:

  I. Packaging overview
  II. Upstream (orig.tar.gz)
  III. Efficient Upstream orig.tar.gz production
  IV. Patching

------

I. Packaging overview

  + Obtaining latest packaging:
    bzr branch lp:~network-manager/network-manager/ubuntu

  + this gives you a debian/ only bzr branch

  + to suggested way to build is using bzr-builddeb; for that
    1. put the orig.tar.gz matching your debian/changelog in --orig-dir
       of bzr-builddeb (default: ..)
    2. run: bzr bd --merge --dont-purge --builder='debuild -b'
    3. this gives you a build tree and the results in --build-dir
       and --result-dir


II. Upstream (orig.tar.gz)

The package provides means to easily grab the _current_ and the latest
upstream snapshot of NetworkManager.

./debian/rules gets the pristine upstream snapshot for you then packs
things up in a tarball orig.tar.gz.

The nested tarball is packed using _gz_.

Examples on how to get orig.tar.gz for snapshots:

  + get latest upstream snapshot:
    ./debian/rules get-orig-source

  + get current upstream snapshot (by changelog):
    ./debian/rules get-current-source


III. Efficient Upstream orig.tar.gz production

The packaging provides a feature to speed up the orig.tar.gz production by
keeping a local mirror of the NetworkManager checkouts; this reduces the
network overhead considerably and allows you to regularly create tarballs
rather quickly. To do that, append LOCAL_BRANCH=/local/nm/checkout
to your debian/rules invocation, e.g.

  + produce latest upstream snapshot:
    ./debian/rules get-orig-source LOCAL_BRANCH=~/NetworkManager/

  + produce current upstream snapshot (by changelog):
    ./debian/rules get-current-source LOCAL_BRANCH=~/NetworkManager/


V. Patching

We use quilt for the sake of efficiency to code and update patches.

if you want to create a patch or write a patch, you can quickly get
ready by first getting the orig.tar.gz, then using bzr-builddeb like
so:

 bzr bd-do

Make sure your QUILT_PATCHES is set appropriately:

 QUILT_PATCHES=debian/patches

and start working on quilt patches as usual, e.g.

 quilt push -a
 quilt applied
 quilt pop
 quilt refresh
 ...


