Lintian overrides
=================

The RPATH check in lintian needs to be overridden, since the path
/usr/share/perl6/site/lib will be used by Rakudo packages that need to
install NativeCall libraries.

Source managed with git-buildpackage
====================================

We will use similar tools as described in the Perl Git Guide[1].

Today, I only use git-buildpackage, but I hope the Perl6 team will
adapt and provide similar tools to those used by the Perl5 group.

Upstream sources are kept (in plain, uncompressed form) in the
upstream/master branch. The data needed to regenerate original source
tarballs from the upstream branch are kept with the help of the
pristine-tar(1) tool in the pristine-tar branch. Upstream sources are
merged with Debian-specific changes in the master branch, which is the
usual place to work in.

The “upstream/master” branch will become “upstream” in the near future
to comply with common usage.

The debian/changelog is managed with “gbp dch”.

Minimal “everything is working fine” steps to provide a new version
-------------------------------------------------------------------

* Clone the repository.  If it is already cloned, make sure to have the
  “upstream/master” and “pristine-tar” branches

    $ gbp clone --all --pristine-tar \
          git+ssh://developername@scm.alioth.debian.org//git/pkg-rakudo/pkg-moarvm.git \
	  moarvm

* Integrate the new upstream tarball

    (master) $ gbp import-orig --uscan
    (master) $ git merge --no-edit upstream/<VERSION>

* Update the debian/patches to make them apply without fuzzy

    (master) $ gbp pq rebase
    (master) $ gbp pq export
    (master) $ git add debian/patches/
    (master) $ git commit -m "Update patches"

* Optional: Prepare the debian/changelog for UNRELEASED package.
  This can be done from time to time before the release and should be
  ignored by gbp-dch

    (master) $ gbp dch -a -S
    (master) $ git add debian/changelog
    (master) $ git commit -m "$(echo -e 'Update debian/changelog\n\nGbp-Dch: Ignore')"

* Build the package

    (master) $ gbp buildpackage

* Make sure lintian is happy

    (master) $ lintian -i -I -E --pedantic ../moarvm*.changes

* Release the debian/changelog

    (master) $ gbp dch -a -R
    (master) $ git add debian/changelog
    (master) $ git commit -m "Release debian/changelog"

* Create the Debian release tag

    (master) $ gbp buildpackage --git-tag-only

* Push git object

    (master) $ git push origin master upstream/master pristin-tar upstream/<VERSION> debian/<VERSION>-1

Footnotes:
[1]  https://pkg-perl.alioth.debian.org/git.html

 -- Daniel Dehennin <daniel.dehennin@baby-gnu.org>, Sat, 20 Jun 2015 09:04:37 +0200
