#!/bin/bash : << =cut =head1 NAME deborphan - Monitor orphaned Debian packages =head1 APPLICABLE SYSTEMS Debian-ish systems with deborphan installed. =head1 CONFIGURATION None needed. =head1 AUTHOR Olivier Mehani Based on the debsecan plugin by Nicolas Bouthors. 2016-09-02 =head1 LICENSE GPLv2 =head1 MAGIC MARKERS #%# family=auto #%# capabilities=autoconf =cut # Auto enable if we have deborphan only if [ "$1" = "autoconf" ] ; then if which deborphan >/dev/null; then echo yes else echo "no (deborphan is missing)" fi exit 0 fi # Fail if we don't have deborphan if ! which deborphan >/dev/null; then echo "deborphan is missing" >&2 exit 1 fi OUT=$(mktemp -t munin-deborphan.XXXXXX) TMPFILES=$OUT trap 'rm -f $TMPFILES' EXIT deborphan --show-section --guess-all | sed 's/\//_/' | sort > "${OUT}" CATEGORIES="$(awk '{print $1}' "${OUT}" | uniq)" if [ "$1" = "config" ]; then cat < "${TMP}" echo "${cat}.value $(wc -l < "${TMP}")" # shellcheck disable=SC2005 disable=SC2046 # echo is not useless here: we want everything on one line echo "${cat}.extinfo $(echo $(cat "${TMP}"))" done fi