Commit c7c09645 authored by Vitaly Lipatov's avatar Vitaly Lipatov

implement info and use it

parent abf5fa42
...@@ -26,7 +26,7 @@ epm_Install() ...@@ -26,7 +26,7 @@ epm_Install()
local names="$(echo $pkg_names | filter_out_installed_packages)" local names="$(echo $pkg_names | filter_out_installed_packages)"
local files="$(echo $pkg_files | filter_out_installed_packages)" local files="$(echo $pkg_files | filter_out_installed_packages)"
[ -z "$files$names" ] && echo "Skip empty install list" && return 22 [ -z "$files$names" ] && info "Skip empty install list" && return 22
# do update only if really need install something # do update only if really need install something
case $PMTYPE in case $PMTYPE in
......
...@@ -25,10 +25,10 @@ case $PMTYPE in ...@@ -25,10 +25,10 @@ case $PMTYPE in
sudocmd apt-repo add $pkg_filenames sudocmd apt-repo add $pkg_filenames
;; ;;
apt-dpkg|aptitude-dpkg) apt-dpkg|aptitude-dpkg)
echo "You need manually add repo to /etc/apt/sources.list" info "You need manually add repo to /etc/apt/sources.list"
;; ;;
yum-rpm) yum-rpm)
echo "You need manually add repo to /etc/yum.repos.d/" info "You need manually add repo to /etc/yum.repos.d/"
;; ;;
urpm-rpm) urpm-rpm)
sudocmd urpmi.addmedia $pkg_filenames sudocmd urpmi.addmedia $pkg_filenames
...@@ -40,7 +40,7 @@ case $PMTYPE in ...@@ -40,7 +40,7 @@ case $PMTYPE in
sudocmd layman -a $pkg_filenames sudocmd layman -a $pkg_filenames
;; ;;
pacman) pacman)
echo "You need manually add repo to /etc/pacman.conf" info "You need manually add repo to /etc/pacman.conf"
# Only for alone packages: # Only for alone packages:
#sudocmd repo-add $pkg_filenames #sudocmd repo-add $pkg_filenames
;; ;;
...@@ -48,7 +48,7 @@ case $PMTYPE in ...@@ -48,7 +48,7 @@ case $PMTYPE in
sudocmd npackdcl add-repo --url=$pkg_filenames sudocmd npackdcl add-repo --url=$pkg_filenames
;; ;;
slackpkg) slackpkg)
echo "You need manually add repo to /etc/slackpkg/mirrors" info "You need manually add repo to /etc/slackpkg/mirrors"
;; ;;
*) *)
fatal "Have no suitable command for $PMTYPE" fatal "Have no suitable command for $PMTYPE"
......
...@@ -36,14 +36,14 @@ __epm_assure() ...@@ -36,14 +36,14 @@ __epm_assure()
if __check_command_in_path "$1" >/dev/null ; then if __check_command_in_path "$1" >/dev/null ; then
if [ -n "$verbose" ] ; then if [ -n "$verbose" ] ; then
local compath="$(__check_command_in_path "$1")" local compath="$(__check_command_in_path "$1")"
echo "Command $1 is exists: $compath" info "Command $1 is exists: $compath"
epm qf "$compath" epm qf "$compath"
fi fi
return return
fi fi
# TODO: use package name normalization # TODO: use package name normalization
echo "Install appropriate package for $1 command..." info "Install appropriate package for $1 command..."
local PACKAGE="$2" local PACKAGE="$2"
[ -n "$PACKAGE" ] || PACKAGE="$1" [ -n "$PACKAGE" ] || PACKAGE="$1"
......
...@@ -22,8 +22,8 @@ __epm_autoremove_altrpm() ...@@ -22,8 +22,8 @@ __epm_autoremove_altrpm()
local pkg local pkg
local flag= local flag=
load_helper epm-packages load_helper epm-packages
echo info
echo "Just remove all non -devel libs packages not need by anything" info "Just remove all non -devel libs packages not need by anything"
for pkg in $(short=1 pkg_filenames= epm_packages | grep -- "^lib" | grep -v -- "-devel$" | grep -v -- ^libreoffice ) ; do for pkg in $(short=1 pkg_filenames= epm_packages | grep -- "^lib" | grep -v -- "-devel$" | grep -v -- ^libreoffice ) ; do
sudocmd rpm -v -e $pkg && flag=1 sudocmd rpm -v -e $pkg && flag=1
done done
......
...@@ -70,7 +70,7 @@ esac ...@@ -70,7 +70,7 @@ esac
epm_checkpkg() epm_checkpkg()
{ {
if [ -n "$pkg_names" ] ; then if [ -n "$pkg_names" ] ; then
echo "Suggest $pkg_names are names of installed packages" info "Suggest $pkg_names are name(s) of installed packages"
__epm_check_installed_pkg $pkg_names __epm_check_installed_pkg $pkg_names
return return
fi fi
......
...@@ -51,6 +51,6 @@ case $PMTYPE in ...@@ -51,6 +51,6 @@ case $PMTYPE in
fatal "Have no suitable command for $PMTYPE" fatal "Have no suitable command for $PMTYPE"
;; ;;
esac esac
echo "It is recommend to run 'epm autoremove' also" info "It is recommend to run 'epm autoremove' also"
} }
...@@ -369,12 +369,12 @@ epm_install() ...@@ -369,12 +369,12 @@ epm_install()
return return
fi fi
[ -n "$pkg_files$pkg_names" ] || { echo "Skip empty install list" ; return 22 ; } [ -z "$pkg_files$pkg_names" ] && info "Skip empty install list" && return 22
local names="$(echo $pkg_names | filter_out_installed_packages)" local names="$(echo $pkg_names | filter_out_installed_packages)"
local files="$(echo $pkg_files | filter_out_installed_packages)" local files="$(echo $pkg_files | filter_out_installed_packages)"
[ -z "$files$names" ] && echo "Skip empty install list" && return 22 [ -z "$files$names" ] && info "Skip empty install list" && return 22
# it is useful for first time running # it is useful for first time running
update_repo_if_needed update_repo_if_needed
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
epm_kernel_update() epm_kernel_update()
{ {
echo "Start update system kernel to the latest version" info "Start update system kernel to the latest version"
case $DISTRNAME in case $DISTRNAME in
ALTLinux) ALTLinux)
......
...@@ -73,7 +73,7 @@ case $PMTYPE in ...@@ -73,7 +73,7 @@ case $PMTYPE in
apt-dpkg) apt-dpkg)
# FIXME: need fix for a few names case # FIXME: need fix for a few names case
if is_installed $pkg_names ; then if is_installed $pkg_names ; then
echo "Please inform the author how to get provides from dpkg" info "Please inform the author how to get provides from dpkg"
fi fi
# CMD="rpm -q --provides" # CMD="rpm -q --provides"
#else #else
......
...@@ -33,7 +33,7 @@ __do_query_real_file() ...@@ -33,7 +33,7 @@ __do_query_real_file()
else else
TOFILE=`which $1 2>/dev/null || echo $1` TOFILE=`which $1 2>/dev/null || echo $1`
if [ "$TOFILE" != "$1" ] ; then if [ "$TOFILE" != "$1" ] ; then
echo "Note: $1 is placed as $TOFILE" info "Note: $1 is placed as $TOFILE"
fi fi
fi fi
...@@ -41,10 +41,11 @@ __do_query_real_file() ...@@ -41,10 +41,11 @@ __do_query_real_file()
if [ -L "$TOFILE" ] ; then if [ -L "$TOFILE" ] ; then
__do_query $TOFILE __do_query $TOFILE
LINKTO=`readlink "$TOFILE"` LINKTO=`readlink "$TOFILE"`
echo "Note: $TOFILE is link to $LINKTO" info "Note: $TOFILE is link to $LINKTO"
__do_query_real_file "$LINKTO" __do_query_real_file "$LINKTO"
fi fi
FULLFILEPATH=`realpath $TOFILE`
FULLFILEPATH="$TOFILE"
} }
dpkg_print_name_version() dpkg_print_name_version()
...@@ -141,6 +142,7 @@ epm_query_file() ...@@ -141,6 +142,7 @@ epm_query_file()
{ {
# in short mode print handle only real names and do short output # in short mode print handle only real names and do short output
# TODO: move to separate command? # TODO: move to separate command?
# FIXME: it is possible use query
if [ -n "$short" ] ; then if [ -n "$short" ] ; then
[ -n "$pkg_files" ] || fatal "Run query without file names (needed path to files)" [ -n "$pkg_files" ] || fatal "Run query without file names (needed path to files)"
__do_short_query $pkg_files __do_short_query $pkg_files
......
...@@ -19,8 +19,8 @@ ...@@ -19,8 +19,8 @@
epm_release_upgrade() epm_release_upgrade()
{ {
echo "Start upgrade whole system to the next release" info "Start upgrade whole system to the next release"
echo "Check also http://wiki.etersoft.ru/Admin/UpdateLinux" info "Check also http://wiki.etersoft.ru/Admin/UpdateLinux"
case $PMTYPE in case $PMTYPE in
apt-rpm) apt-rpm)
......
...@@ -25,10 +25,10 @@ case $PMTYPE in ...@@ -25,10 +25,10 @@ case $PMTYPE in
sudocmd apt-repo rm $pkg_filenames sudocmd apt-repo rm $pkg_filenames
;; ;;
apt-dpkg|aptitude-dpkg) apt-dpkg|aptitude-dpkg)
echo "You need remove repo from /etc/apt/sources.list" info "You need remove repo from /etc/apt/sources.list"
;; ;;
yum-rpm) yum-rpm)
echo "You need remove repo from /etc/yum.repos.d/" info "You need remove repo from /etc/yum.repos.d/"
;; ;;
urpm-rpm) urpm-rpm)
sudocmd urpmi.removemedia $pkg_filenames sudocmd urpmi.removemedia $pkg_filenames
...@@ -40,13 +40,13 @@ case $PMTYPE in ...@@ -40,13 +40,13 @@ case $PMTYPE in
sudocmd layman -d$pkg_filenames sudocmd layman -d$pkg_filenames
;; ;;
pacman) pacman)
echo "You need remove repo from /etc/pacman.conf" info "You need remove repo from /etc/pacman.conf"
;; ;;
npackd) npackd)
sudocmd npackdcl remove-repo --url=$pkg_filenames sudocmd npackdcl remove-repo --url=$pkg_filenames
;; ;;
slackpkg) slackpkg)
echo "You need remove repo from /etc/slackpkg/mirrors" info "You need remove repo from /etc/slackpkg/mirrors"
;; ;;
*) *)
fatal "Have no suitable command for $PMTYPE" fatal "Have no suitable command for $PMTYPE"
......
...@@ -102,12 +102,6 @@ set_target_pkg_env() ...@@ -102,12 +102,6 @@ set_target_pkg_env()
RPMVENDOR=$($DISTRVENDOR -n "$DISTRNAME") RPMVENDOR=$($DISTRVENDOR -n "$DISTRNAME")
} }
# for systems without realpath command
realpath()
{
readlink -f "$@"
}
# Print command line and run command line # Print command line and run command line
showcmd() showcmd()
{ {
...@@ -237,6 +231,14 @@ warning() ...@@ -237,6 +231,14 @@ warning()
fi fi
} }
info()
{
isatty || return 0
[ -n "$quiet" ] && return
echo "$@"
}
set_sudo() set_sudo()
{ {
SUDO="" SUDO=""
...@@ -261,7 +263,7 @@ set_eatmydata() ...@@ -261,7 +263,7 @@ set_eatmydata()
# use if possible # use if possible
which eatmydata >/dev/null 2>/dev/null || return which eatmydata >/dev/null 2>/dev/null || return
SUDO="$SUDO eatmydata" SUDO="$SUDO eatmydata"
isatty && echo "Uwaga! eatmydata is installed, we will use it for disable all sync operations." >&2 info "Uwaga! eatmydata is installed, we will use it for disable all sync operations."
return 0 return 0
} }
......
...@@ -117,7 +117,7 @@ EOF ...@@ -117,7 +117,7 @@ EOF
pkg_filenames="$pkg-[0-9]" epm_search | grep -E "(installed|upgrade)" && continue pkg_filenames="$pkg-[0-9]" epm_search | grep -E "(installed|upgrade)" && continue
pkg_filenames="$pkg" epm_search | grep -E "(installed|upgrade)" && continue pkg_filenames="$pkg" epm_search | grep -E "(installed|upgrade)" && continue
res=1 res=1
echo "Does not found in repository." info "Does not found in repository."
done done
return $res ;; return $res ;;
*) *)
...@@ -130,16 +130,16 @@ EOF ...@@ -130,16 +130,16 @@ EOF
epm_simulate() epm_simulate()
{ {
[ -z "$pkg_filenames" ] && echo "Skip empty list" && return 22 [ -z "$pkg_filenames" ] && info "Skip empty list" && return 22
local filenames="$(echo $pkg_filenames | filter_out_installed_packages)" local filenames="$(echo $pkg_filenames | filter_out_installed_packages)"
[ -z "$filenames" ] && echo "All packages are already installed" && return 0 [ -z "$filenames" ] && info "All packages are already installed" && return 0
_epm_do_simulate $filenames _epm_do_simulate $filenames
local RES=$? local RES=$?
if [ -z "$quiet" ] ; then if [ -z "$quiet" ] ; then
[ "$RES" = 0 ] && echo "Result: $filenames package(s) CAN BE installed" || echo "Result: There are PROBLEMS with install some package(s)" [ "$RES" = 0 ] && info "Result: $filenames package(s) CAN BE installed" || info "Result: There are PROBLEMS with install some package(s)"
fi fi
return $RES return $RES
} }
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
epm_update() epm_update()
{ {
echo "Run command for update remote package repository database" info "Run command for update remote package repository database"
case $PMTYPE in case $PMTYPE in
apt-rpm) apt-rpm)
......
...@@ -26,7 +26,7 @@ epm_upgrade() ...@@ -26,7 +26,7 @@ epm_upgrade()
# it is useful for first time running # it is useful for first time running
update_repo_if_needed update_repo_if_needed
echo "Run command for upgrade packages" info "Run command for upgrade packages"
case $PMTYPE in case $PMTYPE in
apt-rpm|apt-dpkg) apt-rpm|apt-dpkg)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment