1. Download and install Virtualbox 4.2.12+ (This was made using 4.2.12) from their website. 2. Download and install Vagrant from www.vagrantup.com 3. Download the [http://dl.mapgears.com/ubuntugis/Vagrantfile Vagrantfile] and the[http://dl.mapgears.com/ubuntugis/bootstrap.sh boostrap.sh] script and put them in the directory where the VM will live, you'll be able to access any files in this directory from inside the VM /vagrant/. ie: ~/vm/ubuntugis/ 4. In the vm folder, run {{{ vagrant up }}} "{{{vagrant up}}}" will take care of installing everything you need for packaging. Once it's done you can access the vm with "{{{vagrant ssh}}}". 5. We need to setup the GPG key to sign the packages in the VM. On the host machine create a GPG key if you haven't already then do {{{ mkdir ~/vm/ubuntugis/keys gpg --export -o ~/vm/ubuntugis/keys/public_key gpg --export-secret-keys -o ~/vm/ubuntugis/keys/private_key }}} Then from inside the VM. {{{ cd /vagrant/keys gpg --import public_key gpg --import private_key }}} 6. We also have to add some environment variables. Let's modify our {{{~/.bashrc}}} {{{ export DEBFULLNAME="Full Name" export DEBEMAIL="email@mail.com" export GPGKEY=YOURKEY export QUILT_PATCHES=debian/patches }}} You can get your GPGKEY using "{{{gpg --list-keys}}}" 7. You should also add the ubuntugis to your dput config file. Create and modify {{{~/.dput.cf}}} {{{ [ubuntugis-unstable] fqdn = ppa.launchpad.net method = ftp incoming = ~ubuntugis/ubuntugis-unstable/ubuntu/ login = jlarouche // change that! allow_unsigned_uploads = 0 }}} This will let you upload using "{{{dput ubuntugis-unstable package_sources.changes}}}" The environment is pretty much set now. I suggest using the /vagrant/packages directory (~/vm/ubuntugis/packages on the host) for your packages, that way you can edit some files from the host and only use Vagrant for the packaging/build. The pbuilder-dist environments that were setup by the bootstrap script are SID, Lucid, Precise, Quantal and Raring each in i386 and amd64. If you need to create another pbuilder environment you simply have to do {{{ pbuilder-dist distro arch create }}}