#!/bin/bash # Copyright (C) 2020 Canonical Ltd. # Author: Iain Lane # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # Compare a given source package with the oem-qemu-meta reference package, to # see if it complies with the MIR exception granted in # https://wiki.ubuntu.com/MIRTeam/Exceptions/OEM set -e set -u shopt -s nullglob THIS="$(basename "${0}")" ensure_programs() { if [ ${#} -gt 0 ] && ! type "${1}" >/dev/null 2>/dev/null; then echo "Required program $1 not found." >&2 exit 1 fi shift if [ ${#} -gt 0 ]; then ensure_programs "${@}" fi } if [ ${#} -ne 1 ]; then echo -e "Usage: ${THIS} \\n" >&2 cat <&2 Compare the given package against the oem-qemu-meta reference package. Check that all the differences are inconsequential or expected (different modalias, different package name), and then promote or NEW the package directly to main. https://wiki.ubuntu.com/MIRTeam/Exceptions/OEM EOM exit 1 fi ensure_programs pull-lp-source debdiff if ! [ -e "${1}" ]; then echo "${THIS}: ${1} not found" >&2 exit 1 fi DSC="$(realpath -e "${1}")" WORKINGDIR=$(mktemp -d) trap 'rm -rf ${WORKINGDIR}' EXIT HUP INT QUIT TERM pushd "${WORKINGDIR}" >/dev/null # Download the reference package pull-lp-source oem-qemu-meta -d 2>/dev/null if [ -t 1 ] && type colordiff >/dev/null 2>/dev/null; then debdiff oem-qemu-meta_*.dsc "${DSC}" 2>/dev/null | colordiff else debdiff oem-qemu-meta_*.dsc "${DSC}" 2>/dev/null fi