NQP - Not Quite Perl

NQP is a lightweight Perl 6-like environment for virtual machines. Rakudo Perl6 is implemented using NQP; it is thus a way to bootstrap an environment which is *almost* Perl 6 in order to make it easier to implement Perl 6 itself.

sudo aptitude install git-buildpackage

Cloning the Debian NQP repository

git clone git+ssh://<debian-username>@scm.alioth.debian.org/git/pkg-rakudo/nqp.git
mv nqp pkg-nqp

where <debian-username is your Debian username on the Alioth server.

Building NQP by hand

It is best to build NQP package using git-buildpackage, however, it is sometimes necessary to build things by hand. Here are some notes explaining this process:

sudo aptitude install moarvm

Or, if you've built this from source:

sudo dpkg -i moarvm_YYYY.MM-1_amd64.deb

wget http://rakudo.org/downloads/nqp/nqp-YYYY.MM.tar.gz

mv nqp-YYYY.MM.tar.gz nqp_YYYY.MM.orig.tar.gz

cd pkg-nqp
debuild -us -c

Adding `pristine-tar` by hand

If for some reason the pristine-tar branch didn't get updated as part of updating the repository to the latest version, you can run the relevant commands by hand:

# make sure you're on the master branch
$ git co master
# commit the tarball and 
# (pristine-tar should be installed as part of git-buildpackage)
pristine-tar commit <path/to/tarball>/nqp-YYYY.MM.tar.gz upstream/YYYY.MM

This will automatically commit the relevant change to the pristine-tar branch in the repository. Now it's just a matter of pushing the change:

$ git push --all

Documentation about the pristine-tar utility can be found on the blog about Generating pristine tarballs from Git repositories.