Extract kickstart.package.installed functions for each package manager

This commit is contained in:
Bruno Tavares 2014-03-03 19:18:26 -03:00
parent 5f420e6f24
commit cafc7b1d93

View File

@ -5,26 +5,24 @@ kickstart.package.manager() {
kickstart.info "kickstart supports apt-get, yum or brew" && exit 1 kickstart.info "kickstart supports apt-get, yum or brew" && exit 1
} }
kickstart.package.installed() { kickstart.package.installed.apt-get() {
local pkg_manager=`kickstart.package.manager`
if [ $pkg_manager = 'apt-get' ]; then
dpkg -s "$@" >/dev/null 2>&1 dpkg -s "$@" >/dev/null 2>&1
return $? }
fi
if [ $pkg_manager = 'brew' ]; then kickstart.package.installed.brew() {
! $(brew info "$@" | kickstart.stream.contains "Not installed") ! $(brew info "$@" | kickstart.stream.contains "Not installed")
return $? }
fi
if [ $pkg_manager = 'yum' ]; then kickstart.package.installed.yum() {
local yum_packages="`yum list installed`" local yum_packages="`yum list installed`"
for package in "$@"; do for package in "$@"; do
kickstart.stream.contains $package <<<$yum_packages || return 1 kickstart.stream.contains $package <<<$yum_packages || return 1
done done
return 0 return 0
fi }
kickstart.package.installed() {
kickstart.package.installed.`kickstart.package.manager` "$@"
} }
kickstart.package.install() { kickstart.package.install() {