#!/bin/sh # # Copyright (C) 2012 Etersoft # Copyright (C) 2012 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/>. # # copied from etersoft-build-utils/share/eterbuild/functions/rpmpkg epm_reinstall_names() { [ -n "$1" ] || return case $PMTYPE in apt-rpm|apt-dpkg) sudocmd apt-get --reinstall install $@ return ;; yum-rpm) sudocmd yum install $@ return ;; urpm-rpm) sudocmd urpmi $@ return ;; zypper-rpm) sudocmd zypper install $@ return ;; pkg_add) sudocmd pkg_add -r $@ return ;; pacman) sudocmd pacman -U $@ return ;; slackpkg) sudocmd /usr/sbin/slackpkg reinstall $@ return ;; *) fatal "Do not known install command for $PMTYPE" ;; esac } epm_reinstall_files() { [ -z "$1" ] && return case $PMTYPE in apt-rpm) sudocmd rpm -Uvh --force $@ && return sudocmd apt-get --reinstall install $@ return ;; apt-pkg) sudocmd dpkg -i $@ return ;; slackpkg) sudocmd /sbin/installpkg $@ return ;; esac # other systems can install file package via ordinary command epm_reinstall_names $@ } epm_reinstall() { [ -n "$pkg_filenames" ] || fatal "Run install without packages" epm_reinstall_names $pkg_names epm_reinstall_files $pkg_files }