#!/bin/sh # # Copyright (C) 2012 Etersoft # Copyright (C) 2012 Vitaly Lipatov <lav@etersoft.ru> # # This file 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. # load_helper epm-install load_helper epm-search epm_simulate() { local CMD [ -z "$pkg_filenames" ] && echo "Skip empty list" && return 2 local filenames="$(echo $pkg_filenames | filter_out_installed_packages)" [ -z "$filenames" ] && echo "All packages are already installed" && return 2 case $PMTYPE in apt-rpm|apt-dpkg) CMD="apt-get --simulate install" ;; yum-rpm) CMD="yum provides" ;; urpm-rpm) CMD="urpmi --test --auto" ;; zypper-rpm) CMD="zypper --non-interactive install --dry-run" ;; emerge) echo "FIXME: Skip with emerge" return ;; pacman) showcmd $SUDO pacman -v -S $filenames echo no | $SUDO pacman -v -S $filenames return ;; slackpkg) #docmd /usr/sbin/slackpkg -batch=on -default_answer=yes download # just try search every package for i in $pkg_filenames ; do pkg_filenames="$i-" epm_search | grep installed || return done return 0;; *) fatal "Do not known simulate command for $PMTYPE" ;; esac sudocmd $CMD $filenames }