#!/bin/sh # # Copyright (C) 2012-2013 Etersoft # Copyright (C) 2012-2013 Vitaly Lipatov <lav@etersoft.ru> # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 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 Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # epm_check() { case $PMTYPE in apt-rpm|apt-dpkg) #sudocmd apt-get check || exit #sudocmd apt-get update || exit sudocmd apt-get -f install || exit ;; apt-dpkg) #sudocmd apt-get update || exit #sudocmd apt-get check || exit sudocmd apt-get -f install || exit sudocmd apt-get autoremove ;; yum-rpm) docmd yum check docmd package-cleanup --problems #docmd package-cleanup --dupes sudocmd package-cleanup --cleandupes # cleanup orphanes? while true ; do docmd package-cleanup --leaves # FIXME: package-cleanup have to use stderr for errors local PKGLIST=$(package-cleanup --leaves | grep -v "Loaded plugins" | grep -v "Unable to") [ -n "$PKGLIST" ] || break sudocmd yum remove $PKGLIST done docmd rpm -Va --nofiles --nodigest ;; pacman) sudocmd revdep-rebuild ;; urpm-rpm) sudocmd urpme --auto-orphans ;; zypper-rpm) sudocmd zypper verify || exit ;; *) fatal "Do not known command for $PMTYPE" ;; esac }