1 [[!meta title="Releasing tails-iuk"]]
5 If running Wheezy or older, you will have to do the upstream part of
6 the work in a Jessie chroot (e.g. with pbuilder).
8 Install build and test dependencies
9 ===================================
11 Install build-dependencies listed in `debian/control`:
15 Install build-dependencies from Debian:
17 libdist-zilla-perl libdist-zilla-plugins-cjm-perl \
18 libdist-zilla-plugin-changelogfromgit-perl \
19 libdist-zilla-plugin-installguide-perl \
20 libdist-zilla-plugin-test-perl-critic-perl \
21 libdist-zilla-plugin-test-notabs-perl \
22 libdist-zilla-plugin-git-perl \
23 liblocale-msgfmt-perl libmoosex-has-sugar-perl \
26 If running something older than Jessie:
28 apt-get install libtest-bdd-cucumber/wheezy-backports
30 Install build-dependencies that are not in Debian yet:
32 DEB_BUILD_OPTIONS=nocheck dh-make-perl --build --install --cpan Dist::Zilla::Plugin::LocaleMsgfmt
34 Update POT and PO files
35 =======================
37 git checkout master && \
38 ( cd po && make pot && make update-po ) && \
39 git commit po -m 'Update POT and PO files.'
41 Make an upstream release
42 ========================
44 Enable new translations in `po/PACKAGE` and commit.
46 Export new upstream version number:
50 Update version number in `bin/tails-create-iuk`, commit all files that
53 perl -pi -E 's,^Version [0-9.]+,Version $ENV{VERSION},' bin/tails-create-iuk && \
55 "s,^our \\\$VERSION = '[0-9.]+';\$,our \\\$VERSION = '$VERSION';," \
56 bin/tails-create-iuk && \
57 git commit bin/tails-create-iuk -m "tails-iuk $VERSION"
59 Run the upstream test suite (point `PERL5LIB` to a checkout of the
60 relevant tag of Tails' perl5lib):
62 # get an authentication token, needed by the test suite
64 # run the tests in closer to real conditions
67 # Run the rest of the test suite
68 RELEASE_TESTING=1 LC_ALL=C PERL5LIB=/home/user/tails/perl5lib/lib dzil test
70 Build an upstream tarball, tag the release, move the tarball out of
71 the build repository and cleanup:
74 git tag -s $VERSION -m "tails-iuk $VERSION" && \
75 mv Tails-IUK*.tar.gz .. && git clean -fdx
77 Update the Debian package
78 =========================
80 Checkout the branch with Debian package specifics and import the new
81 upstream tarball, update `debian/changelog`:
83 git checkout debian && \
84 git-import-orig --upstream-vcs-tag=$VERSION \
85 ../Tails-IUK-$VERSION.tar.gz && \
89 (Do not forget to set the appropriate release.)
91 Update the packaging (e.g. look at changes in `dist.ini`),
92 and then update `debian/changelog` again if needed.
94 Commit `debian/changelog`:
96 git commit debian/changelog -m "$(head -n 1 debian/changelog | sed -e 's,).*,),')"
98 Build a Debian package (use a Wheezy chroot with the right version of
99 `tails-perl5lib` installed), add a signed tag to the repository and
102 git-buildpackage && \
103 git-buildpackage --git-tag-only --git-sign-tags && \
104 git push && git push --tags
106 Add the Debian package to Tails
107 ===============================
111 debsign $CHANGES_FILE
115 dupload --to tails $CHANGES_FILE