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
- clone the Debian NQP repository, and rename it to be consistent with the other Rakudo subprojects:
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:
- ensure that the MoarVM package has been installed:
sudo aptitude install moarvm
Or, if you've built this from source:
sudo dpkg -i moarvm_YYYY.MM-1_amd64.deb
- get the upstream sources (if necessary)
- rename the upstream sources as being the original sources:
mv nqp-YYYY.MM.tar.gz nqp_YYYY.MM.orig.tar.gz
- change into the repository working directory and build the package
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.