If running Wheezy or older, you will have to do the upstream part of the work in a Jessie chroot (e.g. with pbuilder).
Install build and test dependencies
Install build-dependencies listed in debian/control:
mk-build-deps -i -r
Install build-dependencies from Debian:
libdist-zilla-perl libdist-zilla-plugins-cjm-perl
libdist-zilla-plugin-installguide-perl
libdist-zilla-plugin-test-perl-critic-perl
libdist-zilla-plugin-test-notabs-perl
libdist-zilla-plugin-git-perl
liblocale-msgfmt-perl libmoosex-has-sugar-perl
dh-make-perl
Install build-dependencies that are not in Debian yet:
DEB_BUILD_OPTIONS=nocheck dh-make-perl --build --install --cpan Dist::Zilla::Plugin::LocaleMsgfmt
Make an upstream release
Enable new translations in po/PACKAGE and commit.
Export new upstream version number:
export VERSION=XXX
Update version number in bin/tails-persistence-setup:
perl -pi -E 's,^Version [0-9.]+,Version $ENV{VERSION},' bin/tails-persistence-setup
perl -pi -E "s,^our \\\$VERSION = '[0-9.]+';\$,our \\\$VERSION = '$VERSION';," bin/tails-persistence-setup
Commit all files that need to be:
git commit bin/tails-persistence-setup -m "tails-persistent-setup $VERSION"
Run the upstream test suite (point PERL5LIB to a checkout of the
relevant tag of Tails' perl5lib):
RELEASE_TESTING=1 PERL5LIB=/home/user/tails/perl5lib/lib fakeroot dzil test
Build an upstream tarball, tag the release, move the tarball out of the build repository and cleanup:
dzil build && \
git tag -s $VERSION -m "tails-persistent-setup $VERSION" && \
mv Tails-Persistence-*.tar.gz .. && \
rm -rf Tails-Persistence-* .build po/*.mo
Update the Debian package
Checkout the Debian packaging branch and import the new upstream tarball:
git checkout debian && \
git-import-orig --upstream-vcs-tag=$VERSION ../Tails-Persistence-$VERSION.tar.gz
Update debian/changelog:
git-dch && dch -e
(Do not forget to set the appropriate release.)
Commit debian/changelog:
git commit debian/changelog -m "$(head -n 1 debian/changelog | sed -e 's,).*,),')"
Build a Debian package (use a Squeeze/i386 + backports chroot, that has either tails-perl5lib installed, or the Tails APT repository configured):
git-buildpackage
If everything is fine, add a signed tag to the repository and push the changes:
git-buildpackage --git-tag-only --git-sign-tags && \
git push && git push --tags
(Make sure master, upstream, debian and pristine-tar were all pushed.)
Add the Debian package to Tails
Sign the package:
debsign $CHANGES_FILE
Upload:
dupload --to tails $CHANGES_FILE
