#!/usr/bin/perl # after running this script and installing and testing the package, # can use rebuild-for-athena script use 5.028; use strict; use warnings; use Cwd; use Git::Wrapper; my $to_merge = "origin/master"; my $git = Git::Wrapper->new(getcwd); chomp(my $prev_version = `dpkg-parsechangelog -SVersion`); chomp(my $prev_distn = `dpkg-parsechangelog -SDistribution`); my ($prev_date, $prev_rev) = ($prev_version =~ /git([0-9]+).([0-9]+)/); my ($new_date) = $git->show("-s", { format => "%ci" }, $to_merge); $new_date =~ /\A([0-9]{4})-([0-9]{2})-([0-9]{2})/ or die "couldn't parse new commit committer date"; $new_date = $1 . $2 . $3; my $new_rev = $prev_date eq $new_date ? $prev_rev + 1 : 1; $git->merge($to_merge); system "dch", "-v28~git${new_date}.${new_rev}", $prev_distn eq "UNRELEASED" ? "" : "Package git snapshot."; $git->add("debian/changelog"); $git->commit({ message => "changelog" });